|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Processing an element only if there are no better
Whoops, in my recent post, I forgot this part.
> >i.e. If there is a Type1 product, then don't output Type2 or Type3.
> >However, if there is no Type1, then output Type2, but not
> Type3 if it's
> >present.
>
Just change my example (see below) to output only the first of the first
of the sorted types -
<xsl:template match='Product[1]'>
...
</xsl:template>
This will give you just the one product whose priority is the highest,
according to the priorities you have declared. This is what the
original question was about, as I understand it.
Cheers,
Tom P
----------------------------------------------------------------------
I previously posted this -
You can declare your own priorities for sorting like this.
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:doc='local:sort'> <!-- arbitrary namespace URI -->
<xsl:variable name='priorities'
select='document("")/xsl:stylesheet/doc:priority/term'/>
<doc:priority>
<term name='Type1' priority='1'/>
<term name='Type2' priority='2'/>
<term name='Type3' priority='3'/>
</doc:priority>
....
Then for sorting, you can use your priorities like so -
<xsl:apply-templates select='Product'>
<xsl:sort data-type='number'
select='$priorities[@name=current()/@Type]/@priority'/>
</xsl:apply-templates>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
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
|

Cart








