W3C home > Mailing lists > Public > public-rif-wg@w3.org > November 2008

SWC review

From: Chris Welty <cawelty@gmail.com>
Date: Sun, 09 Nov 2008 00:52:14 -0500
Message-ID: <49167A8E.5080800@gmail.com>
To: "Public-Rif-Wg (E-mail)" <public-rif-wg@w3.org>


REview of http://www.w3.org/2005/rules/wiki/SWC from 11/8/08
This constitutes a review only of sections 1-3.  I'm actually supposed to review 
rdf:text.

I fixed a few typos directly in the text.

---
Section 3 intro contains this example:

_:x ex:hasName "John" .
Forall ?x ?y ( ?x[rdf:type -> ex:named] :- ?x[ex:hasName -> ?y] )
Forall ?x ?y ( <http://a>[<http://p> -> ?y] :- ?x[ex:hasName -> ?y] )

|=

Exists ?z ( And( ?z[rdf:type -> ex:named]  <http://a>[<http://p> -> ?z] ))
<http://a>[<http://p> -> "John"]


However, the second conjunct in the exists is not entailed.  The following is:
Exists ?z ?y ( And( ?z[rdf:type -> ex:named]  <http://a>[<http://p> -> ?y] ))

But in face of the ground formula, it seems superfluous, unless you want to make 
a point about existential generalization.  I'd suggest:
Exists ?z ( ?z[rdf:type -> ex:named])
<http://a>[<http://p> -> "John"]


---
Section 3.1.3 Datatypes and Typed Literals

"When checking consistency of a combination < R,S> or entailment of a graph S or 
RIF formula φ by a combination < R,S>, the set of considered datatypes is the 
union of the set of RIF-required datatypes and the sets of datatypes used in R, 
the documents imported into R, and φ (when considering entailment of φ). "

and then later: "There may be datatypes used in an RDF graph in the combination 
that are not included in such a datatype map. "

I think this requires more explanation, it simply begs the question why aren't 
the dataypes in S part of the considered ones & the datatype map.  The text 
seems to require that if you have an RDF graph in a combination that uses a 
datatype outside of DTB, then there has to be a rule specifically about it.  The 
text says, "the set of considered datatypes is the union of the set of 
RIF-required datatypes and the sets of datatypes used in R...".  Of course "used 
in" is not formally defined, I'm taking it to mean referenced directly in a 
rule, which seems like an odd requirement - you can only combine graphs with 
rules if you have a rule about every datatype in the graph outside DTB. 
However, I supposed "used in" could be interpreted as meaning "understood by any 
rule engine processing rules in R" and then q.v. conformance.

Really, just as with a ruleset that uses datatypes outside DTB, you just want to 
be sure the implementation knows about the datatypes in the graph. Can we just 
dispense with the "considered datatypes" bit altogether and take the conformance 
route used in BLD?  Was this in there because of ill-typed literals?

...reading on, in 3.2.1.2 Common RIF-RDF Interpretations we have:

"LV is a superset of (union of the value spaces of all considered datatypes); "

So I guess the problem is how to define LV.  Again, can we handle this in the 
BLD style wrt some sort of conformance?

---

3.2.1.2 Common RIF-RDF Interpretations

"2. IP is a superset of the set of all k in Dind such that there exist some a, b 
in Dind and Itruth(Iframe(a)(k,b))=t; "

Why is IP is a *superset* of all frame "slots"? You say "Condition 2 ensures 
that the set of RDF properties at least includes all elements that are used as 
properties in frames in the RIF domain." however it does not require that all 
rdf properties are interpreted as "slots"?

2 also seems odd because it mixes interpretations and truth valuation.  What if 
I have a k such that for all a,b Itruth(Iframe(a)(k,b))=f?  Then it isn't 
defined to be in IP.  In fact, the explanation of condition 2 may not be quite 
accurate, e.g, a deBruijnian sentence:

Forall ?x ?y ( 1=2 :- ?x[ex:never -> ?y] )

ex:never is "used as a property" in a frame, even though it can't be true for 
anything.

Maybe this is why IP is a superset (?), but still there is nothing that tells me 
that ex:never is a property in this case.

Why not something like:

RIF-I(o[a1->v1 ... ak->vk]) = RDF-I(o a1 v1. o a2 v2. ... 0 ak vk.)

I have a vague memory of having discussed this before...apologies if I'm 
dredging up something we figured out already.

-Chris

-- 
Dr. Christopher A. Welty                    IBM Watson Research Center
+1.914.784.7055                             19 Skyline Dr.
cawelty@gmail.com                           Hawthorne, NY 10532
http://www.research.ibm.com/people/w/welty
Received on Sunday, 9 November 2008 05:52:52 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:33:58 GMT