reconciliation-api / specs

Specifications of the reconciliation API
https://reconciliation-api.github.io/specs/draft/
30 stars 9 forks source link

Add support for returning entities that are understood by other services #87

Closed wetneb closed 2 years ago

wetneb commented 2 years ago

This adds a new field to data extension responses, to let them return entities which belong to the identifier space of another service. I made the choice of returning a reconciliation endpoint rather than an identifier space, because I think this is going to be more useful to users (if they want to keep doing data extension with the new endpoint). But I think one can also make a case for supplying the identifier space (to let the user pick which reconciliation service they want to use for this identifier space).

Closes #75.

fsteeg commented 2 years ago

This looks good to me. So the idea would be that a service that knows about another service, e.g. the Wikidata one, would include wikidataId in the suggested properties, and add the service field in the corresponding extension response meta property? It would kind of keep an internal mapping of these special properties and include the service field when required? And the client would use the service value when working with these entities (e.g. to prefix the IDs with the service's identifierSpace)?

wetneb commented 2 years ago

That is the intention indeed. For instance, being able to use the preview or data extension functionalities of the referred service.

wetneb commented 2 years ago

I would like to merge this soon and release it in the 0.2 version of the specs - let me know if you see anything outstanding.