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

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 contaning 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,
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.  

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 .

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

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

Received on Sunday, 15 July 2012 23:10:35 UTC