[Home] [By Thread] [By Date] [Recent Entries]
At 2003-12-04 14:23 -0200, yguaba@xxxxxxxxxxxx wrote:
Is there an easy way (or any way at all) to identify the type of the node being processed? Yes, there is a way for all seven kinds of node. This is described on pages 188-189 of the paper rendition of our XSLT book published by Prentice Hall, or pages 192-193 of the Tenth Edition of the PDF rendition of our book that we publish (Eleventh edition, last for XSLT 1.0, coming hopefully soon!): <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>I hope this helps. .......... Ken -- 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 XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|

Cart



