根据常用id值加入两个xml文件

时间:2016-09-22 22:29:40

标签: xml xslt

我见过很多类似的答案,但没有什么比这个简单的案例更好。

在下面的示例中,我如何将州名加入城市以创建输出?

输入文件#1

clRed

输入文件#2

<cities>
  <city>
    <state_id>100<state_id>
    <city_name>Los Angeles</city_name>
  </city>
  <city>
    <state_id>100<state_id>
    <city_name>San Francisco</city_name>
  </city>
  <city>
    <state_id>200<state_id>
    <city_name>Chicago</city_name>
  </city>
</cities>

输出

<states>
  <state>
    <id>100</id>
    <name>California</name>
  </state>
  <state>
    <id>200</id>
    <name>Illinois</name>
  </state>
  <state>
    <id>300</id>
    <name>Texas</name>
  </state>
</states>

1 个答案:

答案 0 :(得分:0)

考虑使用XSLT 1.0 document()函数,它允许跨文档的相对路径引用,拉动特定节点。在City.xml上应用以下XSLT,在转换期间从States.xml中提取数据,假设两者都位于同一目录中:

{{1}}