关于schema文档

XML Schema 是基于 XML 的 DTD 替代者。 XML Schema 描述 XML 文档的结构。 XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD)

1.创建一个schema:创建一个后缀为xsd的文件,文件格式为xml。

   1.1有文档说明                     // <?xml version="1.0" encoding="UTF-8"?>
   1.2以schema标签为根标签 //    <schema></schema>
   1.3在schema标签中添加命名空间:
a)首先引入xmlns:xs="http://www.w3.org/2001/XMLSchema"。
b)targetNameSpace="http://www.feicui.com/newschema" 声明一个我们自己的命名空间(uri)。
c)xmlns:myns="http://www.feicui.com/newschema"。
d)elementFormDefault="qualified"严格按照我们的schema文档约束我们要编写的xml文件。
   1.4然后我们就可以再schema标签中添加其他标签来编写我们的xml约束
2. 将schema文档引入要约束的xml文件
   2.1在根标签中,加入:
a)xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"要引入我们的shema文档需要使用这个命名空间中的属性。
b)xsi:schemaLocation="http://www.feicui.org/feicuischema newschema.xsd" 使用上面引入的命名空间xsi中的schemalocation读取我们的schema文档, 首先要填入我们的schema文档的命名空间的uri,然后空格,再填入我们的schema文档的名字
c)在通过引入命名空间的方法,将我们的schema文档的命名空间引入。
   
3. 简单元素:xml: <elementname >信息</elementname>  
  schema:   <element name="标签名" type="信息的类型">


4.对 简单元素内容的 约束
4.1首先在我们要约束的元素中添加一个simpleType的标签
4.2然后在simpleType中添加一个restricetion标签,这个标签中有一个重要的属性: base,需要填入我们这个信息类型是 基于哪一种类型的。
4.3在restricetion标签中,我们就可以加入我们对信息内容的一个具体的约束了:
4.3.1枚举约束 enumeration  //<enumeration value="diao"></enumeration>

4.3.2对大小值的限定 

 mininclusive 设定最小值,这种包含最小值的

 minEnclusive 设定最小值,但是不包含最小值

 maxinclusive 设定最大值,包含最大值

 maxEnclusive 设定最大值,但是不包含最大值

4.3.3样式约束   ( pattern constriant)
[a-zA-Z]这一位字符,在a-z的大小写中任选一个填入
male|female这里需要多选一来填入信息内容
([a-z][0-9])+  这里小写字母+一位数字的格式重复(可以1次可以多次)



5.复合元素的约束:
5.1首先我们在要约束的元素中添加一个 complexType的标签。
5.2然后我们要填入指示器(eq:sequence)。
5.3添加子元素,子元素可以使复合元素也可以使简单元素。


6.属性定义
6.1定义的格式:<xs:attribute name="xxx" type="yyy"/>
6.2属性定义可以定义在complexType中
6.3属性定义中use表示这个属性是否需要出现在元素中
optional:可出现可不出现
prohibited:不能出现
required:必须出现
6.4如果要在简单元素中添加属性,还是需要complexType,只是我们需要在这个标签中使用simplecontent标签,其中使用extension标签,用来扩展我们的简单元素,添加属性。


7.顺序指示器
7.1sequence:指定了子元素必须出现并且要按照定义的顺序依次出现。 
7.2all:指定了子元素可以以任意顺序出现,只出现一次。
7.3choice:指定子元素中,仅可以出现一个(可以使用maxOccurs修改)。


8.数量指示器
这种指示器不是以元素(标签)的形式出现,而是以子元素的属性的方式出现。 minOccurs 设置出现的最少次数;maxOccurs设置出现的最多次数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值