- From: Sean B. Palmer <sean@mysterylights.com>
- Date: Tue, 20 Aug 2002 18:00:36 +0100
- 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 UTC