Dear Kerry, In https://github.com/w3c/sdw/pull/592 , you ask:
> Maxime, Are your restrictions sound turtle? They don't look right to me
--- don't you need to
> use 'rdf:type owl:Restriction" everywhere as they were in ssn.ttl?
Well, that was a very good question, and the short answer is:
- the way I lighten the restrictions are ok for most of the OWL-based tools
I have used so far,
- but you are right, I double checked the RECs for OWL1-to-RDF [1] and
OWL2-to-RDF [2] mappings, and both seem to require that there is a "rdf:type
owl:Restriction" triple.
As far as I can remember, I always lightened the RDF document that
introduce OWL ontologies instances of owl:Restriction. I think my initial
decision to do so was motivated by:
- the domain of owl:onProperty in https://www.w3.org/2002/07/owl# is
owl:Restriction
- OWLAPI (and therefore Protégé) and most of the OWL editors I ever used
do recognize these lightened restrictions,
- they are more readable to me.
So thank you for your question, it made me take some time to double check
my old habits.
The normative parts of the OWL and OWL2 RECs that describe the mapping
between the OWL abstract syntax and the RDF data model are [1] and [2],
respectively. Both require that there is a "rdf:type owl:Restriction"
triple.
By the way, Table 5 in [2] shows how OWL 2 officially deals with SOSA
classes that are declared as both rdfs:Class AND owl:Class.
I added these triples in the following commit, and appended this to the
pull request:
https://github.com/w3c/sdw/pull/592/commits/8247fcaa9922815df2477a9665116480c3603e2d
Kind regards,
Maxime
[1] - https://www.w3.org/TR/owl-semantics/mapping.html
[2] -
https://www.w3.org/TR/owl2-mapping-to-rdf/#Mapping_from_RDF_Graphs_to_the_Structural_Specification
(see
Table 13. Parsing of Class Expressions)