- From: Hanscools <hanscools@intergga.ch>
- Date: Sun, 19 Nov 2017 23:35:58 +0100
- To: Eric Prud'hommeaux <eric@w3.org>
- Cc: semantic-web@w3.org
Hi Eric, You're quite right. I gave that kind of data example on purpose, because such alike was used as argument to replace in a system such basic properties as rdfs:domain and rdfs:range with other properties. Which brings it back to my question. Rephrasing it I think that interoperability is not helped by replacing the RDFS properties for that reason. Kind regards, Hans Am 19.11.2017 05:14, schrieb Eric Prud'hommeaux: > * Hanscools <hanscools@intergga.ch> [2017-11-19 02:45+0100] >> Hello, >> >> I came across a system implementing Semantic Web technology and >> replacing >> rdfs:domain and rdfs:range by its own constraints. >> Can this still be considered W3C compliant? >> >> The (anonymized) declaration: >> x:propertyX a owl:ObjectProperty. # replacing rdfs:domain >> x:propertyY a owl:ObjectProperty. # replacing rdfs:range >> (Note: without any other semantics, e.g. >> x:propertyX rdfs:subPropertyOf rdfs:domain.) >> >> Reason for doing this: 'insufficient control over type of subject and >> object', because: >> * implementation of the RDF/S model theory for rdfs:domain and >> rdfs:range >> with e.g. N3 rules: >> {?P rdfs:domain ?DC. ?x ?P ?y} => {?x a ?DC}. >> {?P rdfs:range ?RC. ?x ?P ?y} => {?y a ?RC}. >> >> * and example with mock-up ontologies and data (without prefix >> headers): >> Ontologies: >> y:Rock a rdfs:Class. >> z:Human a rdfs:Class. >> z:BiologicalSex a rdfs:Class. >> z:hasBiologicalSex >> a owl:ObjectProperty; >> rdfs:domain z:Human; >> rdfs:range z:BiologicalSex. >> Data: >> ex:rock1 >> a y:Rock; >> z:hasBiologicalSex z:female. >> >> * leads to following inferences with a machine reasoner using the >> above >> rules: >> ex:rock1 a z:Human. # not OK => 'One can state and infer the wrong >> things.' >> z:female a z:BiologicalSex. # OK >> >> Note: problem can be solved by declaring: >> z:Human owl:disjointWith y:Rock. # For the example above this will >> result in >> a conclusion: false. > > This looks like inaccurate data (if we're talking about minerals here, > they don't have a biological sex). There's no modeling which can > account for that. If you evaluate the semantics of false models, > you'll learn more false factoids. > > However, your question is kind of close to a textbook use case for OWL > restriction classes so it's probably worth mentioning. If cat's > offspring are cats and dog's offspring are dogs, we might be tempted > to use rdfs:range on ex:hasChild: > > wrong > ex:hasChild rdfs:range ex:Cat . > ex:hasChild rdfs:range ex:dog . > <Rex> a ex:Dog; ex:hasChild <Fido> . > implies that > <Fido> a ex:Dog, ex:Cat . # sort of a mule of common pets? > > But you can say that dogs have dogs and cats have cats: > > ex:Dog rdfs:subClassOf [ owl:onProperty ex:hasChild ; > owl:allValuesFrom ex:Dog ] . > ex:Cat rdfs:subClassOf [ owl:onProperty ex:hasChild ; > owl:allValuesFrom ex:Cat ] . > <Rex> a ex:Dog; ex:hasChild <Fido> . > which implies that > <Fide> a ex:Dog . > > >> Kind regards, >> Hans >>
Received on Sunday, 19 November 2017 22:36:41 UTC