EBISPOT / DUO

Ontology for consent codes and data use requirements
Other
64 stars 15 forks source link

DUO:0000015 missing datatype for shorthand #123

Open amstilp opened 1 year ago

amstilp commented 1 year ago

I'm not very familiar with owl files, so apologies if I'm using any vocabulary incorrectly here. I'm also not sure if this issue is more appropriate in this repo vs in the pronto repo (https://github.com/althonos/pronto).

The definition of DUO:0000015 appears to be missing the datatype for "shorthand":

    <owl:Class rdf:about="http://purl.obolibrary.org/obo/DUO_0000015">
        <rdfs:subClassOf rdf:resource="http://purl.obolibrary.org/obo/DUO_0000017"/>
        <obo:IAO_0000115 xml:lang="en">This data use modifier indicates that use does not allow methods development research (e.g., development of software or algorithms).</obo:IAO_0000115>
        <oboInOwl:id rdf:datatype="http://www.w3.org/2001/XMLSchema#string">DUO:0000015</oboInOwl:id>
        <oboInOwl:shorthand>NMDS</oboInOwl:shorthand>
        <rdfs:label xml:lang="en">no general methods research</rdfs:label>
    </owl:Class>

Other terms have the datatype specified in the tag, for example:

<oboInOwl:shorthand rdf:datatype="http://www.w3.org/2001/XMLSchema#string">GRU</oboInOwl:shorthand>

If I try to parse duo-basic.owl or duo.owl using pronto, the shorthand is not listed as an annotation:

>>> from pronto import Ontology
>>> duo = Ontology("https://raw.githubusercontent.com/EBISPOT/DUO/master/duo-basic.owl")
>>> duo["DUO:0000042"].annotations
{LiteralPropertyValue('http://www.geneontology.org/formats/oboInOwl#shorthand', 'GRU')}
>>> duo["DUO:0000015"].annotations
set()

This breaks automated processing that I'm trying to do for the duo.owl files. Using pronto, the shorthand is not listed as an annotation.

If I change the definition of DUO:0000015 to

    <owl:Class rdf:about="http://purl.obolibrary.org/obo/DUO_0000015">
        <rdfs:subClassOf rdf:resource="http://purl.obolibrary.org/obo/DUO_0000017"/>
        <obo:IAO_0000115 xml:lang="en">This data use modifier indicates that use does not allow methods development research (e.g., development of software or algorithms).</obo:IAO_0000115>
        <oboInOwl:id rdf:datatype="http://www.w3.org/2001/XMLSchema#string">DUO:0000015</oboInOwl:id>
        <oboInOwl:shorthand rdf:datatype="http://www.w3.org/2001/XMLSchema#string">NMDS</oboInOwl:shorthand>
        <rdfs:label xml:lang="en">no general methods research</rdfs:label>
    </owl:Class>

then pronto does find the annotations/shorthand for DUO:0000015.