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

来源:互联网 发布:普通话水平测试的软件 编辑:程序博客网 时间:2024/06/05 08:37

复合元素

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
原创粉丝点击