This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: nodes order in union
- From: "Oleg Tkachenko" <olegt at multiconn dot com>
- To: <xsl-list at lists dot mulberrytech dot com>
- Date: Sat, 17 Nov 2001 20:14:08 +0200
- Subject: RE: [xsl] nodes order in union
- Reply-to: xsl-list at lists dot mulberrytech dot com
Hello philippe!
> <xsl:template match="child::node() | attribute::*" mode="copie">
> <xsl:copy>
> <xsl:apply-templates select="@*|node()"
> mode="copie"/>
> </xsl:copy>
>
> </xsl:template>
>
> no error happens, and the copy is quite correct.
>
> Is the XSLT processor (Saxon, actually) cleaver enougth to process the
> nodes in right order ? Or is there somewhere in Xpath or XSLT a rule
> which says that in this particulary case, union must yield a node-set
> where attributes are located before other nodes (I can't find it)?
It's clear Saxon is very clever, but fortunately to others, "cleaver" processors :) there is distinct spec definition for this case.
<xsl:apply-templates> processes nodes in document order, see http://www.w3.org/TR/xpath#dt-document-order and according to that order "The attribute nodes and namespace nodes of an element occur before the children of the element.".
---
Oleg Tkachenko,
Multiconn International, Israel
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list