XML shema 约束入门 (2 ) 约束文件加入与说明

复合元素

book.xsd

<?xml version="1.0" encoding="UTF-8" ?> 
<schema xmlns="http://www.w3.org/2001/XMLSchema"
            targetNamespace="http://www.atguigu.cn"
            elementFormDefault="qualified">
    <element name="书架">
        <complexType>
            <sequence maxOccurs="unbounded">
                <element name="书">
                    <complexType>
                        <sequence>
                            <element name="书名" type="string" />
                            <element name="作者" type="string" />
                            <element name="售价" type="string" />
                        </sequence>
                    </complexType>
                </element>
            </sequence>
        </complexType>
    </element>
</schema>

shema约束文件的说明

1.第二行引入W3C标准约束文件约束shema这个标签。注入如果xmlns:name(这里的name是真这个shema的别名,这个是shema标签就变成shema:name)。

2.第三行targetNamespace术语叫命名空间,但实际就是一个名称的意思,这个的名称是一个URL形式的,但是这个URL可以不实际存在。

3.第四行elementFormDefault="qualified"> 是一个枚举的值,默认unqualified,说明这个命名空间,只约束到根标签,qualified 说明约束全标签,就是说这个命名空间能不能使用全部标签的意思。

2. shema对应的XML

<?xml version="1.0" encoding="UTF-8" ?> 
<books>
  <book>三国演义<book>
<books>
这个XML是还没有加入约束文件

XML加入约束文件中的主要步骤

找到shema的命名空间。
找到这个命名空间的实际文件。

    <?xml version="1.0" encoding="UTF-8"?>
<书架 xmlns="http://www.atguigu.cn"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 ```xsi:schemaLocation="http://www.atguigu.cn book.xsd">```
    <>
        <书名>JavaScript开发</书名>
        <作者>老佟</作者>
        <售价>28.00元</售价>
    </>
</书架>
第二行引入了shema文件约束的命名空间。但是在引入schemaLocation(命名空间文件)的时候,是出现一个问题,就是这个标签没人约束,W3C规定了,这个标签,所以我们只需要直接引用W3C URL就行了,这里也用到了别名机制,这里W3C命名空间起了别名,这样这引用schemaLocation的时候就可以用别名的机制。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值