我有一个大约有300个XML模式的文件夹,这些模式是相互依赖的。我有一个高级架构,我想知道它所依赖的所有子架构文件。
有没有简单的方法来获取此列表。
谢谢, 哈里什
答案 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>
它为您提供了直接使用的文件,然后递归应用此函数将为您提供间接使用的文件。