- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Fri, 19 Oct 2007 05:12:56 -0400 (EDT)
- To: public-rif-comments@w3.org
Questions and Comments on RIF Basic Logic Dialect
(undated version, downloaded 15 October 2007)
Peter F. Patel-Schneider
I have a number of questions and comments (mostly questions) on the RIF
Basic Logic Dialect document. Answers to the questions may result in
further comments.
I downloaded the document on 15 October 2007, which should have gotten
me the frozen version.
1/ The presentation of the RIF Condition Language is made unnecessarily
complex by its division into two parts. I suggest presenting the
language all at once.
2/ The RIF Condition Language has a very complex syntax. However, the
condition sublanguage of the RIF BLD does not use this complexity.
I suggest removing the development of the RIF Condition Language and
instead just presenting the condition sublanguage of the RIF BLD.
Alternatively, but less desirable in my mind, would be to present the
RIF Condition Language in an appendix.
3/ Why is it obvious that different symbol spaces cannot share an
identifier?
4/ Why are built-in derived XSD datatypes like xsd:int not required RIF
symbol spaces? Why is xsd:integer the only derived datatype in
required RIF symbol spaces? Why are xsd:date, xsd:boolean,
xsd:float, and several other built-in primitive XSD types not in the
required RIF symbol spaces? I suggest expanding the required RIF
symbol spaces to cover all the useful built-in XSD datatypes.
5/ How do the intended meanings for rif:iri and rif:local affect the
semantics of the condition sublanguage of the RIF-BLD?
6/ Following the pointer to the list of builtin predicates in the
W3C-style version of the document results in a 404 error.
7/ What is the arity of the builtin symbol
http://www.w3.org/2005/xpath-functions#Imadethisup ?
8/ Where are the semantics for the builtin predicates?
9/ Since the condition sublanguage for RIF-BLD can distinguish between
individual symbols, predicate symbols of each arity, and function
symbols of each arity by context, why not include this distinction in
the presentation syntax?
10/ Is it true that disjunction can be eliminated in *all* rule
formalisms (including operational ones)?
11/ Is the restriction in the condition language of the RIF-BLD relating
to the appearance of quantified variables carried over into the RIF
condition language?
12/ Why do constant symbols used (only) as predicate and function
symbols
have to have a denotation in the model theory for the condition
language of RIF-BLD?
13/ Why are mappings for predicate symbols (IR) partial? What happens
in the semantics for predicate applications that are not in the
domain of the predicate?
14/ Why is the treatment of datatypes different in RIF from their
treatment in RDF? I suggest using the same treatment.
15/ It is not really the case that slotted terms have "named" arguments,
because the argument "names" are interpreted. Instead slotted terms
have paired, unordered arguments. I suggest using some other
wording.
15a/ Is t() a slotted term or a regular term?
16/ Why is "assumed" used in the definition of signatures for slotted
terms? Either the order is immaterial or it is not.
17/ Why are the first part of the arguments to slotted terms not allowed
to be slotted terms?
18/ Suppose that name and age are constant symbols with the same
signature, e.g., term{}. Then either both or neither of
Person(name->"a") and Person(age->"a") are well-formed. Why cannot
signatures make a distinction between these two terms? Most
languages that allow named arguments can make these distinctions.
19/ Why are the signatures of the terms used in membership, subclass,
and frame formulae not used to determine the well-formedness of
these formulae?
20/ Why are slotted well-formed terms not allowed in membership,
subclass, or frame formulae?
21/ Why are frame formulae that include other frame formulae part of the
basic syntax? They are stated to be shorthand, but only
half-defined as such. Why not make them really into shorthands?
22/ It appears that the signature mechanism cannot capture the syntax of
the condition language of the RIF-BLD. Is this the case?
23/ Are the mappings for ISF, etc., total or partial?
24/ It is not just that slotted function and predicate applications can
have the first element of their pair arguments map into the same
domain element, it is also the case that these first elements can be
repeated verbatim, as in married(spouse->Jack,spouse->Jill) or even
married(spouse->Jack,spouse->Jack).
25/ The use of set notation in the definition of Itruth for slotted
function and predicate applications is unfortunate, as these are
bags, not sets.
26/ V*U and V*PL turn RDF names into constant symbols in symbol spaces.
V*TL is defined as turning RDF names into constant symbols not in a
symbol space, but later constant symbols that look like the result
of V*TL given as if they were in a symbol space. What is the status
of V*TL? (I'm assuming that it does map into a symbol space.)
27/ Given that RIF-RDF combinations need datatypes, why not just only
define the combination for D-entailment?
28/ Point 4 of common interpretations is not very well stated. What is
the set of datatypes used? Is it all the datatypes in D?
29/ RIF-RDF combinations appear to add extra entailments on the RDF
side. For example
"abc"^^xsd:decimal ex:a ex:b .
appears to RIF-RDF entail
http://www.w3.org/2005/rif/rdf-ill-typed-literal/uri-encode("abc"^^xsd:decimal)
ex:a ex:b .
I don't think that this is a good idea, and suggest that it should
be the case that RIF-RDF entailment matches RDF D-entailment when
there are no rules.
30/ Why is rdf:type is not related to membership formulae (i#c) and
rdfs:subClassOf not related to subclass formulae (c1##c2)? I
suggest that they should be related.
Here are some grammatical and wording comments:
2.1: syntax, which -> syntax which
2.1.1.1: Exists, auxiliary -> Exists, and auxiliary
2.1.1.2: signature, which -> signature which
Received on Friday, 19 October 2007 09:19:54 UTC