Schema xsd约束文档例子

根据Schema写出xsd xml约束文档来,难点在于xml文件如何引入schema约束,下面分享一个例子

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" 
    targetNamespace="http://www.itheima.com/book"
    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>

xml中引入schema约束的步骤:
1、查看schema文档,找到根元素,在xml中写出来

<?xml version="1.0" encoding="UTF-8"?>
<书架>

</书架>

2、根元素来自哪个名称空间。使用xmlns指令来声明
名称空间是在schema中定义的,就是targetNamespace的值

<?xml version="1.0" encoding="UTF-8"?>
<itheima:书架 xmlns:itheima="http://www.itheima.com/book">

</itheima:书架>

3、引入的名称空间和哪个xsd文件对应?
使用schemaLocation来指定:两个取值:第一个为名称空间 第二个为xsd文件的路径

<?xml version="1.0" encoding="UTF-8"?>
<itheima:书架 xmlns:itheima="http://www.itheima.com/book"
    schemaLocation="http://www.itheima.com/book book.xsd">
</itheima:书架>

4、schemaLocation哪里来的?它来自一个标准的名称空间

<?xml version="1.0" encoding="UTF-8"?>
<itheima:书架 xmlns:itheima="http://www.itheima.com/book"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.itheima.com/book book.xsd">

</itheima:书架>

5、只要以上4部搞好了,对于子标签eclipse就有提示了
右击xml—–eclipse——Run Validation
这里写图片描述
1、xsd约束文档
这里写图片描述
2、xsd实例对象
这里写图片描述
3、xsd实例对象里面的约束引用规则
(1)名称空间:一般是域名
(2)xsd文件路径:xsd文件路径是和空间名称对应的,xsd文件路径包含空间名称和xsd存放的路径;
(3)schemalocation:xsd文件的标准路径

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值