从xsd文件导出类型列表

时间:2014-11-13 20:55:38

标签: java xml eclipse xsd

我需要比较各种xsd文件中包含的类型列表。有数百种类型,所以我想将类型的名称变成文本格式,以便我可以使用其他软件比较几百个元素的列表。是否有一个简单,免费的工具,只提取xsd文件中所有类型的名称?

我正在使用eclipsejavaeclipse xsd design view显示类型的名称,但不允许您以文本格式将名称提取到Windows剪贴板中,以便在其他应用程序中使用。

1 个答案:

答案 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>&#xa;</xsl:text>
    <xsl:apply-templates select="node()"/>
  </xsl:template>

  <xsl:template match="xsd:complexType">
    <xsl:value-of select="@name"/><xsl:text>&#xa;</xsl:text>
    <xsl:apply-templates select="node()"/>
  </xsl:template>

</xsl:stylesheet>

您甚至可以修改它以指出哪些类型简单,哪些类型复杂。

您可以通过命令行处理器(例如xsltproc)使用该样式表处理XSD,或者使用Java的内置XSLT引擎编写自己的包装器来完成相同的工作非常容易。< / p>