W3C home > Mailing lists > Public > semantic-web@w3.org > July 2012

Re: OWL2 RDF mapping and skolemization [was Re: OWL equivalentClass question]

From: Pat Hayes <phayes@ihmc.us>
Date: Sun, 15 Jul 2012 21:48:03 -0500
Cc: Alan Ruttenberg <alanruttenberg@gmail.com>, Michael Schneider <schneid@fzi.de>, semantic-web@w3.org, nathan@webr3.org, "Peter F. Patel-Schneider" <pfpschneider@gmail.com>
Message-Id: <82978787-8B14-4720-B642-370340440A72@ihmc.us>
To: David Booth <david@dbooth.org>

On Jul 15, 2012, at 9:17 PM, David Booth wrote:

> Correction . . .
> 
> On Sun, 2012-07-15 at 19:10 -0400, David Booth wrote:
>> Hi All,
>> 
>> Thanks for your comments.  To get to the crux of the matter . . . 
>> 
>> On Fri, 2012-07-13 at 23:35 -0500, Pat Hayes wrote:
>>> [ . . . ] If you start with a graph G containing a bnode and skolemize
>>> it to get another graph GS where the bnode has been replaced by a URI,
>>> then G does not entail GS. 
>> 
>> Unless we're making a closed world assumption, that sounds wrong to me,
> 
> I read Pat's statement backwards, so my response above said the opposite
> of what I meant (as Peter pointed out).  What I *meant* was that I think
> GS should entail G . . . 

Which it indeed does, yes. 

> 
>> because giving a (guaranteed new) name to a previously unnamed node is
>> merely *adding* information -- no information has been removed -- so all
>> previous entailments should still hold.  If the semantics are not
>> currently defined that way then it seems to me that we've made a
>> mistake.  

No mistake. All the original entailments still hold. GS entails G, so entails anything that G entails. 

>> 
>> After owl:sameAs entailments are applied to both graphs, it seems to me
>> that this graph G1:
>> 
>>  _:bnode :p 5 .
>>  _:bnode owl:sameAs :x .
>> 
>> should have the exact same semantics as this graph G2:
>> 
>>  :x :p 5 .
>>  :x owl:sameAs _:bnode .

Yes, these are interderivable using OWL semantics. (Not in pure RDF, of course, which doesnt know about owl:sameAs.)

>> 
>> and the same thing should be true of RDF graphs that happen to encode
>> OWL2 constructs.
>> 
>> The point of mapping OWL2-->RDF-->OWL2 is not merely pedantic, it is to
>> allow OWL2 constructs to be used and manipulated by standard RDF tools
>> -- including doing inference, graph merging, etc.

Whoa. That is too optimistic. Embedding OWL into RDF allows OWL to be **transported** as legal RDF. But if you "manipulate" the RDF along the way, you risk breaking the OWL encoding rules. None of the specs give any guarantee that doing arbitrary RDF inference on some OWL/RDF is guaranteed to preserve the OWL content. In fact for OWL-DL this is definitly not the case, since simply omitting some information will break the OWL encodings. 

>> -- and then allow
>> specialized OWL2 tools to be used on that subset of the result that
>> matches OWL2 idiomatic encoding patterns.  
>> 
>> Unless information has been *removed* from the graph, this should
>> include all encoding patterns that were produced when the original OWL2
>> was mapped to RDF, but it may also include OWL2 encoding patterns that
>> were intentionally created during RDF processing.
>> 
>> Alan mentioned (about Skolemizing an OWL2 encoding in RDF):
>> 
>>> It would be like saying, you can't change an expression "there exists
>>> an x" to "x". They don't mean the same thing.
>> 
>> Agreed, because skolemization does *add* information to the graph.  But
>> sameness is not the goal, although there should be a certain kind of
>> *equivalence* between an unskolemized graph and its skolemized version
>> -- basically, the same semantics after ignoring the names of the
>> skolemized nodes.

The exact statement is (to repeat...) If a graph H does not contain the skolem name, then G entails H if and only if GS entails H. 

By construction, G does not contain the skolem name, so (putting G for H) GS entails G. GS however does contain the name, so the reverse argument does not work. 

>> 
>> But beyond that, it should always be possible to *add* information to an
>> RDF graph that contains OWL2 encodings, and still have those encodings
>> be recognized when mapping back from RDF to OWL2.

One has to be careful what exactly is meant by 'adding information". Skolemizing adds some triples but deletes some other triples (the ones with the bnodes in them.) They can be restored by a valid entailment, so in a sense the "information" is still there in the graph, but they are missing from the skolemized graph, and this means that said skolemized graph may fail to have some syntactic properties that the original graph had, such as being conformant to the OWL/RDF specs for a correct RDF encoding of some OWL. 

Pat


>>  If we cannot do that
>> then I don't think we have the specs quite right yet.
>> 
>> 
> 
> -- 
> David Booth, Ph.D.
> http://dbooth.org/
> 
> Opinions expressed herein are those of the author and do not necessarily
> reflect those of his employer.
> 
> 
> 

------------------------------------------------------------
IHMC                                     (850)434 8903 or (650)494 3973   
40 South Alcaniz St.           (850)202 4416   office
Pensacola                            (850)202 4440   fax
FL 32502                              (850)291 0667   mobile
phayesAT-SIGNihmc.us       http://www.ihmc.us/users/phayes
Received on Monday, 16 July 2012 02:48:37 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 1 March 2016 07:42:35 UTC