xsl-list
[Top] [All Lists]

Re: Select a node by name

2002-10-05 03:21:35
Di Dion,

thanks for your help. It works fine :-)

Greetings,
Andreas


Dion Houston wrote:

Hi Andreas:

There's actually a couple issues here...

The select issue is actually pretty easy and straight forward.  To
select the person element who has a name attribute of Betty, simply use
the XPath:
/persons/person[(_at_)name="Betty"]

The second issue is that xsl:value-of outputs the text content of the
node you specify.  So in the case of:

<xsl:value-of select="/persons/person[(_at_)name='Betty']"/>

This will actually display nothing.  Why?  In your sample XML below, the
person _element_ has no text content.

If what you're looking for is (for example) the job, then use the
following:

<xsl:value-of select="/persons/person[(_at_)name='Betty']/@job"/>

HTH!

Dion
-----Original Message-----
From: Andreas Schlegel [mailto:schlegel(_at_)software(_dot_)b(_dot_)uunet(_dot_)de] Sent: Friday, October 04, 2002 3:26 PM
To: XSL-List(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Select a node by name

Hi,

writing a XSL file I have the problem to get a specific node of the
list.

Having a XML file like this:

<persons>
<person name="Bill" job="Developer"/>
<person name="Steve" job="Admin"/>
<person name="Betty" job="CEO"/>
</persons>

A statement like <xsl:value-of select="person"/> won't help because I have a lot of nodes of the type PERSON.

If I have a node already selected I may use <xsl:value-of
select="@name"/>

It's no problem to do it by for each ( <xsl:for-each select="person"> ).

But I look for a way to pick a person out of the list, i.e. "Betty".

Any ideas?

Greetings,
Andreas



XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list





XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>