问题描述
这是我的 XML 代码-这部分格式良好,在进行验证时没有错误。
UserProfile
这是我的 XSD 代码:问题出在这里。我收到此错误消息“元素”:内容无效。预期是(注释?,((simpleType | complexType)?,(唯一 | 键 | keyref)*))。”
我是使用 xml 和 xsd 的初学者。问题如下:
使用以下架构命名空间:
- http://www.w3.org/2001/XMLSchema-instance
- 最少和最多员工人数:
- 最少:1
- 最大值:无界
- 工资在 10,000 到 90,000 之间(含)。
- 将以下元素的类型声明为全局类型:
解决方法
这里有很多错误,例如:
-
有一个 xs:element 声明 name="Name",它同时具有
type
属性和包含的xs:complexType
声明。 -
带有
name
属性(例如name="wage"
)的 xs:simpleType 声明只能作为xs:schema
的子项出现。 -
University of Mauritius
不是有效的属性名称 -
9500.25
不是有效的类型名称
这完全是错误的,以至于不得不问一个元问题:你是如何完成学习这门语言的任务的?因为在我看来,好像你正在阅读一些例子,并试图通过阅读例子来猜测语言是如何工作的,但这是行不通的。我在学习 XSD 时发现两件事很有用:(a) 阅读一本好书而不是主题(例如 Priscilla Walmsley 的那本书),(b) 使用从实例生成模式的工具(例如 Oxygen 中的工具)进行实验文件。
,您不能将 <xs:element/>
元素直接嵌套在另一个 <xs:element/>
中。它必须是使用包含 <xs:complexType/>
之类的 <xs:sequence/>
之类的类型规范的一部分。