Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide a flexible mechanism for mapping annotation properties to different parts of the data model #109

Open
cmungall opened this issue Aug 22, 2024 · 0 comments

Comments

@cmungall
Copy link
Member

Proposal:

Include something like a prefix map that allows a data provider to map between their own APs and APs that are assumed by obographs.

For example:

  • rdfs:label <- skos:prefLabel
  • oio:hasRelatedSynonym <- skos:altLabel
  • IAO:00001015 <- schema:description

Context: when obographs was devised a decade ago there was reasonable consensus and de-facto standards about annotation properties among a large number of ontologies, based on what obo-edit and obo format imposed. These were happy days IMO. After more ontologies migrated to OWL people started getting creative with annotation properties. Now every single ontology repo tracker has multiple duplicative arguments about which annotation property to use where. There are pockets of resistance to using oio:hasDbXref as axiom annotations to indicate provenance, despite the fact that this has been the standard and pretty much the only way in OBO to indicate axiom-level provenance.

If people stop using the existing standard, this renders obographs much less useful. One of the main value propositions is a unifying data model that eliminates the need for low-level constructs.

In OAK, we allow sssom maps of APs to be used to dynamically map to a common data model. Portals like OLS and Bioportal do the same thing behind the scenes. The idea here is to bundle these in the obographs json. This would allow clients to: (1) load into native representation (2) perform operations using the OG datamodel (e.g. add a definition) (3) save; and for this all to work even if the ontology uses different APs.

One complication is if the mapping is context dependent. E.g. one ontology may want to use one AP for the equivalent of xrefs, and another AP for axiom provenance.

Related discussion (for mappings/xrefs anyway):

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant