用Java以编程方式从XML生成XSD

时间:2014-12-05 10:42:34

标签: java xml xsd

我正在寻找一个轻量级的库,它允许我在Java中用XML生成XSD(没有命令行工具)。我知道它不是一种干净的生成方式,但在这种情况下我需要这样做。 XML在结构方面也非常简单。

我已经查看了Trang,但除了如何从命令行调用它之外没有API文档。

我还检查了xsd-gen,但该库的问题是需要修改源代码中的一些我无法找到的软件包declrations。

还有其他建议吗?

2 个答案:

答案 0 :(得分:14)

我是工具xsd-gen的作者。我将工具转换为库,并将工件上传到Maven Central:

<dependency>
    <groupId>org.wiztools</groupId>
    <artifactId>xsd-gen</artifactId>
    <version>0.2.1</version>
</dependency>

现在,在您的应用程序中使用它很简单:

import org.wiztools.xsdgen.XsdGen;
import java.io.File;
import java.io.FileOutputStream;

...

XsdGen gen = new XsdGen();
gen.parse(new File("in.xml"));
File out = new File("out.xsd");
gen.write(new FileOutputStream(out));

答案 1 :(得分:2)

我加入了xsd-gen source code,它对我有用。你只需要

  1. TypeInferenceUtil.java
  2. XsdGen.java
  3. 我使用的包声明(对于Gradle)是:

    compile("com.io7m.xom:xom:1.2.10")
    compile("org.wiztools.commons:wiztools-commons-lib:0.4.1")
    
相关问题