xslt - 使用文档功能(XSLT)时避免重命名要打开的文件的方法?

标签 xslt document filenames concatenation

我制作了一个 xslt 文件来用另一个 xml 文件 (File1.xml) 更正另一个文件 (File1CORR.xml)。 问题是我有 50 个 xml 文件需要更正,并且我必须重命名文档才能在 XSLT 文件中打开 50 次。正如您所看到的,文件命名非常相似。所以,我想知道是否有没有办法通过使用一些技巧来避免重命名,例如:

<xsl:if test="not($myKey1=document('fichier1CORR.xml')/Context/descriptor/deleteBB/.|document('fichier1CORR.xml')/Context/descriptor/replaceBB/.)">

可能会使用 concat 函数来替换以引用输入文件 & CORR & .xml?

最佳答案

将要更正的文件的路径作为外部(全局)参数传递给转换:

<xsl:param name="pFilePath"/>

<xsl:variable name="vDoc" select="document($pFilePath)"/>

<xsl:template match="/">
  <xsl:apply-templates select="$vDoc/node()"/>
</xsl:template>

XSLT 2.0 允许在一次转换中执行所有 XML 文档更正。所有文件路径都可以从单独的 XML 文档中读取,并且可以对所有指定文档进行相同的更正。 <xsl:result-document> 指令将用于保存每个已更正的 XML 文档,并继续转换并更正剩余未处理的文档。

关于xslt - 使用文档功能(XSLT)时避免重命名要打开的文件的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9501669/

相关文章:

xml - xslt中for循环的使用方法

VB6:CreateFile() 在当前工作目录中创建名称乱码的文件

c# - 在不破坏驱动器号的情况下清理 C# 中的文件路径

MySQL 搜索具有不同扩展名的重复文件名

java - 在 XSL 转换期间读取并替换 XML 中的常量

c# - 如何使用 xsl 拆分 html 文件?

xslt - 如何在一个 xsl 文件中删除和添加命名空间

count - Elasticsearch 中的术语聚合中的准确文档计数

size - 计算 Google Firestore 文档的大小

checkbox - UWP 中的数据网格复选框