|
Subject: Re: [xsl] Easy way to identify node type? From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx> Date: Thu, 04 Dec 2003 11:54:21 -0500 |
Is there an easy way (or any way at all) to identify the type of the node being processed?
<xsl:choose>
<xsl:when test="self::book:fig"> <!--display caption-->
<xsl:text>book:fig: </xsl:text><xsl:value-of select="."/>
</xsl:when>
<xsl:when test="self::*"> <!--an element-->
<xsl:text>Element: </xsl:text><xsl:value-of select="."/>
</xsl:when>
<xsl:when test="self::text()"> <!--show text-->
<xsl:text>Text: </xsl:text><xsl:value-of select="."/>
</xsl:when>
<xsl:when test="self::comment()"> <!--reveal comment-->
<xsl:text>Comment: </xsl:text><xsl:value-of select="."/>
</xsl:when>
<xsl:when test="self::processing-instruction()"> <!--pi-->
<xsl:text>PI: </xsl:text><xsl:value-of select="."/>
</xsl:when>
<xsl:when test="count(.|/)=1"> <!--root-->
<xsl:text>root </xsl:text>
</xsl:when>
<!--specific namespaced-unqualified attribute-->
<xsl:when test="count(.|../@version)=count(../@version)">
<xsl:text>version attribute </xsl:text>
</xsl:when>
<!--specific namespace-qualified attribute-->
<xsl:when test="count(.|../@book:ref)=count(../@book:ref)">
<xsl:text>book:ref attribute </xsl:text>
</xsl:when>
<!--any namespace-qualified attribute-->
<xsl:when test="count(.|../@book:*)=count(../@book:*)">
<xsl:text>book:* attribute </xsl:text>
</xsl:when>
<!--any attribute-->
<xsl:when test="count(.|../@*)=count(../@*)">
<xsl:text>attribute </xsl:text>
</xsl:when>
<!--specific namespace-->
<xsl:when test="count(.|../namespace::xsl)=
count(../namespace::xsl)">
<xsl:text>XSL namespace </xsl:text>
</xsl:when>
<!--any namespace-->
<xsl:when test="count(.|../namespace::*)=
count(../namespace::*)">
<xsl:text>namespace </xsl:text>
</xsl:when>
</xsl:choose>-- Next public European delivery: 3-day XSLT/2-day XSL-FO 2004-01-?? Instructor-led on-site corporate, government & user group training for XSLT and XSL-FO world-wide: please contact us for the details
G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/ Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995) ISBN 0-13-065196-6 Definitive XSLT and XPath ISBN 0-13-140374-5 Definitive XSL-FO ISBN 1-894049-08-X Practical Transformation Using XSLT and XPath ISBN 1-894049-11-X Practical Formatting Using XSL-FO Member of the XML Guild of Practitioners: http://XMLGuild.info Male Breast Cancer Awareness http://www.CraneSoftwrights.com/s/bc
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] Easy way to identify node typ, yguaba | Thread | RE: [xsl] Easy way to identify node, Haydn Flower |
| Re: [xsl] SAXON url and relative UR, David Carlisle | Date | Re: [xsl] \, David Carlisle |
| Month |