[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

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

Subject: RE: xsl:sort blocks of element with an attribute value
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Mon, 17 Oct 2005 18:29:44 +0100
xsl option group
Your source document has a default namespace, so the names in your path
expressions and match patterns in the stylesheet need to be prefixed.

Google for "XSLT FAQ default namespace"

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


> -----Original Message-----
> From: Stephane Dion [mailto:stephane@xxxxxxxxxxx]
> Sent: 17 October 2005 17:47
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: RE:  xsl:sort blocks of element with an attribute value
>
>
> 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@xxxxxxxxxxxx]
> Envoyi : October 17, 2005 10:19
> @ : xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Objet : RE:  RE : RE:  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@xxxxxxxxxxx]
> > Sent: 17 October 2005 15:05
> > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > Subject:  RE : RE:  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
> >  

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.