- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Fri, 21 Nov 2003 12:26:27 -0500 (EST)
- To: stefan@ISI.EDU
- Cc: www-rdf-rules@w3.org
From: Stefan Decker <stefan@ISI.EDU>
Subject: Re: Rules WG -- draft charter -- NAF
Date: Fri, 21 Nov 2003 16:51:05 +0000
> At 08:09 PM 11/20/2003, Peter F. Patel-Schneider wrote:
> >From: Stefan Decker <stefan@ISI.EDU>
> >Subject: Re: Rules WG -- draft charter -- NAF
> >Date: Thu, 20 Nov 2003 19:19:56 +0000
> >
> > > Peter,
> > >
> > > >Well, I am still confused as to how this would work. How would one
> > > >interpret a rule on an RDF graph without reference to the RDF (or some
> > > >other) semantics?
> > >
> > >
> > > It should take the RDF semantics into account.
> > > But compared to the OWL the semantics of RDF semantics is minimal.
> > > But maybe I should first try to define what I mean by (extended) semantics
> > > of an RDF graph.
> > > The following definition could serve as a starter:
> > >
> > > Set T be the set of all triples.
> > > An extended semantics esem is a mapping from pow(T) -> pow(T) such that
> > > esem(R) \subseteq R, R \in pow(T)
^p
Let X be any particular triple.
Define esemX(R) to be R if the size of R is finite and even and RuX otherwise.
I claim that esemXY satisfies the definition above (if you really meant
subseteq, then just replace union with difference).
esemXY is not monotonic.
> > > So every extended semantics is itself monotonic :-)
> > > E.g., RDF Schema semantics applied to an RDF graph delivers
> > > only additional triples (e.g., additional subClassOf triples),
> > > but would never remove anything.
> >
> >Well, not necessarily. Nonmonotonic here roughly means that if R1 is
> >smaller than R2 then esem(R1) is smaller than esem(R2),
>
> Yes.
>
> >which you certainly
> >don't get as a consequence of this definition.
>
> Actually, you do.
> Every esem is a continuous function on a complete lattice.
Where was that stated?
> Every continuous function on a complete lattice is monotonic.
Well, given that the definition of continuous functions between complete
partial orders usually includes monotonic, sure.
> >I any case, what does this have to do with the RDF semantics at all?
> I try to explain what I means by a semantics - like RDF Schema and what it
> could mean
> to apply the CWA on a semantics of a datamodel.
> In a way I would like to clearify the confusion around CWA applied to RDF,
> RDF Schema, etc.
> Let me know if this is of no interest to you.
Well sure, I would like to see what you are trying to get at.
> > > Then a way to define CWA to extended semantics is by simply
> > > doing CWA(rdfschema(R));
> > > I think this works at least for some semantics - I don't think it works
> > for
> > > all, but it would be interesting
> > > to investigate where it works.
> >
> >What is the CWA relationship here? It certainly isn't a relationship
> >between triple sets!
>
> I had Ray Reiters definition in mind, modified to the RDF case
>
> CWA(A) = A \union {\neg t \mid t is a triple and is not contained in A))
>
> //since RDF Interpretations add triples we need to take these additional
> triples into account as well -
> // so there is a sloppyness here, which is not a big problem.
Well, there may be a problem or there may not. For example, it is possible
that CWA(A) is RDF(S,D)-inconsistent for all (or many) A's.
[...]
> > > If yes, one could try to go one step higher on the semantics ladder and
> > > investigate what an RDFS interpretation would add.
> > > Taking the definition from above, one would try to compute the extended
> > > semantics
> > > and then apply CWA to it. Do you see obvious problems with that?
> >
> >Yes, certainly. First, how can you determine whether to do the RDF or the
> >RDFS (or the OWL) CWA? Second, the RDF and RDFS CWA of any graph are going
> >to be OWL-inconsistent.
>
> Good question. One way is simply to say: the user knows which semantics
> to apply. another possibility is that RDF Graphs carry metadata which
> indicates which semantics applies.
> > > >What would the CWA make of the folowing graph?
> > > >
> > > >ex:Student rdfs:subClassOf _:x .
> > > >_:x rdf:type owl:Restriction .
> > > >_:x owl:onProperty ex:sid .
> > > >_:x owl:allValuesFrom xsd:integer .
> > > Interpreting _:x as a skolem constant
> > > and the rest as simple triple data I don't see the problem?
> >
> >Well, first, how does the CWA work on _:x. Suppose, for example, there are
> >two blank nodes that look the same. Is the CWA going to force them to
> >denote different domain elements? (For that matter, what about two URI
> >refs that have the same information attached to them?)
> These two questions are not related - there can be an equality theory
> applied before CWA (as another esem). But yes, blank nodes are
> interesting. I think a Herbrand interpretation would be useful - that
> would mean, yes CWA would generate different domain elements. Where could
> something go wrong with this? You think otherwise?
Yes.
Everything goes wrong with this. The CWA then forces a very strong version
of the unique names assumption - all nodes, even blank nodes, have to
denote different domain elements. This has been an issue with various
versions of the CWA for quite some time now.
> > > >In particular, would it require that there be no domain element for _:y in
> > > >the following.
> > > >
> > > >_:y rdf:type owl:Restriction .
> > > >_:y owl:onProperty ex:sid .
> > > >_:y owl:allValuesFrom rdfs:Literal .
> > > Again, just using an RDF interpretation from the model theory I don't see
> > > the problem.
> > > Of course if I apply an OWL interpretation things look differently.
> > > But maybe one should first start simple.
> >
> >Well, simple starting points that prevent future growth are certainly not
> >preferred, and this is what I am seeing here.
> Why?
The naive application of the CWA to graphs requires interpreting these
graphs in a particular formalism and breaks the upward compatability
between RDF and RDFS and between RDFS and OWL.
> > > Am I missing anything?
> >
> >Well, your proposal is certainly missing something. I don't see how it can
> >work well, if at all.
> Why?
See above. Consider also issues having to do with forcing different nodes
(even blank nodes) to denote different domain elements.
> > > >I forsee many similar problems in applying a CWA without use of semantics.
> > >
> > > Could you explain them?
> >
> >Well, without a semantics I don't see that you have any connection to RDF
> >at all. The (beginnings of a) semantics that you provide above still
> >doesn't have much connection (if any) to RDF. How do you reconcile how
> >your CWA works with how the RDF semantics works? I've given a couple of
> >examples, but there are many more. It appears to me that you will have to
> >mirror all the RDF (or RDFS or OWL) inferences to make your scheme work,
> >and even then I don't see how you actually get a CWA out of your scheme at
> >all.
> See the definition of CWA above - together with the definition of an esem
> it seems to me to provide a framework to discuss multiple semantics and
> still are able to use the CWA. For RDF semantics itselfs this works by
> just adding the axiomatic triples to the model For RDF Schema you add the
> additional triples coming from the RDF Schema semantics. The CWA can be
> applied the the graph be queried.
I don't see this. I don't see a usable definition of an esem. I don't see
a solution to the forcing-apart of node denotations.
Even so, I would like to see a completely-worked-out document on this.
There is much to be gained from some way of
closing/circumscribing/... information in the Semantic Web and maybe this
could serve as a starting point.
peter
Received on Friday, 21 November 2003 12:26:38 UTC