0
我正在編寫一個轉換,爲了更容易區分結果,我需要對多個字段的輸出進行排序。我找不到任何文件討論如何做到這一點,重要的是我做對了。使用xsl進行多字段排序:排序
這是正確的方法嗎?
<xsl:apply-templates select="MemoryBank | ParameterSet | Template">
<xsl:sort select="local-name()"/>
<xsl:sort select="attribute::Id"/>
</xsl:apply-templates>
示例XML看起來與此類似。
<?xml version="1.0" encoding="utf-8"?>
<FirmwareConfiguration>
<MemoryBank Id="EEPROM" Address="0" Size="262144" BitsPerWord="8">
<Description>2 Mbit EEPROM</Description>
</MemoryBank>
<MemoryBank Id="PRAM" Address="12288" Size="53248" BitsPerWord="32">
<Description>Program Memory</Description>
</MemoryBank>
<ParameterSet Id="GainReduction" Size="16" BitsPerWord="24">
<Description>Gain Reduction Values</Description>
</ParameterSet>
<ParameterSet Id="AlgorithmState" Size="35" BitsPerWord="24">
<Description>Firmware Variable Space</Description>
</ParameterSet>
<Template Id="05b4bcb0-2d04-4742-9fdd-bd60496502a9">
<FormatSpecifier>
<SignBits>0</SignBits>
<IntegerBits>5</IntegerBits>
<FractionalBits>0</FractionalBits>
</FormatSpecifier>
</Template>
<Template Id="0667ae14-3b5a-4b38-8c35-d575add6df65">
<FormatSpecifier>
<SignBits>0</SignBits>
<IntegerBits>1</IntegerBits>
<FractionalBits>0</FractionalBits>
</FormatSpecifier>
</Template>
</FirmwareConfiguration>