目前我有一堆XML文件。不幸的是,没有XSD或任何其他模式文件。在我的程序(Java)中,我使用JiBX将XML文件从POJO编组到POJO。因此,我的问题是:有没有办法(通过使用JiBX)基于来自示例XML文件的结构创建一个XSD?我需要自动执行此操作,因为这些XML文件的结构非常复杂。顺便说一下:我需要XSD来自动创建POJO。这一要求也与复杂性有关。
为什么不使用与JiBX不同的其他解决方案呢?一般来说,我会接受不同的解决方案,但如果使用JiBX就更好了。这是因为下一步将基于某种自动化(例如Ant作业)进行。
不过,为了好玩,我已经试过氧气了。它基于一个示例XML文件创建一些XSD模式,而不会遇到错误。这个过程的结果是(某种程度上)不像预期的那样。例如,当元素标记中有一个字符串时,Oxygen会创建更多的XSD子元素规则。因此,在解组XML文件时,这些字符串将消失。
也许我走错了解决方案的道路?请给我一些帮助/帮助解决这个问题的想法。
真的非常感谢你。
发布于 2011-09-07 03:42:10
不能使用JIBX从示例XML文件生成XSD文档。您可以使用Jibx2Wsdl工具从代码(如果您有POJO)生成XSD,也可以使用CodeGen工具从XSD生成代码。
要从XML生成XSD,您必须使用其他工具,比如推荐的here。Apache XMLBeans项目中的inst2xsd工具似乎工作得很好。
顺便说一句,别指望这些工具能在复杂的结构上很好地工作。我想结构越简单--工具就能更好地工作。事情越复杂,你个人参与的就越多。
https://stackoverflow.com/questions/7323149
复制相似问题