Subject: Re: [xsl] ancestor axis order From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx> Date: Tue, 04 May 2004 07:22:18 -0400 |
Given XML such as ... I need to determine, for each <ref/> child, whether there is a <choice/> ancestor prior to the <define/> Ancestor.
for the example above, references should be 'no' and scope should be 'yes'
T:\ftemp>type david.xml <define name="report"> <element> <name ns="">report</name> <group> <group>
<group> <group> <group> <group> <group> <ref name="issues"/> <ref name="vision"/> </group> <ref name="goals"/> </group> <ref name="scope"/> </group> <ref name="tasks"/> </group> <ref name="assessment"/> </group>
<choice> <empty/> <ref name="references"/> </choice> </group> <ref name="owner"/> </group> </element> </define>
T:\ftemp>type david.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=".//ref"> <xsl:element name="{@name}"> <xsl:choose> <xsl:when test="ancestor::choice/ancestor::define"> <xsl:attribute name="required">no</xsl:attribute> </xsl:when> <xsl:otherwise> <xsl:attribute name="required">yes</xsl:attribute> </xsl:otherwise> </xsl:choose> </xsl:element> </xsl:for-each> </xsl:template>
</xsl:stylesheet> T:\ftemp>saxon david.xml david.xsl <?xml version="1.0" encoding="utf-8"?> <issues required="yes"/> <vision required="yes"/> <goals required="yes"/> <scope required="yes"/> <tasks required="yes"/> <assessment required="yes"/> <references required="no"/> <owner required="yes"/> T:\ftemp>
-- Public courses: Spring 2004 world tour of hands-on XSL instruction Each week: Monday-Wednesday: XSLT/XPath; Thursday-Friday: XSL-FO
World-wide on-site corporate, govt. & user group XML/XSL training. 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) Male Breast Cancer Awareness http://www.CraneSoftwrights.com/s/bc Legal business disclaimers: http://www.CraneSoftwrights.com/legal
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] ancestor axis order, David Carlisle | Thread | Re: [xsl] ancestor axis order, David Rosenborg |
Re: [xsl] Retrieving the position o, David Carlisle | Date | Re: [xsl] ancestor axis order, David Carlisle |
Month |