每个(组?)的 XSLT,具有名为代码和值的排序两个元素

XSLT for each (group?) with sorted two elements named as Code and Value

我需要将文件 xml 传输到 xfdf。我有两个元素类型代码和值的组。代码是定义字段的名称,值是字段的值。 XML 来源是这样的:

 <urn:identifications>
  <urn:identificationCode>dateOfBirth</urn:identificationCode>
  <urn:identificationValue>25021965</urn:identificationValue>
  <urn:identificationCode>ičdph</urn:identificationCode>     <!-- IC DPH -->
  <urn:identificationValue>1234567890</urn:identificationValue>
  <urn:identificationCode>ičo_sk</urn:identificationCode>      <!-- ICO (SK) -->
  <urn:identificationValue>0987654333</urn:identificationValue>
  <urn:identificationCode>ic</urn:identificationCode>      <!-- ICO (CZ) -->
  <urn:identificationValue>0987654321</urn:identificationValue>
  ...
</urn:identifications>

我需要这样的 XSLT 到 XFDF 的东西。

<identifications>
 <field name="dateOfBirth">
   <value>25021965</value>
 </field>
 <field name="ičdph">
   <value>1234567890</value>
 </field>
 <field name="ičo_sk">
   <value>0987654333</value>
 </field>
 <field name="ic">
   <value>0987654321</value>
 </field>
  ...
</identifications>

我需要用什么?如何?对于每个组?或套?非常感谢。

如果它们总是如您的示例所示成对出现,那么您可以简单地执行以下操作:

<xsl:template match="urn:identifications">
    <identifications>
        <xsl:for-each select="urn:identificationCode">
            <field name="{.}">
                <value>
                    <xsl:value-of select="following-sibling::urn:identificationValue[1]"/>
                </value>
            </field>
        </xsl:for-each>
    </identifications>
</xsl:template>