2012-07-11 108 views
5

有没有什么方法(不是从类/ JAXB)在Java中创建XSD模式?我可以在一些库的帮助下解析它,例如XSOM,Jdom等。但是找不到任何东西来创建。以Java生成XSD文件

+3

你可能会详细阐述为什么JAXB不是一个选项? – 2012-07-11 15:14:41

回答

2

我不知道任何易于使用的方法。 我考虑过使用dom4j(因为我将它用于其他目的,但任何其他通用xml操作库都是相同的)并且手动创建它(1)。但是后来我意识到我可以使用JAXB生成xml模式的对象模型,用它填充我想要的(原来比我希望的要舒服得多),然后将它编组(2)。它通过JAXB,但没有为你的模式创建类,所以它可能对你有用。

通过2很难(但不是不可能)创建无效的模式,但它有时很难找到如何创建我想要的模式。所以我最终在编辑器中创建了它,然后解开它并探索它的对象表示。最后,通过1)创建它,然后验证它(我不得不这样做)将不那么繁琐。

+0

OP说他不想在他的'XSD'文件生成中使用'JAXB'。 – GingerHead 2012-07-11 15:01:55

+1

看起来好像他可能不想为他的文档创建类并从它们生成模式。但也许他根本不想使用JAXB,只有他知道。 – Alpedar 2012-07-12 08:17:35

0

要创建XSD是使用java类/编码(不可避免):

只需使用JavaDOM并创建一个document然后在主node和创建其他nodes附加给它瞧!

1

你可以使用Eclipse XSD project,Eclipse的模型开发工具的一部分。它提供了编程式创建模式的数据模型和API。