[英]How to sort contents of an <xsl:variable>
<?xml version="1.0" encoding="UTF-8"?>
<sortedResults xmlns="urn:com-avaneesh-abc:v1">
<result time-zone="America/Chicago" event-end-dt-tm="2013-06-11T15:37:00.000-05:00"
event-id="16886888"/>
<result time-zone="America/Chicago" event-end-dt-tm="2013-06-13T15:37:00.000-05:00"
event-id="16886890"/>
<result time-zone="America/Chicago" event-end-dt-tm="2013-06-10T15:37:00.000-05:00"
event-id="16886884"/>
<result time-zone="America/Chicago" event-end-dt-tm="2013-06-10T15:37:00.000-05:00"
event-id="16886878"/>
<result time-zone="America/Chicago" event-end-dt-tm="2013-06-13T15:37:00.000-05:00"
event-id="16886886"/>
<result time-zone="America/Chicago" event-end-dt-tm="2013-06-11T15:37:00.000-05:00"
event-id="1688687416886876"/>
</sortedResults>
我想對上述示例XML進行排序,該示例XML是<xsl:variable>
一部分,將按每個<result>
的event-end-dt-tm
進行排序,並將最新日期移動到一個XML標記<first>
,最舊的位於<last>
,其余的位於標簽<other>
。 我嘗試使用<xsl:sort>
,但是沒有按預期排序。
此XSLT-1.0將通過屬性@event-end-dt-tm
對<sortedResults>
的所有<result>
子<sortedResults>
排序,同時知道urn:com-avaneesh-abc:v1
命名空間:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ava="urn:com-avaneesh-abc:v1">
<xsl:output method="xml" />
<xsl:template match="/ava:sortedResults">
<xsl:apply-templates>
<xsl:sort select="@event-end-dt-tm" />
</xsl:apply-templates>
</xsl:template>
<xsl:template match="ava:result">
<!-- Put your desired processing here !!! -->
<xsl:value-of select="@event-id" /><xsl:text> </xsl:text> <!-- For example the @event-id followed by a newline -->
</xsl:template>
</xsl:stylesheet>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.