如何获取依赖于给定xml架构的xmls架构列表

时间:2012-07-17 09:21:29

标签: xml schema

我有一个大约有300个XML模式的文件夹,这些模式是相互依赖的。我有一个高级架构,我想知道它所依赖的所有子架构文件。

有没有简单的方法来获取此列表。

谢谢, 哈里什

1 个答案:

答案 0 :(得分:0)

也许像Altova的SchemaAgent这样的工具会有所帮助。

或者在XSLT中编写自己的依赖性分析器。类似的东西:

<xsl:variable name="docs" select="collection('.?select=*.xsd')"/>

<xsl:function name="f:uses" as="document-node()*"/>
  <xsl:param name="schema" as="document-node()"/>
  <xsl:sequence select="for $h in $schema/*/(xs:include/xs:import/xs:redefine)
                        return doc(@href)"/>
</xsl:function>

它为您提供了直接使用的文件,然后递归应用此函数将为您提供间接使用的文件。