W3C home > Mailing lists > Public > www-rdf-interest@w3.org > August 2002

Re: CWM Question

From: Sean B. Palmer <sean@mysterylights.com>
Date: Tue, 20 Aug 2002 18:00:36 +0100
Message-ID: <032301c2486b$1cb01ec0$e0550150@localhost>
To: "Paul Prescod" <paul@prescod.net>
Cc: <www-rdf-interest@w3.org>

> >    this log:forAll :p, :q, :x, :z .
> >    { :x :p :z . :q = :p } => { :x :q :z } .
> >
> > but CWM does not have any built in rules that it always applies.
>
> Then of what value is the "=" operator and daml:equivalentTo
> predicate property?

It's of great value when you have the rule to cope with it. There are
hundreds of rules like this for the properties and classes in RDF, RDFS,
and DAML. Check out:-

http://infomesh.net/2001/05/rdflint/rules.n3

Sometimes, when you apply these rules to a medium sized document, you end
up with five-to-ten times the triples that you started out with, including
":x a :Resource" for every term :x in the document. Sometimes it is useful
to derive every single triple that you can from a document: for example,
the rules.n3 file above was produced for an RDF "validation" system.
However, normally it's just annoying. You shouldn't use more triples than
you can get away with, because it's a waste of data, and makes things
difficult to read.

In your case, you do want to use a special rule that makes use of the
daml:equivalentTo/= property, so all you do is put it in the document and
get CWM to --think about it. It could be possible to rig a version of CWM
to always apply some pre-defined user rules for every session, so perhaps
that's worth investigating. Personally, after more than a year's worth of
experience with CWM, I'd find it difficult to whittle it down to a handful
of rules that I always want it to apply.

[...]
> {:a :someprop :b} log:implies {:a log:outputString "someprop\n"}.
> {:a :someotherprop :b} log:implies {:a log:outputString
> "someotherprop\n"}.
>
> If both lines are true wouldn't I be guaranteed to get both
> outputStrings?

Well, it depends upon the exact semantics of log:outputString. In fact, the
property is one of many "magic" properties in CWM that are inconsistent
with certain rules about equivalence, so really anything is possible. Take
properties such as log:uri, log:rawType, and log:outputString with a pinch
of salt!

--
Kindest Regards,
Sean B. Palmer
@prefix : <http://purl.org/net/swn#> .
:Sean :homepage <http://purl.org/net/sbp/> .
Received on Tuesday, 20 August 2002 13:00:41 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:55 GMT