[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: processing nodes by value precedence
On 2 February 2016 at 20:57, Matthew Stoeffler matthew.stoeffler@xxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > Lets say Ibm processing products that can have multiple types of a certain > node distinguished by value, of which I want only one in my result, and I > have a precedence order by type of those nodes that shoudl determine which > one I get. So, if the child of product Ibm interested in is price currency > and my product had > > > > <product> > > b&. > > > > <price> > > <amount>25.00</amount> > > <currency>FR</currency> > > </price> > > > > <price> > > <amount>20.00</amount> > > <currency>US</currency> > > </price> > > > > <price> > > <amount>30.00</amount> > > <currency>CA</currency> > > </price> > > > > </product> > > > > And my preference is to take the only one price in the order 1., US, 2. > CA, 3.FR. > > > > In context product, if I say > > > > <xsl:apply-templates > select=b(price[currency=bUSb],price[currency=bCAb],price[currency=b FRb])[1]b/> > > > > I get the FR price because itbs first in doc order, but my expression was > meant to say process nodes in this sequence order, taking the first one, in > the sequence, not in the doc order of the input tree. > > No you should get the US one. if you execute <xsl:stylesheet version="2.0" xmlns:xsl=" http://www.w3.org/1999/XSL/Transform"> <xsl:template match="product"> <xsl:copy-of select="(price[currency='US'],price[currency='CA'],price[currency='FR'])[1]"/ > </xsl:template> </xsl:stylesheet> on the xml you posted then you get <price> <amount>20.00</amount> <currency>US</currency> </price> Does you real code have a path step /xxx after the comma expression? (that would sort into document order) David > > > I thought the above instruction would be a short cut to achieving this, > but it doesnbt work. Is there a concise way to express the kind of > precedence I want? > > > > Thanks. > > > > > > -- http://dpcarlisle.blogspot.com/
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|