Re: Representation of SWRL expressions in OWL-S

Drew McDermott wrote:
> 
>>[Manshan Lin]
>>
>>Can we use SWRL to define universal quantifier?
>>For example,
>>all (x) ( A(x) and P(a,x) ) (B(x)) 
>>can be defined as
>>( A(x) and P(a,x) ) implies (B(x)) .
>>In this case, "x" is an universal variable.
> 
> 
> The main point to keep in mind is that Owl-S must _quote_ SWRL
> expressions, i.e., label them as XML literals, not to be taken as RDF
> by any RDF inference engine looking at them.  The reason for this is
> that much of the neat hierarchical structure in a typical
> XML-ification of RDF is an illusion.  You must always keep in mind
> that the hierarchy evaporates when the XML is turned into triples.
> Hence any subset of the triples that can be reassembled into a
> meaningful expression _will_ be reassembled.  So if SWRL expressions
> occur unquoted, they will be asserted just as surely as if they had
> occurred all by themselves.  Your intent may be to use, say, a
> headless rule as a formula whose role in context is to be a
> precondition, but in fact that rule will gain its freedom and be
> interpreted as an actual assertion.
> 
> Think of an Owl-S plan as a chromosome, and of unquoted SWRL as
> viruses.  Quotation devices then play the role of antibodies.
> 
> I belabor this because (a) it took me a while to figure it out, during
> which time I was pummeled about the head repeatedly by Bijan until I
> got it; (b) once you grant the point then your proposal heads toward
> the "moot" category.  Yes, you can adopt a convention whereby unbound
> variables are interpreted as universals.  You can also adopt a
> convention whereby they are interpreted as existentials, or as
> references to the Tao.  Personally, I would favor a convention whereby
> quantifiers are explicit, on the grounds that, outside of logic
> programming, people get confused about how to interpret a bare
> variable.

Drew -

I'm glad you've made such a clear statement regarding the need to quote 
SWRL expressions.

Currently this is making us a little crazy at SRI, in the context of 
work on the Protege-based OWL-S editor.  There is now a SWRL editing 
capability in the OWL plugin, and it turns out that we could integrate 
much more easily with the SWRL editor if SWRL expressions were *not* 
quoted in OWL-S.

So there's a desire to revisit this whole issue.  I'd like to start by 
understanding better whether there is a clear story about how SWRL is 
supposed to be used with OWL in general.  So let's forget about OWL-S 
for the moment.  Based on what you've said, it appears that SWRL 
expressions pretty much must *always* be quoted.  That is, if they are 
going to be loaded in a KB with other RDF / OWL stuff, and the KB used 
for reasoning in a RDF-based reasoner, there's always going to be a 
serious potential for confusion, because, as you say, the hierarchical 
structure is not meaningful to the reasoner.  (By RDF-based reasoner, I 
just mean any reasoner that works off of the triples according to their 
normal semantics.)

I'd like very much to know what the inventors of SWRL think about this, 
and also what the developers of the Protege-based SWRL editor have to 
say.  Isn't it fair to say that if you want to use a RDF-based reasoner, 
that all uses of SWRL should be quoted?  But then, if that's the case, 
it's impossible to claim that SWRL is layered on OWL in a meaningful or 
useful way.

I'd very much appreciate any clarity that anyone can offer on these 
points.  In particular, what envisioned uses of SWRL allow you to 
proceed *without* quoting?  And if there are any, how do the semantics 
of RDF allow for that?

- David

Received on Sunday, 6 February 2005 18:18:52 UTC