This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: template match question
- From: "Marrow" <marrow at marrowsoft dot com>
- To: <xsl-list at lists dot mulberrytech dot com>
- Date: Fri, 2 Aug 2002 17:14:58 +0100
- Subject: Re: [xsl] template match question
- Reply-to: xsl-list at lists dot mulberrytech dot com
Hi Sandy,
><xsl:template match="b[c]"/>
Should work - when you say 'fails' what happens... and error message or
unexpected output?
If it is unexpected output then it is possibly due to your stylesheet
encountering built-in rule templates (see
http://www.w3.org/TR/xslt#built-in-rule )
><xsl:template match="b[//c]"/>
Will match a <b> element whenever there is a <c> anywhere in the XML.
Cheers
Marrow
http://www.marrowsoft.com - home of Xselerator (XSLT IDE and debugger)
http://www.topxml.com/Xselerator
-----Original Message-----
From: Sandy McArthur <sandymac@ufl.edu>
To: xsl-list@lists.mulberrytech.com <xsl-list@lists.mulberrytech.com>
Date: 02 August 2002 17:06
Subject: [xsl] template match question
>I'm having trouble figuring out how to have two templates that match the
>same element but differ based on if a child elements exists.
>
>Source fragment:
>
><a>
> <b>
> <c>
> foo
> </c>
> </b>
>
> <b>
> bar
> </b>
></a>
>
>I'm having trouble writing a template match for 'b' when it has a 'c'
>element. Here is what seems logical to me but won't work and any little
>varriation I come up with fails too:
>
><xsl:template match="b[c]"/>
>
>That form seems logical to me because this at least makes the template
>match but how I want it to:
>
><xsl:template match="b[//c]"/>
>
>What am I doing wrong and/or how is my thinking wrong?
>
>FYI: I'm using the Xalan that comes with the Sun 1.4 JVM on linux.
>
>Thanks,
>Sandy McArthur
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list