Re: Query Language Issues (realization, rules->descriptions)

From: Dan Connolly (connolly@w3.org)
Date: 11/15/01


Ian Horrocks wrote:
[...]
> this of course makes the query language much less
> expressive - in a certain sense, it then just becomes a fancy "user
> interface" for our old friend realisation (tell me the members of
> class C).

I find that pretty appealing, really.

I'm most interested in general-purpose RDF query and rules stuff;
I've been wondering what a "DAML+OIL query language" would look
like if it weren't a general-purpose RDF query langauge.
The above is a pretty satisfying bumper-sticker description
for a DAML+OIL query language.


> The additional point regarding cycles can be summarised as
> follows. When there are no cycles in the non-distinguished variables,
> queries can easily be "collapsed" into a single class and answered
> using our standard reasoning services, e.g., a query of the form:
> 
> (x) <- Q(x,y) ^ R(y,z) ^ S(z,w)
> 
> can be reduced to:
> 
> (x) <- C(x)
> 
> where C is the class (hasClass Q (hasClass R (hasClass S
> Thing))). Note that (an extended version of) the technique can still
> be used when there are n distinguished variables.

That sorta appeals to me, but after scratching my head
for a few minutes, I don't quite get it.

I would very much appreciate a tutorial on rewriting horn
clauses as DAML+OIL descriptions.

The tools I use (http://www.w3.org/2000/10/swap/) are pretty
much rules-based, but I'm making an effort, lately, to replace
application-specific rules ala:

  { :n1 a rm:external} log:implies
     { :n1 dot:color "grey5"; dot:shape "plaintext"}.

with rules to capture DAML+OIL:

  # hasValue
  { :s a [ ont:onProperty :p; ont:hasValue :o ] }
    log:implies { :s :p :o }.

and facts written in the DAML+OIL vocabulary:

  _:doesAnnoProto ont:onProperty rm:prototypes; ont:hasValue
:annoteaProtocol.
  psum:AnnoteaClient u:subClassOf _:doesAnnoProto.
  psum:AnnoteaService u:subClassOf _:doesAnnoProto.


but it takes significant mental energy to think this way,
and I'm only able to do it in simple cases.



-- 
Dan Connolly, W3C http://www.w3.org/People/Connolly/


This archive was generated by hypermail 2.1.4 : 04/02/02 EST