使用XIncludes分解一组XML文件的依赖关系树
我有一组XML文件(具体来说是DocBook)。它们使用XML包含(又名XInclude)来相互引用。给定其中一个XML文件,找出引用它的文件列表的最佳方法是什么?我希望为该文件建立依赖关系树。换句话说,如果我更改了一个给定的XML文件,我如何计算将受到影响的其他XML文件的列表?在DocBook SourceForge项目的SVN存储库中,有一个xmlDepende.xsl样式表模块。也许这就是你想要的:使用XIncludes分解一组XML文件的依赖关系树,xml,dependencies,docbook,xinclude,Xml,Dependencies,Docbook,Xinclude,我有一组XML文件(具体来说是DocBook)。它们使用XML包含(又名XInclude)来相互引用。给定其中一个XML文件,找出引用它的文件列表的最佳方法是什么?我希望为该文件建立依赖关系树。换句话说,如果我更改了一个给定的XML文件,我如何计算将受到影响的其他XML文件的列表?在DocBook SourceForge项目的SVN存储库中,有一个xmlDepende.xsl样式表模块。也许这就是你想要的: 鉴于XInclude定义的单向关系,没有任何直接的基于XML的方法来实现这一点。 老实说
鉴于XInclude定义的单向关系,没有任何直接的基于XML的方法来实现这一点。 老实说,我可能会使用
find
或grep
进行文件搜索
给定顶级DocBook文件,您可以使用@mzjn指向您的样式表上的一个变体来生成复合文档中的所有依赖项,然后提取文档依赖于您当前感兴趣的文件的依赖项。我认为这与OP所追求的正好相反。感谢mzjn的提示。Nic是对的,但我认为我可以朝着这个方向努力。我已经尝试过了,它确实成功地列出了类似文件中的所有图形,但没有列出包含的XML文件本身。我认为这是因为这些包含由org.apache.xml.resolver.tools.catalogsolver在上游解析。你知道我怎样才能得到这些额外的信息吗?