说明:此为张晓飞webservice入门视频教程学习的记录。
xsd约束文件
<?xml version="1.0" encoding="UTF-8" ?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.atguigu.com/bookSchema" 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>
<!-- xmlns引入约束文件,约束要用到的约束文件中定义的标签。 targetNamespace指定本约束文件的唯一标识符,形式为URL,实际上只是利用形式域名网址为了能够保证唯一不重复性,别的xml文件引入改xsd约束文件时需要此值来填充xmlns值以示受此约束文件约束各个标签。 element指定一个标签元素。 complexType表示值为复合类型,子标签可以有很多标签 sequence指定约束的xml文件中标签的值是按此xsd文件中顺序书写。 -->
xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<书架 xmlns="http://www.atguigu.com/bookSchema" xmlns:dd="http://www.w3.org/2001/XMLSchema-instance" dd:schemaLocation="http://www.atguigu.com/bookSchema book.xsd">
<书>
<书名>JavaScript开发</书名>
<作者>老佟</作者>
<售价>28.00元</售价>
</书>
</书架>
<!-- xmlns指定约束本xml文件的约束文件xsd文件,为xsd文件的targetNamespace值。 而只写xmlns值,此xmlns值为xsd文件targetNamespace值,而此值并非指定了xsd文件的具体位置,只是一个唯一标识符而已。所以需要引入schemaLocation来指定xsd文件具体位置,此值的书写方式为“xsd中targetNamespace唯一标识值 xsd具体物理地址”。而schemaLocation是w3c官方定义的,所以需要引入w3c官方xsd文件约束它,即加入xmlns:dd的值(是固定的),而其中dd是官方xsd的别名。放在schemaLocation前,即schemaLocation则被官方xsd约束。 -->