- From: Ivan Herman <ivan@w3.org>
- Date: Sat, 21 Mar 2009 15:21:17 +0100
- To: Michael Schneider <schneid@fzi.de>
- CC: W3C OWL Working Group <public-owl-wg@w3.org>, Boris Motik <boris.motik@comlab.ox.ac.uk>
- Message-ID: <49C4F7DD.4000308@w3.org>
Ouch. I fell into the same trap again:-( Yes, I remember the QCR problem! I must admit, having thought through all this: I do not like it. Sorry....:-( What this solution means is that if I have only object properties p1 an p2 as keys (or properties that I do not care the type of) I still have to say [ a owl:Key ; owl:keyClass <C> ; owl:keyObjectProperties (p1 p2) ; owl:keyDataProperties () ] Ie, I _have_ to put the empty list for data properties even if, at that point, I do not really care about data properties. This is highly error prone, let alone ugly in RDF. Error prone because we can bet that people will forget to add that empty list, in which case the keys would not work. What I could imagine is: 1. keep the old C owl:hasKey (p1 p2 p3 ... ) encoding with the assumption that the backward mapping to FS maps p1, p2, ... p3 to object properties 2. _add_ the encoding you propose as an alternative in case I really really care that about the category of the properties, ie, I want to have an ontology that would be DL. But I do not think I would like to have alternative #1 only... Why did we have this whole thing again? Oh yes, the comment of Matthew on explicit typing of properties. Sigh... Maybe we should re-discuss this? (/me ducks:-) Ivan Michael Schneider wrote: >> -----Original Message----- >> From: Ivan Herman [mailto:ivan@w3.org] > >> So, just as a thought experiment: why not say that, by default, >> properties listed in a hasKey are object properties (ie, I can put there >> a list of properties, simply), but I can have a separate list which >> explicitly lists datatype properties? Ie, >> >> - if I want to have FS-compatible encoding, I would separate these two >> and make the encoding proper in FS >> - if I do not really care about FS, I would probably disregard the >> datatype property part of keys and just use the list of properties. >> >> Ivan > > This would not properly work. > > Say the combination of knowing some person and the date since knowing him would make a key. You might encode this as > > (1) _:x rdf:type owl:Key . > (2) _:x owl:keyClass foaf:Person . > (3) _:x owl:keyObjectProperties ( foaf:knows ) . > (4) _:x owl:keyDataProperties ( ex:since ) . > > Now, let's say you have the following data: > > ex:alice rdf:type foaf:Person ; > foaf:knows ex:charly ; > ex:since "2003-08-17"^^xsd:date . > > ex:bob rdf:type foaf:Person ; > foaf:knows ex:charly ; > ex:since "1994-04-12"^^xsd:date . > > With your approach of an *optional* data property list, you'll be surprised to learn that > > ex:alice owl:sameAs ex:bob . > > Why? Because you would have actually created *two* key axioms. The triples > > (1), (2), (3) > > would also make a valid encoding for a key axiom, stating that two foaf:PersonS are the same, if they foaf:knows the same person. > > We had a similar problem in the past with the RDF encoding for QCRs, when they were encoded just as cardinality restrictions with an additional owl:onClass property. Doing such "monotonic extension" of existing RDF encodings will generally call for trouble. > > Cheers, > Michael > > -- > Dipl.-Inform. Michael Schneider > Research Scientist, Dept. Information Process Engineering (IPE) > Tel : +49-721-9654-726 > Fax : +49-721-9654-727 > Email: michael.schneider@fzi.de > WWW : http://www.fzi.de/michael.schneider > ======================================================================= > FZI Forschungszentrum Informatik an der Universität Karlsruhe > Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe > Tel.: +49-721-9654-0, Fax: +49-721-9654-959 > Stiftung des bürgerlichen Rechts, Az 14-0563.1, RP Karlsruhe > Vorstand: Prof. Dr.-Ing. Rüdiger Dillmann, Dipl. Wi.-Ing. Michael Flor, > Prof. Dr. Dr. h.c. Wolffried Stucky, Prof. Dr. Rudi Studer > Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus > ======================================================================= > -- Ivan Herman, W3C Semantic Web Activity Lead Home: http://www.w3.org/People/Ivan/ mobile: +31-641044153 PGP Key: http://www.ivan-herman.net/pgpkey.html FOAF: http://www.ivan-herman.net/foaf.rdf
Received on Saturday, 21 March 2009 14:21:35 UTC