Skip to content

Missing domain and range attributes in the MeSH ontology/vocabulary? #181

@doogyb

Description

@doogyb

The Concepts documentation provides the following table for the relationships between the meshv:Concept class and other classes:

  Subject Predicate Object  
1 meshv:Concept meshv:broaderConcept meshv:Concept
2 meshv:Concept meshv:narrowerConcept meshv:Concept
3 meshv:Concept meshv:preferredTerm meshv:Term
4 meshv:Concept meshv:term meshv:Term
5 meshv:Concept meshv:relatedConcept meshv:Concept

However, in the vocabulary_1.0.0.ttl file provided, the relationships between meshv:Concept and meshv:Term are not covered.

If we add the following rdfs:domain attributes to meshv:preferredTerm

<http://id.nlm.nih.gov/mesh/vocab#preferredTerm> rdf:type :ObjectProperty ;

                                                 rdfs:label "preferredTerm" ;

                                                 rdfs:comment "Relates Concepts, Descriptors, Qualifiers or SupplementaryConceptRecords to Terms. Indicates that the Term is the preferred term for a Concept, Descriptor, Qualifier, or SupplementaryConceptRecord." ;

                                                 dct:description "Relates Concepts, Descriptors, Qualifiers or SupplementaryConceptRecords to Terms. Indicates that the Term is the preferred term for a Concept, Descriptor, Qualifier, or SupplementaryConceptRecord." ;

                                                 rdfs:subPropertyOf <http://id.nlm.nih.gov/mesh/vocab#term> ;

                                                 rdfs:domain <http://id.nlm.nih.gov/mesh/vocab#Concept> ;
                                                 rdfs:domain <http://id.nlm.nih.gov/mesh/vocab#Descriptor> ;
                                                 rdfs:domain <http://id.nlm.nih.gov/mesh/vocab#Qualifier> ;
                                                 rdfs:domain <http://id.nlm.nih.gov/mesh/vocab#SupplementaryConceptRecord> ;

                                                 rdfs:range <http://id.nlm.nih.gov/mesh/vocab#Term> .

Then the relationship on row 3 is covered (along with the other Subject/Object relationships described by meshv:preferredTerm).

This following visualisation might also help:
Screenshot 2021-11-17 at 11 13 17

I'm wondering if this was intentional? If not, I'd be happy to open a PR and add these missing relationships to the ontology.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions