初识Schema

Schema就是用来约束XML文件的,什么是约束?就是对XML文件里元

素的规范,规范它的格式,属性等。我们设置Schema,就是设置XML的

规矩,使得XML只能按照我们的思路进行。
   首先创建一个Schema文档,步骤如下:
   创建一个schema:创建一个后缀为xsd的文件,文件格式为xml。
   a: 有文档说明
   b: 以schema标签为根标签
   c: 在schema标签中添加命名空间:
 1)首先引入xmlns:xs="http://www.w3.org/2001/XMLSchema"


 2)targetNameSpace="http://www.feicui.com/newschema"声

明一个我们自己的命名空间(uri)。
 3)xmlns:myns="http://www.feicui.com/newschema"。
 4)elementFormDefault="qualified"严格按照我们的schema

文档约束我们要编写的xml文件。
   1.4 在schema标签中添加其他标签来编写我们的xml约束
   然后对Schema进行编辑,达到约束XML的目的
   1  对简单内容的约束:
    a: 首先在我们要约束的元素中添加一个simpleType的标签
    b: 然后在simpleType中添加一个restricetion标签,这个标签中

有一个重要的属性:base,需要填入我们这个信息类型是基于哪一种类

型的。
    c: 在restricetion标签中,我们就可以加入我们对信息内容的一

个具体的约束了:
        a:枚举约束 b:对大小值的限定 c:样式约束
   2  复合元素的约束:
      首先在要约束的元素中添加一个complexType的标签。
      然后填入指示器 其中指示器包括:
        顺序指示器:
        a:sequence:指定子元素必须出现并要按照定义的顺序依次出


        b:all:指定子元素可以以任意顺序出现且只出现一次
        c:choice:指定子元素中仅可以出现一次(可用maxOccurs修

改)
        数量指示器:这种指示器不是以元素(标签)的形式出现,而

是以子元素的属性的方式出现。 minOccurs 设置出现的最少次数;

maxOccurs设置出现的最多次数
      
       填入指示器后,添加子元素,子元素可以使复合元素也可以使

简单元素。

    3   属性的定义
         a:定义的格式:<xs:attribute name="xxx" type="yyy"/>
 b:属性定义可以定义在complexType中
 c:属性定义中use表示这个属性是否需要出现在元素中
  optional:可出现可不出现
  prohibited:不能出现
  required:必须出现
 d:如果要在简单元素中添加属性,还是需要complexType,只

是我们需要在这个标签中使用simplecontent标签,其中使用extension

标签,用来扩展我们的简单元素,添加属性。

    4  将schema文档引入要约束的XML文件
       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文档的命名

空间引入。
 
            得道升仙!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值