There are a few options, with your current style use <xsl:value-of
select="../Name"/>, the .. means use the parent, Customer, then choose the
child Name. I think a better way would be to select only the Customer
elements with a status: <xsl:for-each select="Customers/Customer[Status]">
to start with then just output Name and Status.
Joe
http://joe.fawcett.name
From: "Waqar Ali" <waqarali_pk@xxxxxxxxxxx>
Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: XSL Help
Date: Mon, 01 Oct 2007 11:31:17 -0400
<Customers>
<Customer>
<Name>Joe Smith</Name>
<Status>VIP</Status>
</Customer>
<Customer>
<Name>Mary J</Name>
</Customer>
<Customer>
<Name>John Hopkins</Name>
<Status>VVIP</Status>
</Customer>
</Customers>
Generate a list of records with Status:
<xsl:template name="SPECIAL" match="/">
<xsl:for-each select="Customers/Customer/Status">
<xsl:value-of select="/Name"/>
<xsl:text>-</xsl:text>
<xsl:value-of select="/Status"/>
</xsl:for-each>
</xsl:template>
The names/status are not getting printed. How can I move one level up to
print
the names using value-of.
Desired Output:
Joe Smith-VIP
John Hopkins-VVIP
|