我需要比较各种xsd
文件中包含的类型列表。有数百种类型,所以我想将类型的名称变成文本格式,以便我可以使用其他软件比较几百个元素的列表。是否有一个简单,免费的工具,只提取xsd
文件中所有类型的名称?
我正在使用eclipse
和java
。 eclipse xsd design view
显示类型的名称,但不允许您以文本格式将名称提取到Windows剪贴板中,以便在其他应用程序中使用。
答案 0 :(得分:1)
XSLT转换只是这项工作的工具。样式表可能如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsl:template match="node()">
<xsl:apply-templates select="node()"/>
</xsl:template>
<xsl:template match="xsd:simpleType">
<xsl:value-of select="@name"/><xsl:text>
</xsl:text>
<xsl:apply-templates select="node()"/>
</xsl:template>
<xsl:template match="xsd:complexType">
<xsl:value-of select="@name"/><xsl:text>
</xsl:text>
<xsl:apply-templates select="node()"/>
</xsl:template>
</xsl:stylesheet>
您甚至可以修改它以指出哪些类型简单,哪些类型复杂。
您可以通过命令行处理器(例如xsltproc
)使用该样式表处理XSD,或者使用Java的内置XSLT引擎编写自己的包装器来完成相同的工作非常容易。< / p>