AW: OWL is hard?

Hi Simon,

I added this requirement to the RDF validation requirements db:
http://lelystad.informatik.uni-mannheim.de/rdf-validation/?q=R-190-SPECIFY-EXPECTED-BEHAVIOR-UNDER-ALL-POSSIBLE-ENTAILMENT-REGIMES


Kind regards,
Thomas

--
Thomas Bosch, M.Sc. (TUM)
PhD Student
GESIS - Leibniz Institute for the Social Sciences
Social Science Metadata Standards
Visitors Address: B2,1, D-68159 Mannheim
Postal Address: P.O.Box 12 21 55, D-68072 Mannheim
Tel: + 49 (0) 621 / 1246-271
Fax: + 49 (0) 621 / 1246-100
Web: http://www.gesis.org
Website: http://boschthomas.blogspot.com/
GitHub: https://github.com/boschthomas/PhD

________________________________
Von: Simon Spero [sesuncedu@gmail.com]
Gesendet: Freitag, 25. Juli 2014 22:43
An: Kendall Clark
Cc: public-rdf-shapes@w3.org
Betreff: Re: OWL is hard?

On Fri, Jul 25, 2014 at 1:46 PM, Kendall Clark <kendall@clarkparsia.com<mailto:kendall@clarkparsia.com>> wrote:

 foaf:Person class,
 foaf:name 1 1,
 foo:email 1 1,
 foo:phone 0 * .

Some Manchester syntax (again corrections welcome)

Class: foaf:[P]erson
   foaf:name exactly 1
   foo:email exactly 1
   foo:phone min 0

 I'm not sure exactly what constraint is being specified on on foo:phone in the original example.

 The informal description is about a web service which requires that "all resources submitted to it must be of type foaf:Person, must have a foaf:name and a foo:email, and possibly one or more foo:phone".

a) If the intended meaning of the final clause is that the cardinality of foo:phone is between 0 and infinity, then it is trivial.

b) If the intended meaning of the final clause is to serve purely as documentation then it is not really a constraint.

c) If the intended meaning of the entire phrase is that it is to be construed using  expressio unius<http://en.wikipedia.org/wiki/Statutory_interpretation#Textual>, then the final clause is necessary, because any predicates not explicitly mentioned are forbidden.  Under this interpretation,

Example 1 is valid:
1)
[ a foaf:Person ;
  foaf:name "John F. Manning" ;
  foo:email "jmanning@law.university-in-cambridge-that-has-a-yahd.edu<mailto:jmanning@law.university-in-cambridge-that-has-a-yahd.edu>";
].

But:

*2)
[ a foaf:Person,foaf:Agent ;
  foaf:name "John F. Manning" ;
  foo:email "mailto:jmanning@law.university-in-cambridge-that-has-a-yahd.edu<mailto:jmanning@law.university-in-cambridge-that-has-a-yahd.edu>";
].
... is invalid, because it includes a value for rdf:type even though that value is entailed by the foaf Ontology.
A similar problem could occur if there were  sub or super-properties of foo:email - e.g. if there were  sub properties for officialEmail and personalEmail, or if there were a super property contactURL.

Also:

*3)
[ a foaf:Person ;
  foaf:name "John F. Manning" ;
  foo:email "jmanning@law.university-in-cambridge-that-has-a-yahd.edu<mailto:jmanning@law.university-in-cambridge-that-has-a-yahd.edu>";
  foaf:gender "male";
].

... is invalid, because foaf:gender is  not explicitly mentioned.

Any specification that implements this approach must specify expected behavior under all possible entailment regimes.

I am not sure if it is possible to specify in OWL the constraint that the maximum cardinality for  all properties apart from a specifically mentioned set is 0  (it is probably doable in SPARQL as long as entailment regimes are handled carefully).

It would not be too hard to define OWL constructs that could serve this purpose if the CWA is in effect- e.g. pseudo-properties like  'otherObjectProperties' and 'otherDataProperties', or even 'otherProperties'.  This kind of pseudo-property would probably not be suitable for use in inferencing.

Simon

Received on Sunday, 27 July 2014 08:32:15 UTC