1

我对导入的 xsd 有问题。我有 3 个 xsd service.xsd、header.xsd 和 inputmessage.xsd inputmessage.xsd 包含根元素。

service.xsd 导入 header.xsd 和 inputmessage xsd。

在 Eclipse 中生成 service.xsd 的示例 xml 时,我收到以下错误“不存在根元素,因为提供的方案没有全局元素”。

4

1 回答 1

1

您看到的错误通常是由于使用了未声明外部元素(“根元素”)的模式文档。您正在使用的模式可能只定义复杂类型(可能带有封闭的元素)。创建元素wrt文件的意义在于,元素定义了xml文件中某个类型的具体实现(即schema中的元素名称成为xml文件中的标签名称)。复杂类型定义了适用于该类型元素的结构。

在您的 service.xsd 文件中,尝试插入以下内容(您可能需要使用前缀绑定以与您的架构文件保持一致):

<element name="rootElement" type="tns:LocallyDefinedType" />

其中“tns”绑定到模式目标命名空间,“LocallyDefinedType”是模式文档中定义的复杂类型的名称(您希望在生成的 xml 文档中看到的类型)。

如果这没有帮助,请发布您的模式文档(或一些适当的虚拟示例),并且可以提供更有针对性的元素声明。

于 2012-12-29T17:28:24.070 回答