Skip to content

Instantly share code, notes, and snippets.

@jsstevenson
Last active August 19, 2024 15:39
Show Gist options
  • Save jsstevenson/3db5df004bdccca6ff19cfdb10a61c73 to your computer and use it in GitHub Desktop.
Save jsstevenson/3db5df004bdccca6ff19cfdb10a61c73 to your computer and use it in GitHub Desktop.

misc notes

  • Dependencies on intake form seem incomplete -- OBI, Uberon?

  • treatment of 'history' is weird. BFO history (process) is imported but unreferenced. "smoking history" is defined as a "quality" but not as a subclass of "medical history".

Criteria

1. Ontology scope

  • Do the terms fall within the ontology’s stated target domain of knowledge?: Yes. Exercise medicine is potentially a very broad field of concepts but the declared classes seem to be within the scope of this domain.

  • Was the ontology developed for a very specific purpose or community?: Yes. As noted in the request PR, exercise medicine is a specific field with a corresponding academic community.

2. Terms with the new ontology prefix

  • Do the terms follow the OBO identifier scheme?: No, URIs do not consistently conform to the OBO Foundry Identifier Policy -- I'm seeing a few different URI schemas:

    • http://purl.obolibrary.org/obo/emo.owl/EXM_0000001
    • http://purl.obolibrary.org/obo/exmo.owl#patient
    • http://purl.obolibrary.org/obo/exmo.owl/EXM_0000214

Per OBO policy these should all be in the format of e.g. http://purl.obolibrary.org/obo/EXMO_0000001

  • Are there terms with the same meaning available in another OBO Foundry ontology?: Some stick out:

    • http://purl.obolibrary.org/obo/exmo.owl#patient "patient":
    • http://purl.obolibrary.org/obo/exmo.owl/EXM_0000214 "person":
    • http://purl.obolibrary.org/obo/exmo.owl/EXM_0000028 "gender" and http://purl.obolibrary.org/obo/exmo.owl/EXM_0000029 "sex": -- GSSO imports these as properties from schema.org and NCIT...
    • http://purl.obolibrary.org/obo/exmo.owl/EXM_0000039 "skeletal muscle": http://purl.obolibrary.org/obo/UBERON_0001134
    • http://purl.obolibrary.org/obo/exmo.owl/EXM_0000043 "basal metabolic rate": http://purl.obolibrary.org/obo/CMO_0003955
    • http://purl.obolibrary.org/obo/exmo.owl/EXM_0000056 "total lung capacity": http://purl.obolibrary.org/obo/CMO_0000380
    • http://purl.obolibrary.org/obo/exmo.owl/EXM_0000074 "core body temperature": http://purl.obolibrary.org/obo/CMO_0001036
    • ... many other possible terms of overlap with CMO classes -- pulse, blood pressure, heart rate, cholesterol level, etc
    • http://purl.obolibrary.org/obo/exmo.owl/EXM_0000097 "questionnaire": http://purl.obolibrary.org/obo/OBI_0001000
    • http://purl.obolibrary.org/obo/exmo.owl/EXM_0000368 "electromyography": http://purl.obolibrary.org/obo/MAXO_0035091
    • ... Likely others -- found these just from skimming subsections of the ontology
  • Is there another OBO Foundry ontology whose scope covers any of the new terms?: Noted above that there's a good deal of possible overlap with terms already defined in Uberon, CMO, the Cell Ontology, and others. There are definitely a decent number of terms in here that wouldn't be within scope anywhere else (e.g. exercise equipment).

  • Some definitions appear to be copied from other resources -- should these be cited or documented in some way? E.g. the definition for EXM_0000378 ("glutamate") is from NCIt, the definition for EXM_0000373 ("endorphin") is from MeSH (at minimum this definition should probably be revised given the different context), and the definition for EXM_0000375 ("norepinephrine") is from PubChem.

  • Around 80 of the 380 new classes lack definitions. I think that's within acceptable limits but it might be good to review and provide definitions for more ambiguous instances.

3. Correct use of imported terms

  • If the ontology reuses terms from other OBO ontologies, are they used accurately?: There's reasonable use of DO, uberon, and human developmental stage classes. As noted by @shawntanzk, they're manually declared rather than imported via ODK -- so there could be some slippage in the future unless this is remedied.

  • Are imported terms in appropriate hierarchies, and do they preserve the term’s upper-level alignment?: I'm concerned with how restrictions are added to some upper ontologic terms. For example, this restriction that BFO_0000019 ("quality") must be a quality of a EXM_0000214 ("person"), which seems to pose interoperability issues:

<owl:Class rdf:about="http://purl.obolibrary.org/obo/BFO_0000019">
    <rdfs:subClassOf rdf:resource="http://purl.obolibrary.org/obo/BFO_0000020"/>
    <rdfs:subClassOf>
        <owl:Restriction>
            <owl:onProperty rdf:resource="http://purl.obolibrary.org/obo/RO_0000080"/>
            <owl:someValuesFrom rdf:resource="http://purl.obolibrary.org/obo/exmo.owl/EXM_0000214"/>
        </owl:Restriction>
    </rdfs:subClassOf>

Similar restrictions are added to BFO_0000034 and HsapDv_0000000.

  • Are any additional axioms used for these terms correct in both a technical (e.g. passes reasoning) and substantive sense?: Upon a brief check, I didn't find any additional axioms used for imported terms.

4. Basic review of axiomatic patterns

  • Are axioms generally stated simply or are they highly complex? (Highly complex axioms will require extra scrutiny.):

  • Are existential restrictions used correctly?: (?)

5. Appropriate use of object properties

  • Are object properties used in a manner consistent with their definitions, domain, and range?:

    • There's one new object property defined, as far as I can tell -- EXM_0000006, "Abbreviation". I'm not sure if it would be desirable to instead import this from somewhere, given that this is obviously not the first place that you'd want to annotate a class with an abbreviation, but I'm not sure if there's a standard source to pull from.

    • a lot of the values for oboInOwl:hasDbXref are formatted in nonstandard way, as <Namespace>: <LUI> (for example UMLS CUI: C0005938) rather than a more standard CURIE. It'd be great to ensure these are more easily computable by removing the space and using prefixes as defined in a central entity like the Bioregistry or identifiers.org.

6. Responsiveness to suggested changes

  • Have the developers been willing to fix any identified issues during the review?: The developers have been responsive so far to individual comments. This is the first iteration of the formal review.

Other

  • The EXMO repository is located under a GitHub user account -- we generally recommend that ontologies are housed within a GitHub organization to ensure sustainability
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment