<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2011 (http://www.altova.com) by qmy (sigmartix) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="学生集合">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element ref="学生"/>
<xs:element ref="老师" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="学生">
<xs:complexType>
<xs:sequence>
<xs:element name="姓名" type="xs:string"/>
<xs:element name="性别">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="男"/>
<xs:enumeration value="女"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="年龄">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minExclusive value="0"/>
<xs:maxExclusive value="120"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="学号" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="老师">
<xs:complexType>
<xs:sequence>
<!-- 多个属性的设置,多个属性的时候type就不能有类型了 -->
<xs:element name="姓名">
<xs:complexType>
<xs:attributeGroup ref="personattrgroup"/>
</xs:complexType>
</xs:element>
<xs:element name="性别">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="男"/>
<xs:enumeration value="女"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="年龄">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minExclusive value="0"/>
<xs:maxExclusive value="120"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="person">
<xs:complexType>
<xs:sequence>
<!-- Group 指示器用于定义相关的数批元素。-->
<xs:group ref="persongroup"/>
<xs:element name="county" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="教工号" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:attributeGroup name="personattrgroup">
<xs:attribute name="firstname" type="xs:string"/>
<xs:attribute name="lastname" type="xs:string"/>
<xs:attribute name="birthday" type="xs:date"/>
</xs:attributeGroup>
<xs:group name="persongroup">
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
<xs:element name="birthday" type="xs:date"/>
</xs:sequence>
</xs:group>
</xs:schema>

group指示器,persongroup不以元素形式出现,和element+complexType 是有所区别的

<?xml version="1.0" encoding="UTF-8"?>
<学生集合 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="file:///C:/Users/Administrator/Documents/Altova/XMLSpy2011/Examples/studentNode.xsd">
<学生 学号="A1">
<姓名>CIACs</姓名>
<性别>男</性别>
<年龄>22</年龄>
</学生>
<老师 教工号="A8">
<姓名 firstname="zhangsan" lastname="lisi" birthday="1998-06-07"></姓名>
<性别>男</性别>
<年龄>15</年龄>
<person>
<firstname>zhangsan</firstname>
<lastname>lisi</lastname>
<birthday>1992-02-03</birthday>
<county>china</county>
</person>
</老师>
<学生 学号="A1">
<姓名>CIACs</姓名>
<性别>男</性别>
<年龄>22</年龄>
</学生>
<学生 学号="A1">
<姓名>CIACs</姓名>
<性别>男</性别>
<年龄>22</年龄>
</学生>
</学生集合>

最新文章

  1. Intellij IDEA 配置最简单的maven-struts2环境的web项目
  2. Flatten Binary Tree to Linked List [LeetCode]
  3. C#对象克隆介绍
  4. C++中三种new的用法
  5. Java基础复习笔记系列 七 IO操作
  6. 帕雷托最优(Pareto optimality)、帕雷托效率(Pareto efficiency)
  7. css样式中遇到!important
  8. Ubuntu root密码修改
  9. redis 集群环境搭建-redis集群管理
  10. python 模块导入
  11. oracle 表连接 - hash join 哈希连接
  12. 一个简单程序快速入门JDBC
  13. C++设计模式——职责链模式
  14. 20180519001 - DataTable Group by功能参考
  15. Thread.currentThread()和this的区别——《Java多线程编程核心技术》
  16. mybatis11--多对多关联查询
  17. TensorFlow 运行模型--会话(Session)
  18. JAVA多线程Thread VS Runnable详解
  19. linux下sprintf_s函数的替代
  20. Spring Security构建Rest服务-1203-Spring Security OAuth开发APP认证框架之短信验证码登录

热门文章

  1. [ DLPytorch ] 文本分类&amp;图像增强
  2. 安装插件报错error: Microsoft Visual C++ 14.0 is required. Get it with &quot;Microsoft Visual C++
  3. Centos 下安装php
  4. [PHP]PHP中申明 declare(strict_types=1)的作用
  5. springboot搭建的web数据提交乱码
  6. 第一次试水bof
  7. Java-用星号打印菱形
  8. 使用git下载一个项目
  9. 在Centos 7.7下用minikube部署单节点kubernetes.
  10. 解决Missing artifact com.microsoft.sqlserver:sqljdbc4:jar:4.0问题