xsl-list
[Top] [All Lists]

RE: xsl:sort blocks of element with an attribute value

2005-10-17 09:47:26

It's not working.

In my case, I'm not sure if I should use xsl:for-each instead of
apply-template.  I read the documentation but it's not clear for me. What do
you think?

Thanks
Stephan

-----Message d'origine-----
De : Michael Kay [mailto:mike(_at_)saxonica(_dot_)com] 
Envoyé : October 17, 2005 10:19
À : xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Objet : RE: [xsl] RE : RE: [xsl] xsl:sort blocks of element with an
attribute value

I think you want

<xsl:sort select="NetPrice/@netAmount" data-type="number"/>

- though this doesn't handle multiple currencies!

Michael Kay
http://www.saxonica.com/ 

-----Original Message-----
From: Stephane Dion [mailto:stephane(_at_)accovia(_dot_)com] 
Sent: 17 October 2005 15:05
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] RE : RE: [xsl] xsl:sort blocks of element with 
an attribute value

Hi

As requested, this is my stylesheet.
 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
version="2.0">
  <xsl:output method="xml"/>
  <xsl:template
match="/GetProductOptionsResponse/DetailedProduct/ProductOptio
nGroup/Product
Option">
    <xsl:apply-templates>
      <xsl:sort data-type="number" select="@NetPrice" 
order="ascending"/>
    </xsl:apply-templates>
  </xsl:template>
 
  <xsl:template match="*">
    <xsl:copy>
      <xsl:apply-templates/>
    </xsl:copy>
  </xsl:template>
</xsl:stylesheet>
 
Thanks for your help
Stephan
 
Hi
 
        Could someone help me with this.  
 
        I would like to sort each NetPrice block by the 
attribute value
netAmount (ascending) of each block.
 
        Here is my XML:
 
<GetProductOptionsResponse xmlns="http://www.accovia/TRIP2004A/01";;> 
    <Header language="en" version="5.1.0"/>
        <DetailedProduct availabilityStatus="available">        
        <ProductOptionGroup description="OPTION GROUP 1">            
            <ProductOption description="option A">
               <NetPrice currency="EUR" netAmount="2.27"
priceReferenceID="HTLAVO13XAAX" quantity="1"/>
               <NetPrice currency="EUR" netAmount="-45.09"
priceReferenceID="HTLAVO13XAAX" quantity="1"/>
               <TravelerPrice age="10" travelerId="003">
                    <PriceSummary baseAmount="0.00"/>
               </TravelerPrice>
            </ProductOption>
            <ProductOption description="option B">
                <NetPrice currency="EUR" netAmount="2.27"
priceReferenceID="HTLAVO13XAAX" quantity="1"/>
                <NetPrice currency="EUR" netAmount="-45.09"
priceReferenceID="HTLAVO13XAAX" quantity="1"/>
               <TravelerPrice age="10" travelerId="003">
                    <PriceSummary baseAmount="0.00"/>
               </TravelerPrice>
            </ProductOption>
        </ProductOptionGroup>
        <ProductOptionGroup description="OPTION GROUP 2">            
            <ProductOption description="option Z">
                <NetPrice currency="EUR" netAmount="5.55"
priceReferenceID="BHTLAVO13XAAX" quantity="1"/>
                <NetPrice currency="EUR" netAmount="-145.09"
priceReferenceID="BHTLAVO13XAAX" quantity="1"/>
               <TravelerPrice age="99" travelerId="001">
                    <PriceSummary baseAmount="1.00"/>
               </TravelerPrice>
            </ProductOption>
        </ProductOptionGroup>
        </DetailedProduct>
</GetProductOptionsResponse>
 
        I have tried many many ways without success.
        
Thanks in advance for your help
Stephan
 


--~------------------------------------------------------------------
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>
--~--





--~------------------------------------------------------------------
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>
--~--




--~------------------------------------------------------------------
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>