Subject: Re: [xsl] Excluding an element with specific content from an <xsl:sort> call From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx> Date: Sun, 31 Jan 2010 08:57:04 +0100 |
Under the assumption that 'A' only appears as length-1 string in Prefix the following diff makes that stylesheet work on XSLT 1.0 processors:
$ diff mark.xsl mark1.xsl 10c10 < <xsl:sort select="if( Prefix!='A' ) then Prefix else ''"/> --- > <xsl:sort select="translate(Prefix,'A','')"/> $
t:\ftemp>type mark.xml <tests> <record> <order>1</order> <Prefix>D</Prefix> </record> <record> <order>2</order> <Prefix>A</Prefix> </record> <record> <order>3</order> <Prefix>L</Prefix> </record> <record> <order>4</order> <Prefix>A</Prefix> </record> <record> <order>5</order> </record> <record> <order>6</order> <Prefix>A</Prefix> </record> <record> <order>7</order> </record> <record> <order>8</order> <Prefix>L</Prefix> </record> <record> <order>9</order> <Prefix>D</Prefix> </record> </tests>
t:\ftemp>call xslt mark.xml mark.xsl <?xml version="1.0" encoding="utf-8"?><tests><record> <order>2</order> <Prefix>A</Prefix> </record><record> <order>4</order> <Prefix>A</Prefix> </record><record> <order>5</order> </record><record> <order>6</order> <Prefix>A</Prefix> </record><record> <order>7</order> </record><record> <order>1</order> <Prefix>D</Prefix> </record><record> <order>9</order> <Prefix>D</Prefix> </record><record> <order>3</order> <Prefix>L</Prefix> </record><record> <order>8</order> <Prefix>L</Prefix> </record></tests> t:\ftemp>type mark.xsl <?xml version="1.0" encoding="US-ASCII"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="tests"> <xsl:copy> <xsl:for-each select="record"> <xsl:sort select="Prefix[.!='A']"/> <xsl:copy-of select="."/> </xsl:for-each> </xsl:copy> </xsl:template>
-- XSLT/XQuery/XPath training after http://XMLPrague.cz 2010-03-15/19 XSLT/XQuery/XPath training: San Carlos, California 2010-04-26/30 Vote for your XML training: http://www.CraneSoftwrights.com/s/i/ Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/ Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video Video lesson: http://www.youtube.com/watch?v=PrNjJCh7Ppg&fmt=18 Video overview: http://www.youtube.com/watch?v=VTiodiij6gE&fmt=18 G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx Male Cancer Awareness Nov'07 http://www.CraneSoftwrights.com/s/bc Legal business disclaimers: http://www.CraneSoftwrights.com/legal
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Excluding an element with, Mark Wilson | Thread | |
Re: [xsl] Excluding an element with, Mark Wilson | Date | |
Month |