繁体   English   中英

从XSD文件以编程方式创建特定的XML元素

[英]Create specific XML elements programmatically from an XSD file

我正在开发一个通用的XML编辑器,需要能够以编程方式从XSD文件创建特定的子XML元素,然后我可以将其添加到其他父节点。

像这样的东西:

在此输入图像描述

当我右键单击根元素“breakfast_menu”时,会弹出一个上下文菜单,并为我提供一个向其添加新食物元素的选项。 生成的新食物元素需要具有与其相关联的所有子元素/属性(名称,价格等,如XSD中所定义的)已添加到其中。 这是棘手的部分。

我使用XSModel玩了一下,这使我能够检查XSD文件中定义的元素定义。 我还不确定到什么程度。 这非常麻烦。

有没有更简单的方法来实现这一目标? 理想情况下,我需要一个库,我可以告诉我需要生成的XSD中的哪个特定子元素,它会产生org.w3c.dom。*对象(或类似的东西),我可以将它添加到我的节点树中。

我已经看到了从xsd生成整个xml文件的解决方案,但是最常生成的xml不包含所有元素,即父元素不包含已定义minOccurs =“0”的子元素。 不过,这是我需要的那些孩子元素。

所以我发现了org.apache.xmlbeans。

它有很好的文档记录(与org.apache.xerces相比,这是一个痛苦的工作)。

我可以使用xmlbeans的SchemaType从xsd文件中提取xml类型信息,并为我的JTable手动创建org.w3c.dom.Nodes。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM