[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: selecting a element without it's child element

Subject: Re: selecting a element without it's child element
From: Michael Kay <mike@xxxxxxxxxxxx>
Date: Wed, 10 Nov 2010 10:51:12 +0000
Re:  selecting a element without it's child element
On 10/11/2010 10:07, srinivasan.p@xxxxxxxxxx wrote:
Hi Experts,

I need to select an element and store in a variable, but not the child
element of that particular element.

My XML

<book><title><indexterm>Violent Extremism</indexterm>  Sacred Values, and
what it Means to be Human</title></book>

My XSLT:

<xsl:variable name="filename"><xsl:value-of select="book/title except
child::indexterm"/></xsl:variable>

Use


<xsl:variable name="filename" select="book/title"/>

Your code is wrong at several levels. book/title selects a single node which is a title element; removing nodes called indexterm from that set is a no-op because there aren't any. Then you are doing xsl:value-of which takes the string value of the book/title node, which is defined as the concatenation of its descendant text nodes. You said you wanted the variable to contain the element, not to contain its string value.

My Current output:

Violent ExtremismSacred Values, and what it Means to be Human

My Expected output:

Sacred Values, and what it Means to be Human

The content of "indexterm" element should not be part of the file name. I
need to ignore that element while selecting the title element.


Use apply-templates to do a recursive descent of the tree rooted at the title element. When you hit the indexterm element, don't descend down that branch:


<xsl:template match="title">
<xsl:apply-templates/>
</xsl:template>

<xsl:template match="indexterm"/>

Michael Kay
Saxonica

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.