Subject: Re: FW: [xsl] How to navigate the tree from a selected node to the root? From: Joerg Heinicke <joerg.heinicke@xxxxxx> Date: Tue, 22 Oct 2002 07:05:38 +0200 |
I need a little enhancement.
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="try.xsl"?>
<books> <book name="name2"> <otherdetails price="10"/> <otherdetails price="25"/> <!-- Newly added --> </book>
<book name="name1"> <otherdetails price="20"/> <otherdetails price="35"/> <!-- Newly added --> </book> </books>
Now applying the stylesheet as you have mentioned, I get the output as
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="try.xsl"?> <books> <book name="name2"> <otherdetails price="10"/> <otherdetails price="25"/> </book> </books>
My requirement is that I want to get
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="try.xsl"?> <books> <book name="name2"> <otherdetails price="10"/> </book> </books>
The sibling of otherdetails also should not be selected.
Hence I tried the stylesheet like
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" indent="yes"/>
<xsl:template match="books"> <xsl:copy> <xsl:apply-templates select="@* | book[otherdetails/@price = '10']" /> </xsl:copy> </xsl:template>
<xsl:template match="@*|node()"> <xsl:if test="node()/otherdetails/@price='10'"> <!-- I know, this is not correct, but i need something like this -->
<xsl:copy> <xsl:apply-templates select="@*|node()"/> </xsl:copy> </xsl:if> </xsl:template>
<xsl:template match="book"> <xsl:copy> <xsl:apply-templates select="@* | otherdetails[@price = '10']"/> </xsl:copy> </xsl:template>
</xsl:stylesheet>
Basically, I should be able to differentiate within the template match="@*|node(), whether it is an attribute or a book node. If it is a book node and if otherdetails/@price is not 10, then that should not be included in the output xml.
Can you please tell me how could I do that?
Thanks in advance, Best Regards, Nirmala
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
FW: [xsl] How to navigate the tree , Nirmala R | Thread | RE: FW: [xsl] How to navigate the t, Nirmala R |
[xsl] How to create a global counte, Satish, L. Gnanendra | Date | [xsl] Re: Accounting for Arbitrary , Dimitre Novatchev |
Month |