Subject: [xsl] Re: XSLT 3.0: The definition of the "unnamed mode" From: "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Fri, 2 Jan 2015 22:24:44 -0000 |
I agree, this definition is not a very good one. It's a relic of when the unnamed mode was always the default mode. A better definition might be: "There is a mode, called the unnamed mode, that has no name. The properties of the unnamed mode may be defined using an xsl:mode declaration with an absent name attribute. The unnamed mode is the default mode for an xsl:apply-templates or xsl:template element with no mode attribute, unless a different mode is nominated as the default using an [xsl:]default-mode attribute." Michael Kay Saxonica mike@xxxxxxxxxxxx +44 (0) 118 946 5893 On 27 Dec 2014, at 19:04, Dimitre Novatchev <dnovatchev@xxxxxxxxx> wrote: > In the 2nd Last Call of the W3C XSLT 3.0 specification, section "6.6.1 > Declaring Modes" defines "unnamed mode" thus: > > "[Definition: The unnamed mode is the default mode used when no mode > attribute is specified on an xsl:apply-templates instruction or > xsl:template declaration, unless a different default mode has been > specified using the [xsl:]default-mode attribute of a containing > element.]" > > I find this definition rather confusing, because the undefined term > "default mode" is used and because this term seems undistinguishable > from two other terms used in the definition: "different default mode" > and "[xsl:]default-mode attribute". > > > > To summarize, this definition seems (endless) recursive, having not > specified the term "default mode" on which it is based. > > > I believe that a definition that more precisely defines the "unnamed > mode" could be something like this: > > 1. A mode defined in an xsl:mode declaration (the one with highest > import precedence) that has no "name" attribute specified, or > > 2. If there is no xsl:mode without a "name" attribute, then a mode > that is defined by an (implicit) xsl:mode declaration without any > attributes. > > 3. The unnamed mode defined in 1. and 2. above is used as the value of > the "mode" attribute of any "xsl:template" or "xsl:apply-templates" > that have no "mode" attribute specified, unless these are in the scope > of an "[xsl:]default-mode" attribute, in which case the mode specified > in the (innermost) "[xsl:]default-mode" attribute is used as the value > for their "mode" attribute. > > > Any thoughts, please? > > > > -- > Cheers, > Dimitre Novatchev
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Re: XSLT 3.0: Question about , Dimitre Novatchev dn | Thread | [xsl] Re: XSLT 3.0: The definition , Dimitre Novatchev dn |
[xsl] Re: XSLT 3.0: Question about , Michael Kay mike@xxx | Date | [xsl] Re: XSLT 3.0: Question about , Dimitre Novatchev dn |
Month |