如何从java中的XML模式生成XML并在其中提供数据?

时间:2012-06-22 13:00:24

标签: xml jaxb xmlbeans jibx

我正在开发Web应用程序的一部分,该应用程序将XML模式作为输入来生成XML文件。 还有一些数据可以按顺序放入XML标记中。

例如,我将有一个100个数字的ArrayList,比如说1到100

和.xsd类似于以下示例:

xs:element name =“elt1”

的xs:复杂类型

xs:sequence

  xs:element name="elt1-1"

  xs:element name="elt1-2"

  xs:element name="elt1-3"

  xs:element name="elt1-4"

  xs:element name="elt1-5"

xs:sequence

的xs:复杂类型

xs:element name =“elt1”

......其他元素

如何生成如下所示的XML文件:

< ELT1>

< elt1-1→1< elt1-1>

< elt1-2→2< elt1-2>

< elt1-2→3< elt1-3>

< elt1-4→4< elt1-4>

< elt1-5→3< elt1-5>

< ELT1>

这样每个标签中的数据是arraylist中相应的数字,与arraylist中的数据顺序相同?

我真的很感激任何建议或例外。提前谢谢!

2 个答案:

答案 0 :(得分:5)

您可以使用XMLBeans中的xsd2inst工具从架构生成xml文档。如果您对XMLBeans如何做到这一点感到好奇,您可以看到xsd2inst工具是如何实现的:

http://svn.apache.org/viewvc/xmlbeans/trunk/src/tools/org/apache/xmlbeans/impl/xsd2inst/

答案 1 :(得分:0)

可能是重复:

  

how-to-generate-sample-xml-documents-from-their-dtd-or-xsd

和/或

  

XML instance generation from XML schema (xsd)

此外,我建议你解释一下你是否真的想要使用JAXB(因为你标记了它),并明确说明你是否希望在你的应用程序中自动执行此行为,或者是否可以通过手动步骤来适应/使用外部工具(例如xml编辑器)。