rat-genome-database / cmo-clinical-measurement-ontology Goto Github PK
View Code? Open in Web Editor NEWClinical Measurement Ontology (CMO) maintained by RGD
Home Page: https://github.com/rat-genome-database/CMO-Clinical-Measurement-Ontology
Clinical Measurement Ontology (CMO) maintained by RGD
Home Page: https://github.com/rat-genome-database/CMO-Clinical-Measurement-Ontology
Hello!
Right now CMO cannot be processed at all:
As a minimum, please try to use ROBOT with the OWL release file (which is the most important one):
robot convert -i cmo.owl -f ofn -o cmo.ofn
Or open it with Protege!
There are a number of major syntactic issues with the CMO obo and owl releases. This causes many parsers to break, as was reported in #5.
Even in cases where parsers don't break, the results of the parse give unintended results
For example, virtually all ontology browsers and tools do not correctly interpret the definitions, because they are encoded in OBO as a property_value:
id: CMO:0003022
name: hemoglobin distribution width
is_a: CMO:0000508 ! hemoglobin measurement
property_value: created:by "sjwang" xsd:string
property_value: creation:date 2019-01-29T15:15:44Z xsd:string
property_value: hasExactSynonym "HDW" xsd:string
property_value: http://purl.obolibrary.org/obo/def "The distribution width of erythrocytes by their cellular (individual) hemoglobin concentrations. It is a measurement of the heterogeneity of the red cell hemoglobin concentration." xsd:string {http://www.geneontology.org/formats/oboInOWL#xref="PMID:PMID\\:3411196"}
This should be:
id: CMO:0003022
name: hemoglobin distribution width
is_a: CMO:0000508 ! hemoglobin measurement
created_by: "sjwang"
creation_date: 2019-01-29T15:15:44Z
synonym: "HDW" EXACT []
def: "The distribution width of erythrocytes by their cellular (individual) hemoglobin concentrations. It is a measurement of the heterogeneity of the red cell hemoglobin concentration." [PMID:3411196]
The OWL that gets generated from the current obo is both syntactically incorrect, and even when parsed, information gets missed. For example on OLS:
The definition doesn't show up where it should:
It looks like at some point in the past you passed the obo through a troundtrip with a very old obo to owl converter.
If you like I can provide a PR that fixes CMO. I assume this is the source file: https://github.com/rat-genome-database/CMO-Clinical-Measurement-Ontology/blob/master/clinical_measurement.obo
or I can provide support to a developer to fix this
CMO uses http://purl.obolibrary.org/obo/def for definitions. These should be updated to http://purl.obolibrary.org/obo/IAO_0000115.
According to the obo foundry link the license for this ontology is CC0 1.0 Universal (CC0 1.0). Since there is no mention of the license in the readme and I could not find a license file in the git repository I am a bit unsure whether this is true.
Would it be possible to add the license information to the readme file?
http://www.geneontology.org/formats/oboInOWL#hasAlternativeId
http://www.geneontology.org/formats/oboInOWL#hasBroadSynonym
http://www.geneontology.org/formats/oboInOWL#hasExactSynonym
http://www.geneontology.org/formats/oboInOWL#hasNarrowSynonym
http://www.geneontology.org/formats/oboInOWL#hasRelatedSynonym
http://www.geneontology.org/formats/oboInOWL#xref
Should be:
http://www.geneontology.org/formats/oboInOwl#hasExactSynonym
(note capitalisation).
Note that:
http://www.geneontology.org/formats/oboInOWL#xref
Is wrong in general. Should be:
http://www.geneontology.org/formats/oboInOwl#hasDbXref
Context: Our grand OBO wide ID normalisation effort.
https://github.com/orgs/OBOFoundry/projects/5
Related:
OPMI/opmi#9
Hello, I have a use case that is interested in a new CMO term:
term: 'relative maximal oxygen consumption'
parent: 'maximal oxygen consumption' (CMO:0000135)
definition: Maximum capacity of an individual's body to transport and utilize oxygen, usually measured during exercise as volume of oxygen per unit of time, relative to an individual's body weight.
synonyms: relative VO2 peak, relative VO2 max
There is a strange IRI in the object properties of CMO when retrieved from http://purl.obolibrary.org/obo/cmo.owl:
Optional.of(http://purl.obolibrary.org/obo/cmo.obo)#part_of
Then, there is also a "part of" named individual:
http://purl.obolibrary.org/obo/part_of
Was this intended to be part of?
The file is able to be opened in Protege, but this is causing issues with other tools.
are you taking new term requests or would you prefer we ask OBI? the terms needed are:
erythrocyte sedimentation rate (ESR)
and
blood myoglobin level
thanks
I'm unable to load this ontology using the OWL API due to an invalid def declaration for the term "renal tubulointerstitial score". The def for this term starts with a double quotation mark:
[Term]
id: CMO:0002948
name: renal tubulointerstitial score
def: ""A semiquantitative evaluation of the renal interstitium using a grading system with a score of 0 to 4+, which assesses the tubules and the interstitium for the presence of (1) tubular atrophy, (2) tubular dilatation, (3) interstitial inflammatory cell infiltrates, and (4) interstitial fibrosis. A score of 0 indicates no lesion (normal kidney), 1+ indicates a single, small focal lesion with very minimal tubular alterations and interstitial inflammatory cell infiltration, and 2+ to 4+ indicated increasing severity of tubular lesions, interstitial inflammatory cell infiltration, and/or fibrosis. A score of 4+ indicates involvement of approximately 50% or more of the renal parenchyma or interstitium." [PMID:PMID\:9369281]
...
... which causes a parsing error:
org.semanticweb.owlapi.io.UnparsableOntologyException: Problem parsing file:/Users/jvendetti/Development/IntelliJ_Projects/owlapi-example-code/src/test/resources/clinical_measurement.obo
Could not parse ontology. Either a suitable parser could not be found, or parsing failed. See parser logs below for explanation.
The following parsers were tried:
1) org.semanticweb.owlapi.oboformat.OBOFormatOWLAPIParser@5990e6c5
Detailed logs:
--------------------------------------------------------------------------------
Parser: org.semanticweb.owlapi.oboformat.OBOFormatOWLAPIParser@5990e6c5
Stack trace:
LINENO: 26701 - expected newline or end of line but found: A semiquantitative evaluation of the renal interstitium using a grading system with a score of 0 to 4+, which assesses the tubules and the interstitium for the presence of (1) tubular atrophy, (2) tubular dilatation, (3) interstitial inflammatory cell infiltrates, and (4) interstitial fibrosis. A score of 0 indicates no lesion (normal kidney), 1+ indicates a single, small focal lesion with very minimal tubular alterations and interstitial inflammatory cell infiltration, and 2+ to 4+ indicated increasing severity of tubular lesions, interstitial inflammatory cell infiltration, and/or fibrosis. A score of 4+ indicates involvement of approximately 50% or more of the renal parenchyma or interstitium." [PMID:PMID\:9369281]
LINE: def: ""A semiquantitative evaluation of the renal interstitium using a grading system with a score of 0 to 4+, which assesses the tubules and the interstitium for the presence of (1) tubular atrophy, (2) tubular dilatation, (3) interstitial inflammatory cell infiltrates, and (4) interstitial fibrosis. A score of 0 indicates no lesion (normal kidney), 1+ indicates a single, small focal lesion with very minimal tubular alterations and interstitial inflammatory cell infiltration, and 2+ to 4+ indicated increasing severity of tubular lesions, interstitial inflammatory cell infiltration, and/or fibrosis. A score of 4+ indicates involvement of approximately 50% or more of the renal parenchyma or interstitium." [PMID:PMID\:9369281] org.semanticweb.owlapi.oboformat.OBOFormatOWLAPIParser.parse(OBOFormatOWLAPIParser.java:67)
uk.ac.manchester.cs.owl.owlapi.OWLOntologyFactoryImpl.loadOWLOntology(OWLOntologyFactoryImpl.java:221)
uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.actualParse(OWLOntologyManagerImpl.java:1293)
uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:1233)
uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntologyFromOntologyDocument(OWLOntologyManagerImpl.java:1184)
edu.stanford.ncbo.bioportal.SimpleLoadTest.testLoadCMOOntology_WithDocumentFormat(SimpleLoadTest.java:415)
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.base/java.lang.reflect.Method.invoke(Method.java:566)
Would it be possible to have this corrected? We're currently unable to successfully load this ontology in BioPortal as a result (https://bioportal.bioontology.org/ontologies/CMO).
The OBO Foundry has recently created a topics page at https://github.com/topics/obofoundry. It would be great if you could add the obofoundry
topic to your repository, since it's currently listed as active in the OBO Foundry. If you're not sure how to do that, follow the instructions here. The main issue for this task is at OBOFoundry/OBOFoundry.github.io#1538 in case you want some more context or to join the larger discussion.
When I attempt to load CMO into a RDFlib graph:
import rdflib
g = rdflib.Graph()
g.load('http://purl.obolibrary.org/obo/cmo.owl',format="xml")
I get the following error:
http://purl.obolibrary.org/obo/Wikipedia#_http\://en.wikipedia.org/wiki/Waist-hip_ratio does not look like a valid URI, trying to serialize this will break.
http://purl.obolibrary.org/obo/MedicineNet#_http\://www.medicinenet.com does not look like a valid URI, trying to serialize this will break.
I recommend using the direct URL in question, or rewrite the URL to not include the escape character. Ideally, you should refer to the actual web page directly without escaping it.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.