Hi Harold, In http://www.w3.org/TR/rif-bld/#EBNF_for_the_Rule_Language, you define the following rules: UNITERM ::= Const '(' (TERM* | (Name '->' TERM)*) ')' Name ::= UNICODESTRING In that same document, in Example 6 (A RIF condition with named arguments and its XML serialization), you give the following example: And (Exists ?Buyer ?P ( And (?P#cpt:purchase ?P[cpt:buyer->?Buyer cpt:seller->?Seller cpt:item->cpt:book(cpt:author->?Author cpt:title->bks:LeRif) cpt:price->49 cpt:currency->curr:USD])) ?Seller=?Author) where you use CURIE's not UNICODESTRING's. I first thought that you treat the whole sequence of chars such as "cpt:author" as a single lexeme, but in fact you don't because the XML serialization mapping rule uses the structure of the CURIE (e.g., <Name>&cpt;author</Name>). In other words, ':' must (and is) considered a lexical punctuation token (such as we use everywhere else where CURIE's are expected). However, your grammar does not derive CURIE's for Name's but UNICODESTRING's; CURIE's are derived from CONSTSHORT's. Please explain... Thanks. -hak -- Hassan Aït-Kaci * ILOG, Inc. - Product Division R&D http://koala.ilog.fr/wiki/bin/view/Main/HassanAitKaciReceived on Tuesday, 23 September 2008 02:30:34 GMT
This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:33:54 GMT