XML 架构 - 根据 xml 验证 xsd - 内容无效

问题描述

这是我的 XML 代码-这部分格式良好,在进行验证时没有错误

UserProfile

这是我的 XSD 代码:问题出在这里。我收到此错误消息“元素”:内容无效。预期是(注释?,((simpleType | complexType)?,(唯一 | 键 | keyref)*))。”

我是使用 xml 和 xsd 的初学者。问题如下:

使用以下架构命名空间:

  1. http://www.w3.org/2001/XMLSchema-instance
  2. 最少和最多员工人数:
  • 最少:1
  • 最大值:无界
  1. 工资在 10,000 到 90,000 之间(含)。
  2. 将以下元素的类型声明为全局类型:
  • - 将此 complexType 的名称写为 name

  • - 将此 simpleType 的名称写为工资

    model_to_dict

解决方法

这里有很多错误,例如:

  • 有一个 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/> 之类的类型规范的一部分。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...