Re: DAML+OIL for queries

What N3 does is to use RDF (including RDF+OIL) as queries.
A simple query, as you suggest, can be just a DAML expression to match.
You need a way of clarifying which are variables.

More comples queries need plain DAML to be extended to contain
nested formulae. The N3 experiment was aimed at seeing whther you could
smoothly integrate forumlae on top of DAML and it seems to work.
But you might decide you prefer to switch to lisplike syntax as it gets more
formula-like and less data-like.

tim

----- Original Message -----
From: "Jonas Liljegren" <jonas@rit.se>
To: "Dave Reynolds" <der@hplb.hpl.hp.com>
Cc: <www-rdf-logic@w3.org>; "Wraf development" <rdf@uxn.nu>
Sent: Friday, March 02, 2001 1:15 PM
Subject: Re: DAML+OIL for queries


> I would first like to apology for my confused posting.  I should have
> hold back one day more.  My understanding of DAML is now much better.
>
>
>
> I have now found that searches can be done by defining a class.  The
> search result will be the resources belonging to that class.
>
>
> One search form I am experimenting with is intended for finding object
> bleonging to one or more of the selected classes.
>
> In hidden fields in the search form, I put statements equivalent of:
>
>       <Class rdf:resource="#gen1 daml:unionOf="#gen2" />
>
>
> And the list of searchable classes, using Template Toolkit (for Perl),
> simplified:
>
>
> [% FOREACH type = types %]
>    <p><input type="checkbox"
>              name="li_subj #gen2"
>              value="[% type.uri %]"  />
>
>       [% type.label.value %]
>    </p>
> [% END %]
>
>
>
> On Submit, the new statements is inserted in the RDF space.  The
> container content is determined by the chosed checkboxes.
>
>
> The search result page simply views the objects for the class #gen1,
> simplified:
>
> <ul>
> [% FOREACH object = query.rev_type.list %]
>   <li>
>       [% object.label.value %]
>   </li>
> [% END %]
> </ul>
>
>
>
>
> I guess that this will work for any type of search criterions.  I
> think that I can find a way to include substring searches by just
> creating dynamic substring properties for the resources.
>
>
> All this, within the Wraf project:
>
>         http://uxn.nu/wraf/
>
>
>
> The templates above are a temporary solution.  We will later crate a
> presentation layer in RDF using semantic presentation components, as a
> part of the agent/server conversation (session) context.
>
>
>
>
> Dave Reynolds <der@hplb.hpl.hp.com> writes:
>
> > > Has anyone here a suggestions on how to write those descriptions?
> > > You basicly have to insert a way to add ORs and NOTs.  AND is the
> > > default.
> >
> > I may be misunderstanding the question but while "AND" is sort-of the
> > default for the RDF assertions, DAML+OIL is richer.
>
> It seems to me that AND is default also for DAML+OIL.  I read about
> boolean combinations in:
>         http://www.daml.org/2000/12/reference.html#Class
>
>   The class C must be equivalent to the class defined by each of the
>   boolean class expression,
>
> I would have prefered this to be clearer.  But I guess that this means
> that if I have:
>
>       <Class>
>        <unionOf parseType="daml:collection">
>         <Class rdf:resource="#A"/>
>         <Class rdf:resource="#B"/>
>        </unionOf>
>        <intersectionOf parseType="daml:collection">
>         <Class rdf:resource="#C"/>
>         <Class rdf:resource="#D"/>
>        </intersectionOf>
>       </Class>
>
> it would be equivalent to:
>
>     <Class>
>      <intersectionOf parseType="daml:collection">
>       <Class>
>        <unionOf parseType="daml:collection">
>         <Class rdf:resource="#A"/>
>         <Class rdf:resource="#B"/>
>        </unionOf>
>       </Class>
>       <Class>
>        <intersectionOf parseType="daml:collection">
>         <Class rdf:resource="#C"/>
>         <Class rdf:resource="#D"/>
>        </intersectionOf>
>       </Class>
>      </intersectionOf>
>     </Class>
>
>
> Is this correct?
>
>
>
>
> > Taking the approach of treating DAML+OIL as specifying descriptions
> > then the unionOf, intersectionOf, complementOf properties give you
> > AND, OR and NOT. You could generate a description of the things you
> > are trying to retrieve using these properties and then have a
> > reasoner/database retrieve those objects which are instances of your
> > specified class.
>
> Yes. That's what I found out after I actually read the documents and
> examples. :-)
>
> --
> / Jonas Liljegren
>
> The Wraf project http://www.uxn.nu/wraf/
> Sponsored by http://www.rit.se/
>

Received on Tuesday, 6 March 2001 23:14:24 UTC