Skip to content
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

In the ontology, using SKOS matching properties for classes precludes OWL DL #12

Open
baskaufs opened this issue Jun 8, 2019 · 0 comments

Comments

@baskaufs
Copy link

baskaufs commented Jun 8, 2019

In line 136 of the abcd_concepts.owl file, the following triples are asserted:

    <owl:Class rdf:about="Contact">
        <skos:exactMatch rdf:resource="http://xmlns.com/foaf/0.1/Agent"/>
    </owl:Class>

In Turtle serialization:

<http://rs.tdwg.org/abcd/terms/Contact> rdf:type owl:Class.
<http://rs.tdwg.org/abcd/terms/Contact> skos:exactMatch foaf:Agent.

In section 8.6.2 of the SKOS reference the domain and range of skos:semanticRelation are the class skos:Concept. In section 10.3, we see that skos:exactMatch is a sub-property of skos:closeMatch, skos:closeMatch is a sub-property of mappingRelation, and mappingRelation is a sub-property of skos:semanticRelation. Therefore, the domain and range of skos:exactMatch are also skos:Concept.

Using skos:exactMatch therefore entails that

<http://rs.tdwg.org/abcd/terms/Contact> rdf:type skos:Concept

(see Example 57 in section 10.6.1 for an illustration of this). Thus, <http://rs.tdwg.org/abcd/terms/Contact> is an instance of skos:Concept, or in OWL terminology, it's an "individual".

Section 5.2 of the SKOS Primer discusses the implications of modeling a resource as both an individual and an owl:Class. OWL Full does not require classes and individuals to be disjoint, but an OWL-DL ontology has a distjointness condition for classes and individuals. SKOS does not take a position on this issue, but making such a statement would preclude considering ABCD from being an OWL-DL ontology.

I don't think that TDWG currently has any kind of policy about how ontologies should be constructed, but past discussions on the tdwg-content email list seemed to indicate that it was desirable to take care about making statements that resulted in unanticipated entailments. That's one of the reasons that the Standards Documentation Specification recommends in section 4.5 that properties that extend the meaning of terms by introducing machine-computable entailments be included in a separate vocabulary extension list rather than including them directly with the basic properties.

Whether it is a good idea to use SKOS properties in ontologies or not is a topic for debate, but I think that the discussion in section 1.3 of the SKOS Reference is relevant. It discusses the philosophical differences in the outlook between constructing an ontology and constructing a thesaurus. In writing the Standards Documentation Specification, this kind of discussion is what informed the decision that controlled vocabulary terms should have the type skos:Concept and that they should be distinct from property and class terms (section 4.5). In defining classes and properties, we are describing the universe, but in defining controlled vocabulary terms we are trying to get people to correctly categorize values by presenting them with preferred labels for their choices.

So although using the SKOS semantic relation properties in definitions of datatype properties (e.g. line 1018 of the ontology) don't cause the same OWL-DL issue as using them in class definitions, it still is worth considering whether it makes sense to assert that http://rs.tdwg.org/abcd/terms/areaClass is both a property and a skos:Concept. Similarly, does it make more sense to assert that http://rs.tdwg.org/abcd/terms/Celsius is an instance of the class http://rs.tdwg.org/abcd/terms/temperatureScale (as is done in line 6407) than to say that http://rs.tdwg.org/abcd/terms/Celsius is a skos:Concept that is part of the skos:ConceptScheme http://rs.tdwg.org/abcd/terms/temperatureScale ? That's what is implied to me by the way it's described at http://wiki.bgbm.org/entity/Q805.

I hope I'm not sounding too critical about the work done on the ontology document so far. It's really awesome and a great step forward. I just wanted to bring up some modeling issues that should probably be considered as you work.

By the way, there are no entailments generated when using skos:definition or any of the SKOS label terms since they don't have domain declarations. So they can be used "safely" with any kind of resource.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant