reconciliation-api / specs

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

Matching against hierarchies of entities #79

Closed wetneb closed 2 weeks ago

wetneb commented 2 years ago

Say I am reconciling geographical entities against a database. For instance I am trying to match a neighborhood, but the database only has an entry for the city in which this neighborhood is.

Or I am trying to match academic organizations: there are also the same sort of relationships there (a laboratory is part of a research institute).

It could be interesting to better support those use cases in the reconciliation API. Concretely, this means that instead of focusing solely on finding database records which represent the exact same entity, we would allow more relationships between those entities (narrower, broader… see the SKOS classifications for that).

It is not completely clear to me what would need to be adapted in the protocol to better serve those use cases, but one thing I am thinking of is the matched attribute in reconciliation candidates, which is currently a boolean, and should probably be generalized to something else then.

thadguidry commented 2 years ago

I think a Boolean attribute of matched still works... it's the questions asked that are different, right?

  1. Is this contained within a boundary (city, region, etc.)
  2. Is this part of another Thing
fsteeg commented 2 weeks ago

I think this is addressed with #131: matchQualifier, see https://reconciliation-api.github.io/specs/draft/#structure-of-a-reconciliation-query:

[...] like spatial matching with geo data (e.g. containment search with "schema:containsPlace" etc.)

thadguidry commented 2 weeks ago

@fsteeg I think your right, we didn't have matchQualifier and others 2+ years ago and now we do. I think this can be closed.