W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > April 2002

Re: Dark triples, motivating examples

From: Pat Hayes <phayes@ai.uwf.edu>
Date: Mon, 15 Apr 2002 21:07:39 -0400
Message-Id: <p05101525b8e122479992@[]>
To: "Jeremy Carroll" <jjc@hplb.hpl.hp.com>
Cc: w3c-rdfcore-wg@w3.org, "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>
>ACTION 2002-04-12#7, jjc: post message to rdfcore with motivating example
>(for dark triples?)
>The basic problem can be expressed in DAML+OIL as:
><rdf:Description rdf:about="#John">
>    <rdf:type>
>     <daml:class>
>       <daml:intersectionOf rdf:parseType="daml:collection">
>          <daml:class rdf:ID="Student"/>
>          <daml:class rdf:ID="Employee"/>
>      <daml:intersectionOf>
>     </daml:class>
>    </rdf:type>
><rdf:Description rdf:about="#John">
>    <rdf:type>
>     <daml:class>
>       <daml:intersectionOf rdf:parseType="daml:collection">
>          <daml:class rdf:ID="Employee"/>
>          <daml:class rdf:ID="Student"/>
>      <daml:intersectionOf>
>     </daml:class>
>    </rdf:type>
>In English, the premise reads John is in the intersection of Student and
>The conclusion reads John is in the intersection of Employee and Student.
>WOWG believes that this entailment is appropriate (although that has not
>been formally decided).
>However, in RDF the structure of the first collection and the structure of
>the second collection is fairly different and so it is difficult/impossible
>to account for the relationship. (I think the exact level of difficulty is
>disputed). One aspect of this difficulty is that the meaning of the triples
>according to the RDF Model theory is order preserving.
>WOWG considers that this issue can be addressed by using dark triples.
>I have not understood the exact mechanism of the solution.

Um. I don't think this quite captures the essential point. The 
entailment given is indeed wanted, but its only one of a whole class 
of entailments. Now, those entailments themselves are not the 
problem: after all, OWL can impose its own semantic conditions on the 
graphs, to make sure its entailments come out the way it wants. In 
these cases the RDF in effect says less than OWL requires, but that 
is to be expected. The problem (that dark triples is intended to 
address) is almost the inverse of this: it is that the RDF graphs 
that encode DAML (more generally, OWL)  might say *more* than what is 
intended: in particular, they assert the *existence* of certain 
containers, corresponding to the syntax of some DAML (OWL) 
expressions, eg the use of daml:collection to encode some DAML 
expressions in RDF. When DAML was designed, RDF had no semantics, so 
it was quite OK for DAML to use RDF triples freely and assign its own 
meaning to them. But now that RDF does have a semantics, those 
triples have a definite RDF meaning (they assert the existence of a 
thing called a daml:collection, with relationships to its contents) 
and since DAML (OWL) is supposed to be a 'layered' extension of RDF, 
they should have the same meaning in DAML as they have in RDF.  But 
DAML doesn't want them to have that meaning (the DAML MT gives them a 
different meaning); and in OWL, Peter has shown that if we insist 
that OWL interpretations preserve all the meanings that the RDF MT 
assigns to all the 'syntax-encoding' triples that will be needed to 
ensure an adequate layering, then those extra things that are 
asserted (by RDF) to exist, can actually produce inconsistencies in 
the OWL, basically rendering what would otherwise be perfectly good 
OWL assertions into nonsense. In general, it usually isn't a good 
idea to impose, as a semantic condition on a language (particularly a 
'class', ie set-theoretic, language like DAML or OWL),  that it is 
obliged to talk about its own expression syntax: but that is what the 
'layering' conventions basically do, if the higher layers are obliged 
to take the RDF semantics seriously. So, we need a way to say 
something like: *these* triples are being asserted (and DAML accepts 
them as assertions and agrees with their meanings) but *these other* 
triples are just being used to encode syntax, and are not being 
asserted. The 'dark' triples are the latter kind, and all that is 
required is that DAML (and OWL, and probably almost every other 
layered extension of RDF) has some way to make the distinction.

I would emphasize that this issue really is a semantic non-issue for 
RDF: it doesn't fundamentally change the language at all, other than 
asking it to provide a way for a 'higher' layer to make this 
distinction, and be willing to record it and preserve it under 
inferences. The distinction is already in the RDF MT, in fact ('dark' 
= 'unasserted'). So it just requires some kind of syntactic 
convention or addition to allow an RDF graph/document to actually 
record the distinction so that it can be accessed and preserved. This 
would be easy in N-triples, but seems to require some new idea in 
RDF/XML. (Eg one idea that was mooted was to allow <rdf> ...</rdf> 
brackets inside an RDF/XML document, the understanding being that 
anything inside them was 'dark'.)

If the WG accepts this task, the basic decision to be taken is 
whether an RDF document with dark triples should be designed to be 
acceptable to current parsers or whether it should, as a matter of 
policy, be designed to break current parsers. I would suggest the 
former, if some way can be found to do this while preserving the 
distinction. I would also suggest the easiest way to go would be to 
provide some way to say that a given namespace is 'dark'; Peter and I 
agree that, while somewhat less flexible than allowing an arbitrary 
distinction, this would be sufficient to allow WOWG to proceed.

>In the discussion WOWG appeared to like this entailment so much, that it was
>worth paying the cost of having two separate RDF documents to express the
>light and dark triples. This was the mechanism discussed at greatest length
>in the webont f2f. (I took it that the motive for discussing that mechanism
>is that this was the smallest possible change required of RDFCore: simply
>permission to have an RDF/XML document that is interpreted as a "dark

That would indeed be the minimal change to RDF, ie no change at all, 
and I did seriously suggest it to the WOWG, since that is what Euler 
does. But it was felt that mechanism would be rather hard to use in 
OWL, since it would probably lead to a proliferation of multiple dark 
documents from any reasonably complex piece of OWL.

>In terms of RDF collections, we could imagine trying to make the same
>construct with a closed bag.

That would not achieve the required goal, however, since the triples 
describing the bag would be present in the graph and hence the bag 
would be asserted to exist in the MT, and hence would be required to 
exist in any OWL interpretation; but that is exactly what we are 
trying to avoid.


PS. A pre-emptive strike: reification doesn't do it, either.

IHMC					(850)434 8903   home
40 South Alcaniz St.			(850)202 4416   office
Pensacola,  FL 32501			(850)202 4440   fax
Received on Monday, 15 April 2002 21:07:42 EDT

This archive was generated by hypermail pre-2.1.9 : Wednesday, 3 September 2003 09:47:28 EDT