Subject: Re: XSL comparing nodesets by name only
From: Piet van Oostrum <piet@xxxxxxxxxxxxxx>
Date: Mon, 15 Nov 2010 08:24:34 -0400
|
Markus Ohlenroth wrote:
> I use XSLT 1.0
>
> Given the following nodesets:
>
> <data:me1> <a></a> <b/> </data:me1>
>
> <data:me2> <a>value</a> <dd></dd> </data:me2>
>
>
> <xsl:variable name="me1" select="//data:me1/*"/> <xsl:variable
> name="me2" select="//data:me2/*"/>
>
> I want to find out if the two nodesets share one or more elements. I
> only want a comparison regarding their nodenames not the values of
> the nodes. In the above example $me1 and $me2 share the name of one
> element: and that is the element "<a/>". So my nodeset comparison
> should return "true".
In XSLT 1.0:
<xsl:value-of select="name($me1) = name($me2)"/>
In 2.0:
<xsl:value-of select="$me1/name() = $me2/name()"/>
--
Piet van Oostrum
Cochabamba. URL: http://pietvanoostrum.com/
Nu Fair Trade woonartikelen op http://www.zylja.com
|