如何使用XSLT2.0将输入的xml数据存储到映射中

时间:2015-06-29 15:21:30

标签: xml xslt-2.0

我想将输入的xml数据存储到地图中以及如何保存这些数据。

输入XML:

    <person>
     <value id="123">
        <name>abc</name>
        <age>25</age>
    </value>
    <value id="456">
        <name>xyz</name>
        <age>80</age>
    </value>
    <value id="1235">
        <name>abcfg</name>
        <age>25</age>
    </value>
    <value id="4568">
        <name>xyzd</name>
        <age>80</age>
    </value>
    </person>

输出文件:

xyzd|80
abcfg|25

有没有办法将数据存储到地图对象中并将数据打印到输出中?

1 个答案:

答案 0 :(得分:0)

鉴于此输入XML,

<person>
  <value id="123">
    <name>abc</name>
    <age>25</age>
  </value>
  <value id="456">
    <name>xyz</name>
    <age>80</age>
  </value>
  <value id="1235">
    <name>abcfg</name>
    <age>25</age>
  </value>
  <value id="4568">
    <name>xyzd</name>
    <age>80</age>
  </value>
</person>

以下XSLT,它将同时适用于XSLT 2.0和1.0,

<xsl:stylesheet version="1.0"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="text"/>
  <xsl:strip-space elements="*"/>

  <xsl:template match="value">
    <xsl:value-of select="concat(name,'|',age,'&#xa;')"/>
  </xsl:template>

</xsl:stylesheet>

将生成映射输出文件

abc|25
xyz|80
abcfg|25
xyzd|80

请求的格式。