- From: Christian De Sainte Marie <csma@fr.ibm.com>
- Date: Fri, 22 Oct 2010 11:43:06 -0400
- To: Gary Hallmark <gary.hallmark@oracle.com>
- Cc: public-rif-wg@w3.org, sandro@w3.org
- Message-ID: <OFFA2D2A41.D1915CFD-ONC12577C4.004F2B69-852577C4.0056584B@fr.ibm.com>
Hi Gary,
Gary Hallmark <gary.hallmark@oracle.com> wrote on 21/10/2010 18:25:36:
>
> the following suggests that the slot name may only be a literal string:
> 1. For all the [nodes]XDM e ? E,
Itruth(Iframe(IDM(e))(IC("expr"^^xs:string),
> RIFValue(e, expr))) = t (true) for any well-formed XPath expression,expr
> , for which RIFValue(e, expr) is defined;
I see: "Ic" makes the difference, in the clause.
I mean, the clause is about the interpretation of "expr"^^xs:string,
Ic("expr"^^xs:string), not the (literal) constant itself.
By definition of fn:concat, Ic(fn:concat("ex" "pr")) = Ic("expr") (for
instance).
> Another problem with using strings for xpaths is that any typo in
> the xpath is still a string, and is therefore syntactically valid,
> but will give unexpected results. Therefore I suggest again that we
> use a new symbol space, e.g. rif:xpath, rather than overloading
xs:string.
I see your point.
On the other hand, under the translation paradigm, that may not that much
a problem: if there is a typo, either your original rule was wrong or your
translator has a bug; in either case, it is not RIF's problem. I mean:
garbage in, garbage out!
Do we want RIF to allow this kind of checks? Personally, I do not think
so. I fear a dangerous slope (remember the discussion about rule language
VS rule interchange format?): if we want to go in that direction, using
XPath/XSD-CD expressions as strings is only a little part of the issue
(e.g. the slot in your frame is an IRI and there is a typo: syntactically
valid, unexpected results. Oh, ok, that's a slightly different problem
:-).
In any case, changing the spec, at this point, to introduce a new symbol
space such as rif:xpath (actually, we would need two: rif:xpath and
rif:xsd-cd) would not be practical.
I propose that we add the following editor's notes in section 2.1 (I added
them already, actually):
Editor's Note: Alternatively, an additional symbol space, rif:xpath, could
be added to RIF built-in data types: in that case, XPath expressions would
be represented as rif:xpath constants.
and
Editor's Note: Alternatively, an additional symbol space, rif:xsd-cd,
could be added to RIF built-in data types: in that case, XSD-CD
expressions would be represented as rif:xsd-cd constants.
Would that be enough at this point?
Cheers,
Christian
IBM
9 rue de Verdun
94253 - Gentilly cedex - FRANCE
Tel./Fax: +33 1 49 08 29 81
Sauf indication contraire ci-dessus:/ Unless stated otherwise above:
Compagnie IBM France
Siege Social : 17 avenue de l'Europe, 92275 Bois-Colombes Cedex
RCS Nanterre 552 118 465
Forme Sociale : S.A.S.
Capital Social : 612.509.964 ?
SIREN/SIRET : 552 118 465 03644
Received on Friday, 22 October 2010 15:43:46 UTC