schema简介
schema也是一种用于定义和描述xml文档结构与内容的模式语言,其出现是为了克服DTD的局限性 dtd语法:<!ELEMENT 元素名称 约束> schema符合xml语法 一个xml中只能有一个dtd,但可以有多个schema,多个schema使用名称空间区分 dtd里面有PCDATA类型,但是在schema里面可以支持更多的数据类型(比如整数类型)schema快速入门
创建一个schema文件,后缀名是 .xsd 根节点名称为schema 属性:xmlns="http://www.w3.org/2001/XMLSchema" 表示当前xml文件是一个约束文件 targetNamespace="" 使用schema约束文件,直接通过这个地址引入约束文件 elementFormDefault="qualified" <?xml version="1.0" encoding="UTF-8"?> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="" elementFormDefault="qualified">内容创建步骤:
1、看有几个元素,用<element>表示 2、复杂类型<element name="person"> <complexType> <sequence> 子元素 </sequence> </complexType </element> 3、简单元素写在复杂元素里面 <element name="name" type="string"></element>在被约束文件中引入约束文件
在根元素上面写<rootName xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="" xsi:schemaLocation="{namespace} {location}"> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 表示xml是一个被约束文件 xmlns="" 是约束文档里面targetNamespace xsi:schemaLocation="{namespace} {location}" targetNamespace 空格 约束文档的地址路径约束
引入多个xmd文档,重名标签使用名称空间区分标签,引入时使用<名称空间:标签> <sequence>:元素出现按顺序 <all>:只能出现一次 <any>:表示任意元素 <chioce>:只能出现其中一个 <attribute name="id1" type="int" use="required">:属性的定义(必须是复杂元素) id1为int型且必须有 写在</complexType>之前 写在标签里面 maxOccurs="unbounded":无限次数