- From: Hassan Ait-Kaci <hak@ilog.com>
- Date: Mon, 22 Sep 2008 19:28:39 -0700
- To: "harold boley" <Harold.Boley@nrc-cnrc.gc.ca>
- Cc: "RIF WG" <public-rif-wg@w3.org>
- Message-ID: <9FC9C6B2EA71ED4B826F55AC7C8B9AAB01F336A4@mvmbx01.ilog.biz>
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/HassanAitKaci
Received on Tuesday, 23 September 2008 02:30:34 UTC