W3C home > Mailing lists > Public > public-rdf-shapes@w3.org > July 2014

Re: OWL is hard?

From: Simon Spero <sesuncedu@gmail.com>
Date: Fri, 25 Jul 2014 16:43:20 -0400
Message-ID: <CADE8KM6r=jrzSvGn4iU83U05a8fVS8pceO4bSkmQ=EUTp5iJ0g@mail.gmail.com>
To: Kendall Clark <kendall@clarkparsia.com>
Cc: "public-rdf-shapes@w3.org" <public-rdf-shapes@w3.org>
On Fri, Jul 25, 2014 at 1:46 PM, Kendall Clark <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";
].

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
";
].

... 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";

  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 Friday, 25 July 2014 20:43:47 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:02:39 UTC