W3C home > Mailing lists > Public > www-rdf-rules@w3.org > January 2004

Re: DRS guide

From: Drew McDermott <drew.mcdermott@yale.edu>
Date: Thu, 15 Jan 2004 11:58:12 -0500 (EST)
Message-Id: <200401151658.i0FGwCO06314@pantheon-po01.its.yale.edu>
To: www-rdf-rules@w3.org


> [Bijan Parsia]
> I have a question about the use of reification. I notice that what I=20
> take to be the latest SWRL forgoes the reification sytnax altogether:
> 	http://www.daml.org/2003/11/swrl/rdfsyntax.html
> 
> For example:
>      <swrl:classAtom>
>        <swrl:classPredicate rdf:resource=3D"&ulan;Artist"/>
>        <swrl:argument1 rdf:resource=3D"#x" />
>      </swrl:classAtom>
> 
> Whereas DRS has something like:
> 
> <drs:Atomic formula>
> 	<rdf:subject rdf:resource=3D"#x"/>
> 	<rdf:predicate rdf:resource=3D"&rdf;type"/>
> 	<rdf:object rdf:resource=3D"&ulan;Artist"/>
> </drs:Atomic formula>
> 
> I'm not quibbling about having special support for classAtom, but about
> reusing the reification vocabulary at all. 

One can construe "reification" broadly or narrowly.  Broadly, it just
any means of encoding a triple so RDF won't recognize it as that
triple.  In this sense both SWRL and DRS use reification.

The narrow construal (or "construction," if you're a purist), is to
use the rdf:subject, rdf:predicate, rdf:object vocabulary.  The only
reason we use them in DRS is in an attempt to be consistent with
existing formalisms.  (To be "layered," if you will.)  Or perhaps I
should say, to avoid appearing to break new ground by use of
notational variants.

This philosophy is why SWRL atoms are now included as DRS atomic
formulas:

<Class rdf:ID="Atomic_formula">
   <unionOf rdf:parseType="Collection">
      <Class>
	 <intersectionOf rdf:parseType="Collection">
	    <Class rdf:about="#Formula"/>
	    <Class rdf:about="#Functional_term"/>
	    <Restriction>
	       <onProperty rdf:resource="#term_function"/>
	       <allValuesFrom rdf:resource="#Predicate"/>
	    </Restriction>
	 </intersectionOf>
      </Class>	
      <Class rdf:about="&swrl;Atom"/>
   </unionOf>
</Class>

This means that the encodings you used in your examples are two
different ways to express exactly the same atomic formula: (rdf:type x
Artist).  (Neither one represents the variable 'x' correctly, but
that's an orthogonal issue.)

-- 
                                   -- Drew McDermott
                                      Yale Computer Science Department
Received on Thursday, 15 January 2004 11:58:19 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 2 March 2016 11:10:15 UTC