xsl-list
[Top] [All Lists]

Re: [xsl] Unique Nodes

2007-03-28 21:12:24
With XSLT 2.0, you can do as following:

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; version="2.0">

 <xsl:output method="xml" indent="yes" />

 <xsl:template match="/">
   <Proposal>
     <Products>
        <xsl:for-each select="distinct-values(for $x in //ProdID
return normalize-space($x))">
          <ProdId><xsl:value-of select="." /></ProdId>
        </xsl:for-each>
     </Products>
   </Proposal>
 </xsl:template>

</xsl:stylesheet>


On 3/29/07, Karthik <ckkarthik(_at_)gmail(_dot_)com> wrote:
Hi ,
I am new to XSLT.
I have to grab the unique Products from the Input below

INPUT:

<Proposal>
       <Quote>
       <QuoteId>1</QuoteId>
               <Products>
                       <Product>
                               <ProdID>
                                       1234
                               </ProdID>
                               <ProdID>
                                       5678
                               </ProdID>
                       </Product>
               </Products>
       </Quote>
       <Quote>
       <QuoteId>2</QuoteId>
               <Products>
                       <Product>
                               <ProdID>
                                       1234
                               </ProdID>
                               <ProdID>
                                       5678
                               </ProdID>
                       </Product>
               </Products>
       </Quote>
</Proposal>

Desired OUTPUT:

<Proposal>
       <Products>
               <ProdId>1234</ProdId>
               <ProdId>5678</ProdId>
       </Products>
</Proposal>


The code which I am trying is

<xsl:variable name="unique-Product"
select="//Proposal/Quote/Products/Product[not(ProductId=ancestor::Product/ProductId)]"/>

       <xsl:for-each select="$unique-Product">
       </xsl:for-each>

Any help is appreciated

Thanks in advance
Karthik


--
Regards,
Mukul Gandhi

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

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