Subject: RE: Filter out elements that have one specific sub-element and nothing else
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 21 Feb 2007 13:28:43 -0000
|
select="listitem[node()[last()=1][self::formatinfo]]"
Michael Kay
> -----Original Message-----
> From: stephan@xxxxxxxxxx [mailto:stephan@xxxxxxxxxx]
> Sent: 21 February 2007 13:05
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: Filter out elements that have one specific
> sub-element and nothing else
>
> Hi there,
>
> I have an XML file like this:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <funnylist>
> <listitem>
> <formatinfo color="yellow" />
> <stuffinside>Info</stuffinside> MoreInfo
> </listitem>
> <listitem>
> <formatinfo color="blue" />
> </listitem>
> <listitem>
> <formatinfo color="red" />EvenMoreInfo
> </listitem>
> </funnylist>
>
> I need to filter out this element:
> <listitem>
> <formatinfo color="blue" />
> </listitem>
>
> The rule: if listitem contains only formatinfo and no other
> element or text then remove it.
>
> I have no clue how to formulate the xPath.
> Help appreciated.
> :-) stw
|