-
Notifications
You must be signed in to change notification settings - Fork 12
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
Make "mappings" as a first class property to obographs? #102
Comments
Is this necessary, given #44? Couldn't you pack all |
I find this terrible... Like really bad. Chris also suggested the same as you (overloading xref), but it really offends my sense of aesthetics. It is also very hard to communicate, unless we want to somehow start educating the world that "mappings" are types of "xrefs" 😱 . 🙅 |
I think the alternatives are either adding syntactic sugar: "mappings": [
{
"pred": "exact",
"val": "UMLS:C4310678",
"xrefs": [
"Orphanet:123"
],
"meta": {
"basicPropertyValues": [
{
"pred": "sssom:mapping_justification",
"val": "semapv:ManualMappingCuration"
},
{
"pred": "sssom:confidence",
"val": 0.9
}
]
}
},
{
"pred": "related",
"val": "OMIM:617182",
"meta": {
"basicPropertyValues": [
{
"pred": "sssom:mapping_justification",
"val": "semapv:ManualMappingCuration"
},
{
"pred": "sssom:confidence",
"val": 0.9
}
]
}
}
], or leaving it at: "basicPropertyValues": [
{
"pred": "http://www.w3.org/2004/02/skos/core#exactMatch",
"val": "http://linkedlifedata.com/resource/umls/id/C4310678"
"meta": {
"basicPropertyValues": [
{
"pred": "sssom:mapping_justification",
"val": "semapv:ManualMappingCuration"
},
{
"pred": "sssom:confidence",
"val": 0.9
}
]
}
},
{
"pred": "http://www.w3.org/2004/02/skos/core#relatedMatch",
"val": "https://omim.org/entry/617182",
"meta": {
"basicPropertyValues": [
{
"pred": "sssom:mapping_justification",
"val": "semapv:ManualMappingCuration"
},
{
"pred": "sssom:confidence",
"val": 0.9
}
]
}
}
] |
No good solutions here.
For the majority of users, the function of (term-level) xrefs and mappings
are interchangeable, this is what xrefs have always been used for (with a
handful of known overloading cases, e.g CHEBI class-level xrefs to PMIDs).
IMO it's perfectly reasonable to say xrefs are mappings that just haven't
committed to a predicate.
OTOH this is a good chance to make a break with the past and move the
community to start using semantically committed mappings. But there will be
a long period of confusion where some ontologies will have one or the
other, and others will include both (and having two ways to get essentially
the same information is confusing).
I am tending towards this, and your proposal for a new field in meta called
"mappings" is the best
…On Thu, Oct 26, 2023 at 9:25 AM Nico Matentzoglu ***@***.***> wrote:
I find this terrible... Like really bad. Chris also suggested the same as
you (overloading xref), but it really offends my sense of aesthetics. It is
also very hard to communicate, unless we want to somehow start educating
the world that "mappings" are types of "xrefs" 😱 . 🙅
—
Reply to this email directly, view it on GitHub
<#102 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAMMOOMOT6OKE7BGYAIVZTYBKFG3AVCNFSM6AAAAAA6Q2SS76VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBRGQ2DSOBTG4>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
I don’t have a strong opinion either way and will support whatever the Java implementer is willing to trudge through :) |
Thank you both for your comments! :) You know I am in favour, I wonder now how to move this forward. |
Can I get this absolutely clear, please. Given a current meta:
definition: string
synonyms: SynonymPropertyValue[]
xrefs: XrefPropertyValue[]
mappings: MappingPropertyValue[] # NEW!
basicPropertyValues: BasicPropertyValue[] where the mapping:
lbl: string
pred: string
val: string
xrefs: string[] # should this be `sources` ?
meta: Meta Examples below, however this will be ontology dependent as HPO does not use For the case of As you mentioned 'xref' is a pretty non-committal term, sometimes it is used as a direct or indirect mapping but other times it is used to describe the source of an assertion (generally when used in the nested fashion). Wouldn't it be useful to define this nested |
Example MONDO: <!-- http://purl.obolibrary.org/obo/MONDO_0014957 -->
<owl:Class rdf:about="http://purl.obolibrary.org/obo/MONDO_0014957">
<rdfs:subClassOf rdf:resource="http://purl.obolibrary.org/obo/MONDO_0003847"/>
<rdfs:subClassOf rdf:nodeID="genid212486"/>
<obo:IAO_0000233 rdf:datatype="http://www.w3.org/2001/XMLSchema#anyURI">https://github.com/monarch-initiative/mondo/issues/4521</obo:IAO_0000233>
<oboInOwl:hasDbXref>OMIM:617182</oboInOwl:hasDbXref>
<oboInOwl:hasDbXref>UMLS:C4310678</oboInOwl:hasDbXref>
<oboInOwl:hasExactSynonym>LADCI</oboInOwl:hasExactSynonym>
<oboInOwl:hasExactSynonym>language delay and ADHD/cognitive impairment with or without cardiac arrhythmia</oboInOwl:hasExactSynonym>
<oboInOwl:hasExactSynonym>language delay and attention Deficit-hyperactivity disorder/cognitive impairment with or without Cardiac arrhythmia</oboInOwl:hasExactSynonym>
<oboInOwl:hasExactSynonym>language delay and attention deficit-hyperactivity disorder/cognitive impairment with or without cardiac arrhythmia; LADCI</oboInOwl:hasExactSynonym>
<oboInOwl:id>MONDO:0014957</oboInOwl:id>
<rdfs:label>language delay and attention deficit-hyperactivity disorder/cognitive impairment with or without cardiac arrhythmia</rdfs:label>
<skos:exactMatch rdf:resource="http://linkedlifedata.com/resource/umls/id/C4310678"/>
<skos:exactMatch rdf:resource="https://omim.org/entry/617182"/>
</owl:Class>
<owl:Restriction rdf:nodeID="genid212486">
<owl:onProperty rdf:resource="http://purl.obolibrary.org/obo/RO_0004003"/>
<owl:someValuesFrom rdf:resource="http://identifiers.org/hgnc/4401"/>
</owl:Restriction>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/MONDO_0014957"/>
<owl:annotatedProperty rdf:resource="http://www.w3.org/2000/01/rdf-schema#subClassOf"/>
<owl:annotatedTarget rdf:resource="http://purl.obolibrary.org/obo/MONDO_0003847"/>
<oboInOwl:source>https://orcid.org/0000-0001-5208-3432</oboInOwl:source>
</owl:Axiom>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/MONDO_0014957"/>
<owl:annotatedProperty rdf:resource="http://www.w3.org/2000/01/rdf-schema#subClassOf"/>
<owl:annotatedTarget rdf:nodeID="genid212486"/>
<oboInOwl:source>MONDO:mim2gene_medgen</oboInOwl:source>
</owl:Axiom>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/MONDO_0014957"/>
<owl:annotatedProperty rdf:resource="http://www.geneontology.org/formats/oboInOwl#hasDbXref"/>
<owl:annotatedTarget>OMIM:617182</owl:annotatedTarget>
<oboInOwl:source>MONDO:equivalentTo</oboInOwl:source>
</owl:Axiom>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/MONDO_0014957"/>
<owl:annotatedProperty rdf:resource="http://www.geneontology.org/formats/oboInOwl#hasDbXref"/>
<owl:annotatedTarget>UMLS:C4310678</owl:annotatedTarget>
<oboInOwl:source>MONDO:equivalentTo</oboInOwl:source>
<oboInOwl:source>MONDO:ncbi_mim2gene_medline</oboInOwl:source>
</owl:Axiom>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/MONDO_0014957"/>
<owl:annotatedProperty rdf:resource="http://www.geneontology.org/formats/oboInOwl#hasExactSynonym"/>
<owl:annotatedTarget>LADCI</owl:annotatedTarget>
<oboInOwl:hasDbXref>OMIM:617182</oboInOwl:hasDbXref>
<oboInOwl:hasSynonymType rdf:resource="http://purl.obolibrary.org/obo/mondo#ABBREVIATION"/>
</owl:Axiom>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/MONDO_0014957"/>
<owl:annotatedProperty rdf:resource="http://www.geneontology.org/formats/oboInOwl#hasExactSynonym"/>
<owl:annotatedTarget>language delay and ADHD/cognitive impairment with or without cardiac arrhythmia</owl:annotatedTarget>
<oboInOwl:hasDbXref>OMIM:617182</oboInOwl:hasDbXref>
<oboInOwl:hasDbXref>OMIM:genemap2</oboInOwl:hasDbXref>
</owl:Axiom>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/MONDO_0014957"/>
<owl:annotatedProperty rdf:resource="http://www.geneontology.org/formats/oboInOwl#hasExactSynonym"/>
<owl:annotatedTarget>language delay and attention Deficit-hyperactivity disorder/cognitive impairment with or without Cardiac arrhythmia</owl:annotatedTarget>
<oboInOwl:hasDbXref>OMIM:617182</oboInOwl:hasDbXref>
</owl:Axiom> Currently becomes: {
"id" : "http://purl.obolibrary.org/obo/MONDO_0014957",
"lbl" : "language delay and attention deficit-hyperactivity disorder/cognitive impairment with or without cardiac arrhythmia",
"type" : "CLASS",
"meta" : {
"synonyms" : [ {
"synonymType" : "http://purl.obolibrary.org/obo/mondo#ABBREVIATION",
"pred" : "hasExactSynonym",
"val" : "LADCI",
"xrefs" : [ "OMIM:617182" ]
}, {
"pred" : "hasExactSynonym",
"val" : "language delay and ADHD/cognitive impairment with or without cardiac arrhythmia",
"xrefs" : [ "OMIM:617182", "OMIM:genemap2" ]
}, {
"pred" : "hasExactSynonym",
"val" : "language delay and attention Deficit-hyperactivity disorder/cognitive impairment with or without Cardiac arrhythmia",
"xrefs" : [ "OMIM:617182" ]
}, {
"pred" : "hasExactSynonym",
"val" : "language delay and attention deficit-hyperactivity disorder/cognitive impairment with or without cardiac arrhythmia; LADCI"
} ],
"xrefs" : [ {
"val" : "OMIM:617182"
}, {
"val" : "UMLS:C4310678"
} ],
"basicPropertyValues" : [ {
"pred" : "http://purl.obolibrary.org/obo/IAO_0000233",
"val" : "https://github.com/monarch-initiative/mondo/issues/4521"
}, {
"pred" : "http://www.w3.org/2004/02/skos/core#exactMatch",
"val" : "http://linkedlifedata.com/resource/umls/id/C4310678"
}, {
"pred" : "http://www.w3.org/2004/02/skos/core#exactMatch",
"val" : "https://omim.org/entry/617182"
} ]
}
} With {
"id" : "http://purl.obolibrary.org/obo/MONDO_0014957",
"lbl" : "language delay and attention deficit-hyperactivity disorder/cognitive impairment with or without cardiac arrhythmia",
"type" : "CLASS",
"meta" : {
"synonyms" : [ {
"synonymType" : "http://purl.obolibrary.org/obo/mondo#ABBREVIATION",
"pred" : "hasExactSynonym",
"val" : "LADCI",
"xrefs" : [ "OMIM:617182" ]
}, {
"pred" : "hasExactSynonym",
"val" : "language delay and ADHD/cognitive impairment with or without cardiac arrhythmia",
"xrefs" : [ "OMIM:617182", "OMIM:genemap2" ]
}, {
"pred" : "hasExactSynonym",
"val" : "language delay and attention Deficit-hyperactivity disorder/cognitive impairment with or without Cardiac arrhythmia",
"xrefs" : [ "OMIM:617182" ]
}, {
"pred" : "hasExactSynonym",
"val" : "language delay and attention deficit-hyperactivity disorder/cognitive impairment with or without cardiac arrhythmia; LADCI"
} ],
"xrefs" : [ {
"val" : "OMIM:617182"
}, {
"val" : "UMLS:C4310678"
} ],
"mappings" : [ {
"pred" : "http://www.w3.org/2004/02/skos/core#exactMatch",
"val" : "UMLS:C4310678" # URI becomes CURIE
}, {
"pred" : "http://www.w3.org/2004/02/skos/core#exactMatch",
"val" : "OMIM:617182" # URI becomes CURIE
} ],
"basicPropertyValues" : [ {
"pred" : "http://purl.obolibrary.org/obo/IAO_0000233",
"val" : "https://github.com/monarch-initiative/mondo/issues/4521"
} ]
}
} |
Example HPO <!-- http://purl.obolibrary.org/obo/HP_0000006 -->
<owl:Class rdf:about="http://purl.obolibrary.org/obo/HP_0000006">
<rdfs:subClassOf rdf:resource="http://purl.obolibrary.org/obo/HP_0034345"/>
<obo:IAO_0000115>A mode of inheritance that is observed for traits related to a gene encoded on one of the autosomes (i.e., the human chromosomes 1-22) in which a trait manifests in heterozygotes. In the context of medical genetics, an autosomal dominant disorder is caused when a single copy of the mutant allele is present. Males and females are affected equally, and can both transmit the disorder with a risk of 50% for each child of inheriting the mutant allele.</obo:IAO_0000115>
<oboInOwl:hasAlternativeId>HP:0001415</oboInOwl:hasAlternativeId>
<oboInOwl:hasAlternativeId>HP:0001447</oboInOwl:hasAlternativeId>
<oboInOwl:hasAlternativeId>HP:0001448</oboInOwl:hasAlternativeId>
<oboInOwl:hasAlternativeId>HP:0001451</oboInOwl:hasAlternativeId>
<oboInOwl:hasAlternativeId>HP:0001452</oboInOwl:hasAlternativeId>
<oboInOwl:hasAlternativeId>HP:0001455</oboInOwl:hasAlternativeId>
<oboInOwl:hasAlternativeId>HP:0001456</oboInOwl:hasAlternativeId>
<oboInOwl:hasAlternativeId>HP:0001463</oboInOwl:hasAlternativeId>
<oboInOwl:hasDbXref>SNOMEDCT_US:263681008</oboInOwl:hasDbXref>
<oboInOwl:hasDbXref>UMLS:C0443147</oboInOwl:hasDbXref>
<oboInOwl:hasExactSynonym>Autosomal dominant</oboInOwl:hasExactSynonym>
<oboInOwl:hasExactSynonym>monoallelic_autosomal</oboInOwl:hasExactSynonym>
<oboInOwl:hasRelatedSynonym>Autosomal dominant form</oboInOwl:hasRelatedSynonym>
<oboInOwl:hasRelatedSynonym>Autosomal dominant type</oboInOwl:hasRelatedSynonym>
<oboInOwl:id>HP:0000006</oboInOwl:id>
<rdfs:label>Autosomal dominant inheritance</rdfs:label>
<!-- N.B. MISSING <skos:exactMatch /> TAGS, SO MAPPINGS WILL NOT BE CREATED -->
</owl:Class>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/HP_0000006"/>
<owl:annotatedProperty rdf:resource="http://purl.obolibrary.org/obo/IAO_0000115"/>
<owl:annotatedTarget>A mode of inheritance that is observed for traits related to a gene encoded on one of the autosomes (i.e., the human chromosomes 1-22) in which a trait manifests in heterozygotes. In the context of medical genetics, an autosomal dominant disorder is caused when a single copy of the mutant allele is present. Males and females are affected equally, and can both transmit the disorder with a risk of 50% for each child of inheriting the mutant allele.</owl:annotatedTarget>
<oboInOwl:hasDbXref rdf:resource="https://orcid.org/0000-0002-0736-9199"/>
</owl:Axiom>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/HP_0000006"/>
<owl:annotatedProperty rdf:resource="http://www.geneontology.org/formats/oboInOwl#hasExactSynonym"/>
<owl:annotatedTarget>monoallelic_autosomal</owl:annotatedTarget>
<oboInOwl:hasSynonymType rdf:resource="http://purl.obolibrary.org/obo/HP_0034334"/>
</owl:Axiom>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/HP_0000006"/>
<owl:annotatedProperty rdf:resource="http://www.geneontology.org/formats/oboInOwl#hasRelatedSynonym"/>
<owl:annotatedTarget>Autosomal dominant form</owl:annotatedTarget>
<oboInOwl:hasDbXref rdf:resource="https://orcid.org/0000-0002-5316-1399"/>
</owl:Axiom>
<owl:Axiom>
<owl:annotatedSource rdf:resource="http://purl.obolibrary.org/obo/HP_0000006"/>
<owl:annotatedProperty rdf:resource="http://www.geneontology.org/formats/oboInOwl#hasRelatedSynonym"/>
<owl:annotatedTarget>Autosomal dominant type</owl:annotatedTarget>
<oboInOwl:hasDbXref rdf:resource="https://orcid.org/0000-0002-5316-1399"/>
</owl:Axiom> currently and with {
"id" : "http://purl.obolibrary.org/obo/HP_0000006",
"lbl" : "Autosomal dominant inheritance",
"type" : "CLASS",
"meta" : {
"definition" : {
"val" : "A mode of inheritance that is observed for traits related to a gene encoded on one of the autosomes (i.e., the human chromosomes 1-22) in which a trait manifests in heterozygotes. In the context of medical genetics, an autosomal dominant disorder is caused when a single copy of the mutant allele is present. Males and females are affected equally, and can both transmit the disorder with a risk of 50% for each child of inheriting the mutant allele.",
"xrefs" : [ "https://orcid.org/0000-0002-0736-9199" ]
},
"synonyms" : [ {
"pred" : "hasExactSynonym",
"val" : "Autosomal dominant"
}, {
"synonymType" : "http://purl.obolibrary.org/obo/HP_0034334",
"pred" : "hasExactSynonym",
"val" : "monoallelic_autosomal"
}, {
"pred" : "hasRelatedSynonym",
"val" : "Autosomal dominant form",
"xrefs" : [ "https://orcid.org/0000-0002-5316-1399" ]
}, {
"pred" : "hasRelatedSynonym",
"val" : "Autosomal dominant type",
"xrefs" : [ "https://orcid.org/0000-0002-5316-1399" ]
} ],
"xrefs" : [ {
"val" : "SNOMEDCT_US:263681008"
}, {
"val" : "UMLS:C0443147"
} ],
"basicPropertyValues" : [ {
"pred" : "http://www.geneontology.org/formats/oboInOwl#hasAlternativeId",
"val" : "HP:0001415"
}, {
"pred" : "http://www.geneontology.org/formats/oboInOwl#hasAlternativeId",
"val" : "HP:0001447"
}, {
"pred" : "http://www.geneontology.org/formats/oboInOwl#hasAlternativeId",
"val" : "HP:0001448"
}, {
"pred" : "http://www.geneontology.org/formats/oboInOwl#hasAlternativeId",
"val" : "HP:0001451"
}, {
"pred" : "http://www.geneontology.org/formats/oboInOwl#hasAlternativeId",
"val" : "HP:0001452"
}, {
"pred" : "http://www.geneontology.org/formats/oboInOwl#hasAlternativeId",
"val" : "HP:0001455"
}, {
"pred" : "http://www.geneontology.org/formats/oboInOwl#hasAlternativeId",
"val" : "HP:0001456"
}, {
"pred" : "http://www.geneontology.org/formats/oboInOwl#hasAlternativeId",
"val" : "HP:0001463"
} ]
}
} |
Alright, after some back and forth, @julesjacobsen has now convinced me that extending the existing schema for
We would extend the xref system to semantic precision, from what it is right now:
to semantic:
My biggest qualm (other than the fact that my mission to obliterate the notion of "xref" from the face of the earth) with this is that this would only neatly work for standard mapping predicates, like exact, related etc. We are introducing other mapping relations, like "crossSpeciesExactMatch" or others would be harder, because we are not introducing another type system like synonym types for these (relying instead of actual predicates). |
I'm not sure I understand the qualm. Isn't it good that you can use whatever CURIE you want to specify the predicate? And if none is given, it just means a default predicate from OIO? |
Yes that would be good, but that is not what it says right now:
is not using a CURIE, it is using a built in enum,
That would be better, but less obographs style. |
How do open-ended predicates work right now for translating between OWL and
SSSOM? Does the mapper assume only the fixed predicates?
It's important for our whole stack to be aligned here.
I am not yet fully convinced by the "destructive and confusing for the
community" argument. Or rather, I don't think this is unique to obographs.
Moving ontologies to specific predicates either as a replacement to or as
semi-duplicative xref shadows is going to be confusing to everyone, whether
they are consuming obojson, rdf/owl, or obo format. We should open this
more generally
…On Mon, Nov 20, 2023 at 7:28 AM Nico Matentzoglu ***@***.***> wrote:
Yes that would be good, but that is not what it says right now:
"xrefs" : [ {
"val" : "MESH:D010319",
"pred" : "exactMatch"
}
is not using a CURIE, it is using a built in enum,
"xrefs" : [ {
"val" : "MESH:D010319",
"pred" : "skos:exactMatch"
}
That would be better, but less obographs style.
—
Reply to this email directly, view it on GitHub
<#102 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAMMONN2R7D7DTX67YV7MDYFNZLPAVCNFSM6AAAAAA6Q2SS76VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMJZGI4DKOBQGY>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
There are certain predicates that are by default assumed to be valid mapping predicates, but a user can pass in any predicate id to process as a mapping predicate.
Can you give an example? I am not sure how this relates to my comment above #102 (comment) I thought this is what you where suggesting? |
What's wrong with saying My point about adding a predicate to a xref is that it is simply clarifying an existing data structure and a non-breaking, additive change. I agree than defining it as an enum is by definition fixed and therefore might not be the best choice. |
yeah, maybe that is the best way. Its a bit inconsistent with the way we do synonyms, but not worse than my above |
* Adding skos-xref-duplicate to obo compliance suite See geneontology/obographs#102 * derived files
Like this?
The text was updated successfully, but these errors were encountered: