如何使用 saxon 加载多个 xml 文件
我想使用 saxon 进行 xpath 查询,但我不知道加载多个 xml 文件。
我正在尝试在 Windows 中使用 saxon 命令行
,我在 saxon 手册中读到我可以使用以下命令:
Query.exe -s:myDataFile.xml -q:myQueryFile -o:myOutputFile
但我不知道如何加载多个 xml 文件而不仅仅是一个
编辑: 我有很多 xml 文件 myDataFile1.xml、myDataFile2.xml、myDataFile3.xml ...并且我想对所有这些文件运行查询所以我想加载所有所有文件然后查询它们(我不想查询每个文件然后连接结果)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用标准 XPath 2.0 函数 collection()。< /strong>
特定于 Saxon 的
collection()
实现的文档为 此处。您可以使用标准 XPath 2.x collection() 函数,在 Saxon 9.x 中实现
Saxon 实现允许在函数的 string-Uri 参数中使用搜索模式,因此您可以在目录路径之后指定以
report_ 然后还有另外两个字符,然后以
.xml
结尾。示例:
此 XPath 表达式:
选择位于
c:\
中名称以report_
开头的文件中的每个 XML 文档的文档节点,然后具有 0 个或多个字符,然后以.xml
结尾。Use the standard XPath 2.0 function collection().
The documentation for the Saxon-specific implementation of
collection()
is here.You can use the standard XPath 2.x collection() function, as implemented in Saxon 9.x
The Saxon implementation allows a search pattern to be used in the string-Uri argument of the function, thus you may be able to specify after the path of the directory a pattern for any filename starting with
report_
then having two other characters, then ending with.xml
.Example:
This XPath expression:
selects the document nodes of every XML document that resides in
c:\
in a file with name starting withreport_
then having a 0 or more characters, then ending with.xml
.