Subject: Re: [xsl] xpath help? From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx> Date: Wed, 09 Jul 2003 13:53:01 -0400 |
How do I get all possible sizes from the following XML using only one xPath given the criteria of ot[@id = 2 or @id = 3] and ct[@id = 1]?
so, I'd want size id's = (2,4)??
T:\ftemp>type tomsic.xml <hls> <hl> <ots> <ot id="2"/> <ot id="3"/> </ots> <cts> <ct id="1"/> <ct id="5"/> </cts> <sizes> <size id="2"/> <size id="4"/> </sizes> </hl> <hl> <ots> <ot id="2"/> <ot id="4"/> </ots> <cts> <ct id="2"/> <ct id="5"/> </cts> <sizes> <size id="3"/> <size id="8"/> </sizes> </hl> </hls>
T:\ftemp>type tomsic.xsl <?xml version="1.0" encoding="iso-8859-1"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/"> <xsl:for-each select="//size[ancestor::hl[ots/ot[@id = 2 or @id = 3] and cts/ct[@id = 1] ] ]"> <xsl:if test="position()!=1">,</xsl:if> <xsl:value-of select="@id"/> </xsl:for-each> </xsl:template>
</xsl:stylesheet> T:\ftemp>saxon tomsic.xml tomsic.xsl 2,4 T:\ftemp>
-- Upcoming hands-on courses: in-house corporate training available; North America public: XSL-FO Aug 4,2003; XSLT/XPath Aug 12, 2003
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] xpath help?, Paul Tomsic | Thread | Re: [xsl] xpath help?, Rick Taylor |
[xsl] xpath help?, Paul Tomsic | Date | Re: [xsl] xpath help?, Rick Taylor |
Month |