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