Java 如何不将DocumentRoot写入XML

Java 如何不将DocumentRoot写入XML,java,eclipse,eclipse-plugin,eclipse-emf,Java,Eclipse,Eclipse Plugin,Eclipse Emf,我正在使用EMF,并且我从XSD创建了ecore 我注意到编辑器保存的XML包含DocumentRoot元素,它不是我原始XSD的一部分。我是否可以不生成它,这样它就不会出现在编辑器的XML文件中 伊多 如果没有全局元素或 属性,然后 无法获取文档根目录。但是 当然,您的架构没有指定 在这种情况下编写文档的单一方法 case,它只定义了类型和 可以在其他地方使用的东西 模式。一些模式需要修改 声明一个全局元素,以便 指定文档的根目录 资料来源: 如果您的 模型有一个,您正在使用 过程中的扩展元数

我正在使用EMF,并且我从XSD创建了ecore

我注意到编辑器保存的XML包含DocumentRoot元素,它不是我原始XSD的一部分。我是否可以不生成它,这样它就不会出现在编辑器的XML文件中

伊多

如果没有全局元素或 属性,然后 无法获取文档根目录。但是 当然,您的架构没有指定 在这种情况下编写文档的单一方法 case,它只定义了类型和 可以在其他地方使用的东西 模式。一些模式需要修改 声明一个全局元素,以便 指定文档的根目录

资料来源:

如果您的 模型有一个,您正在使用 过程中的扩展元数据选项 加载。文档根目录已被删除 与以下各项相对应的特征: 您的全局元素,以及 文件的特点 根,当 反序列化将完全对应 指向中显示的根元素 序列化。使用 EOObject.eContents().get(0)在 文档根实例将返回 文档根目录的子对象, 还有那个孩子的电子娱乐功能() 将与您的全球 元素

记住这一点很好 元素对应于 类型对应于分类器。 因为电子课堂对应于 复杂类型,具有 EClass(复杂类型)不可用 足够的信息说什么 应序列化为的元素; 这取决于 EconContainentFeature(),这就是 需要文档根来指定 根元素,因为没有 EconContainer不可能有 有意义的eContainmentFeature()

资料来源:

试试这个