Comments on Frozen CORE draft

Overall it looks to be in nice shape. Well done for all hard work it has 
taken to get it this far.

Dave

** Issues (generally minor)

[i1] Section 2.1. The example XML syntax lacks any namespace. Should 
indicate that the final XML syntax will have a namespace even if we 
can't assign one in time for WD1. [WD1]

[i2] Since (I assume) the final XML syntax will have a namespace then I 
don't think DTD's are a sufficient mechanism for validation. Suggest 
dropping the DTD appendix and references to it. [WD1]

[i3] Syntax for primitive sorts. I think the sort name should be a URI 
(with curi format being allowed). For the linear syntax I second Jos' 
suggestion to use NTriple notation of "lex"^^typeURI and Turtle/n3 
notation of "lex"^^prefix:local. I know we agreed this could wait until 
WD2 but the amount of text to change does not look great and I'd be 
prepared to do the edits if that is the only barrier to inclusion of 
such a change in WD1.
   Similarly the "sortal" attributed examples should either use full 
URIs or curi form. [WD1]

[i4] Syntax for Primitive sorts. The section detailing the types integer 
through to dateTime is either too much or too little. We have already 
said these are as defined in "XML Schema part 2: Datatypes" in which 
case that should be just restated in this section. Don't duplicate the 
lexical space descriptions here. [WD1]

[i5] Syntax for Primitive sorts. This section does not specify the 
values space corresponding to the sorts, just the syntax. For the xsd 
types then this already defined and the above change would address this. 
However, the sort "uri" needs more explanation. It appears to be 
intended to be a subsort of xsd:string and so is essentially xsd:anyURI. 
If so then that should be make more clear and perhaps the relation (or 
rather lack of it) between this and the RDF Resources should be 
commented on. Is there intent to have a different sort for RDF/OWL 
resources? [WD2 but I'd like to understand the general intent better 
before WD1 goes out].

[i6] Syntax for Primitive sorts. The charter called for support for 
xsd:int, xsd:decimal etc. Was there a particular reason to change that 
to xsd:integer? I actually think the pair xsd:integer and xsd:decimal 
make more sense but wanted to check the change is deliberate and agreed. 
[WD1]

[i7] Section 3.1. Issue in document concerning rulesets. Could have 
OrderedRuleset and Ruleset with roles "rule" which in the case of 
RuleSet can point to a Forall or an OrderedRuleset. That allows ruleset 
merging whilst preserving partial order when significant. [Not necessary 
for WD1]

[i8] General - human readable syntax. The purpose of the linear/human 
readable syntax seems confused. We need a linear syntax in order to 
write down examples and the semantics. We had agreed this, like the XML 
syntax, would be derivable from the abstract syntax. However, the WD 
seems to be trying to fine tune the linear syntax more than that. Thus 
there is all the role skipping stuff and inconsistencies where roles 
like "if" and "then" are skipped in the linear syntax and not skipped in 
the XML. I think we need to decide if we really mean "human readable 
syntax" or "linear syntax automatically derivable from metamodel" and 
modify the design accordingly. [WD2]

[i9] The notion of the role/stripe-skipped syntax is a problem for 
extensibility that I've commented on before. If the linear syntax is 
intended to really be used (see i8) then I suggest there be a 
non-skipped mechanically derivable linear syntax and then the prettier 
role-skipped version be introduced as a set of *optional* abbreviations 
(i.e. additional productions in the grammar, not as replacements for the 
role-full versions).  [WD2]

** Suggested rephrasing

[s1] Second paragraph of abstract fails to point out the illustrative 
nature of the BNF and XML syntax. Suggest replacing:
   "A human-oriented syntax, an XML syntax, and the semantics of the
   condition language and of the Horn rule language are given."
By:
"A metamodel (expressed using MOF diagrammatic notation) and a semantics 
is given for the condition language and Horn rule language. A concrete 
human-oriented syntax and example XML syntax are also given but these 
are for illustrative and explanatory purposes only."

[s2] Minor. I wonder if "linear syntax" or "linear textual syntax" would 
be a better term than "human readable syntax" throughout the document? 
See [i8].

[s3] You asked for alternatives to the admittedly ugly "webization" 
usage in section 1.
Suggestions:
   - drop "(so-called Webization)"
   - replace "As mentioned, webization of RIF means that URI constants 
can serve.." by
     "Adopting web-architecture principles means that we allow URI 
constants to serve .."

[s4] Section 1. Delete "Tool support for RIF Core is forthcoming".
This is the specification of RIF syntax and semantics, not the place to 
talk about tooling and in any case such tooling will not come from the 
working group (it might come from members of the working group but that 
is different).

[s5] Section 2.1, Syntax for Primitive sorts. The description of 
backslash escaping is either too much or too little. If the linear 
syntax is really just for illustration and not intended for interchange 
then drop this (recommended). If you really want to specify this level 
of detail then you should have a full description of tokenization and 
string escapes (include \\). I would suggest that tokenization issues 
like this and the discussion on white space handling in variables be 
moved to an appended and that string escapes should be described in a 
style such as: http://www.dajobe.org/2004/01/turtle/#sec-strings

[s6] Section 3.1. I'd like to see some provision for metadata attachment 
in the metamodel. I suspect this is not possible for WD1 so suggest 
adding comment:
   "In future working drafts we expect to extend this metamodel to 
include provision for metadata annotations associated with individual 
rules and with rulesets.".

[s7] Sections 4.1 and 4.2. These still have the links to A.4 and A.5. 
I've already requested that those links be removed because the 
discussions there do not yet reflect working group thinking.
Suggest just putting:
   "RIF-OWL[RDF] compatibility will be described here in future working 
drafts".

** Editorial/typo

[e1] Section 1. s/byu/by/

[e2] Section 2.1. The URIs for the the xsd primitive types are 
incorrect. These should be be "http://www.w3.org/2001/XMLSchema#integer" 
etc.

[e3] Section 2.1 first MOF digram. The links from Var and Const to PSort 
should be given role names and cardinalities.

[e5] Section 2.1 SYNTAX. s/stripe-skipping/role-skipping/.
[Stripe skipping concerns the XML syntax, here you are talking about the 
dropping of explicit role names in the BNF and in fact use 
"role-skipped" 4 lines later.]

[e6] Lots of places were the formatting has gone wrong "t,,1" instead of 
subscripts, → appearing in text and so on.

[e7] Syntax for Primitive sorts. In the list of primitive sorts likely 
to be incorporated should add xsd:int (depending on i7) and remove 
duration (or be very explicit that you don't mean xsd:duration here).

[e8] Section 3.1 Metamodel. Delete "(striped)" from "object-oriented 
(striped) abstract syntax".

[e9] Section 3.1 Syntax. s/stripe-skipping/role-skipping/

[e10] The colour coding schemes do not print! Need a different and 
printable typographic convention for commentary.

Received on Saturday, 24 February 2007 17:59:35 UTC