[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Re: [xsl] XSLT 3.0: Question about the rules for handling duplicate declarations of static variables
Subject: Re: [xsl] XSLT 3.0: Question about the rules for handling duplicate declarations of static variables From: "Dimitre Novatchev dnovatchev@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Sun, 23 Nov 2014 17:45:58 -0000 |
> The intended meaning of the phrase is "The value of the variable must not be a sequence one of whose items is a function", or perhaps more formally, if $V is the value of the variable then the expression > > some $v in $V satisfies $v instance of function(*) > > must be false. > > This is because it is not possible to determine whether two functions are "the same" > Yes, makes perfect sense now. And this limitation is only for the case of name conflict with another static variable that precedes the current static variable in stylesheet-tree order, otherwise, if there is no such conflict, the value of a static variable/parameter is allowed to be a sequence containing a function, is this correct? Cheers, Dimitre On Sun, Nov 23, 2014 at 2:43 AM, Michael Kay <mike@xxxxxxxxxxxx> wrote: > Actually, it should say "functions" rather than "function items" since XDM 3.0 renamed function items as functions. > > The intended meaning of the phrase is "The value of the variable must not be a sequence one of whose items is a function", or perhaps more formally, if $V is the value of the variable then the expression > > some $v in $V satisfies $v instance of function(*) > > must be false. > > This is because it is not possible to determine whether two functions are "the same" > > Michael Kay > Saxonica > mike@xxxxxxxxxxxx > +44 (0) 118 946 5893 > > > > > On 22 Nov 2014, at 22:04, Dimitre Novatchev dnovatchev@xxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > >> In section 9.6 "Static Variables and Parameters" of the 2nd Last Call >> of the XSLT 3.0 specification, >> (http://www.w3.org/TR/2014/WD-xslt-30-20141002/#static-params), the >> second of the two additional constraints listed, says: >> >> "... and (b) if the variables are initialized (that is, if the >> elements are xsl:variable elements, or if they are xsl:param elements >> and no value for the parameter is externally supplied) then the values >> of both variables must be identical, and must not contain function >> items." >> >> It is not clear to me what is the exact meaning of the phrase "must >> not contain function items". I see several possible meanings: >> >> 1. Must not contain references to functions. (This seems unlikely, >> because a static expression can contain references to functions -- but >> maybe just in the case of static variables conflict this is >> forbidden?) >> >> 2. Must not contain references to any <xsl:function> (an xsl-function >> only, not any function) >> >> 3. Must not contain a definition of an inline function-item. >> >> Could someone, please, specify which of these three possible meaning >> is intended in the above phrase, or if none, then what is the intended >> meaning of this phrase? >> >> -- >> Cheers, >> Dimitre Novatchev
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] XSLT 3.0: Question about , Michael Kay mike@xxx | Thread | Re: [xsl] XSLT 3.0: Question about , Michael Kay mike@xxx |
Re: [xsl] XSLT 3.0: Question about , Michael Kay mike@xxx | Date | Re: [xsl] XSLT 3.0: Question about , Michael Kay mike@xxx |
Month |
Keywords