XSLT读取外部XML文件

岩藻属

我有一个XML文件,其中包含其他XML文件的路径,例如:

<PATH>InsertPathHere</PATH>
<PATH>InsertPathHere</PATH>

有没有一种方法可以通过XSLT“打开” XML文件并使用其数据?我想将数据保存在单独的文件中,并将它们与XSLT一起使用。

zx485

对于像这样的XML文件

<?xml version='1.0' encoding='utf-8'?>
<root>
  <PATH>InsertPath1Here.xml</PATH>
  <PATH>InsertPath2Here.xml</PATH>
</root>

和辅助XML文件,例如 InsertPath1Here.xml

<data>
    <value name="Value1">ABC</value>
</data>

InsertPath2Here.xml

<data>
    <value name="Value2">DEF</value>
</data>

您可以像这样使用XSLT文件:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" omit-xml-declaration="yes" indent="yes"/>

  <xsl:template match="/root">
    <xsl:for-each select="document(PATH)">
        <xsl:copy-of select="data" />
    </xsl:for-each>
  </xsl:template>

</xsl:stylesheet>

创建(正确的)输出:

<data>
    <value name="Value1">ABC</value>
</data>
<data>
    <value name="Value2">DEF</value>
</data>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章