This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: select all elements except root


> I am a novice user.
> I am using <xsl:template match="*"> tag to iterate through
> all my elements
> which includes root element also.

Actually <xsl:template> does not iterate through anything. It matches
things, provided there is an <xsl:apply-templates/> that is iterating
through them. To avoid matching the outermost element, one simple approach
is to avoid selecting it:

<xsl:template match="/">
  <xsl:apply-templates select="*/*"/>
</xsl:template>

Another approach is to match it with a different template rule of higher
priority:

<xsl:template match="/*"/>

> But I don't want to select root element.

We're all assuming that by "root element" you mean the outermost element
node. Terminology is treacherous here: the XML spec calls this the "root or
document element", but neither of the terms "root element" or "document
element" is used in the XPath model, and the "root" is something different -
it is the node that represents the document itself, which is the parent of
the outermost element node.

Michael Kay
Software AG
home: Michael.H.Kay@ntlworld.com
work: Michael.Kay@softwareag.com


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]