2012-07-11 106 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。