[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

[xsl] XSLT 3.0: Conflicting information about the possible parents of


Subject: [xsl] XSLT 3.0: Conflicting information about the possible parents of <xsl:context-item>
From: "Dimitre Novatchev dnovatchev@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 24 Dec 2014 18:50:25 -0000

In the 2nd Last Call of the XSLT 3.0 specification, section "10.1.1
Declaring the Context Item for a Template"
(http://www.w3.org/TR/2014/WD-xslt-30-20141002/#element-context-item)
defines an <xsl:context-item> in this way:

 "The xsl:context-item element is used as a child of xsl:template, to
declare the required type of the context item."

However, in Section "6.6.1Declaring modes"
(http://www.w3.org/TR/2014/WD-xslt-30-20141002/#declaring-modes)  (as
per my previous message), we find this text, referring to an
<xsl:mode> declaration:

"The above rules apply both to the attributes (other than name) of the
xsl:mode element itself, and to the attributes of the contained
xsl:context-item element if present."

So, this states that an <xsl:context-item> can be a child not only of
an <xsl:template>, but also of <xsl:mode>.

This evidence is further confirmed by the code example, contained in
section "2.9 Stylesheets and XML Schemas"
(http://www.w3.org/TR/2014/WD-xslt-30-20141002/#stylesheets-and-schemas):

"Example: Asserting the Required Type of the Source Document

<xsl:mode typed="lax">
  <xsl:context-item use="required"
                    as="document-node(schema-element(my:invoice))"/>
</xsl:mode>"


Based on these facts, I believe that the document needs to be
corrected to provide non-conflicting and unambiguous information about
all possible parents of <xsl:context-item> and its use as a child of
each of these parents.


-- 
Cheers,
Dimitre Novatchev


Current Thread
Keywords