book.xsd
<?xml version="1.0" encoding="UTF-8" ?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.smith.com/bookSchema"
elementFormDefault="qualified">
<!-- <书架>
<书>
<书名>一般文本</书名>
<作者>一般文本</作者>
<售价>一般文本</售价>
</书>
<书></书>
</书架> -->
<element name="书架">
<complexType>
<sequence maxOccurs="unbounded">
<element name="书">
<complexType>
<sequence>
<element name="书名" type="string"></element>
<element name="作者" type="string"></element>
<element name="售价" type="string"></element>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>
<!--
schema规范中:
1.所有标签和属性都需要有schema文件来定义
2.所有的schema文件都需要有一个id,但在这里他叫namespace
3.namespace的值由什么来指定?
由targetNamespace属性来指定,它的值是一个url(很有可能不存在)
4.如何引入一个schema约束?
属性 :用xmlns属性
属性值:对应的schema文件的id(namespace值)
5.如果引入的schema不是w3c组织定义的,必须指定schema文件的位置
6.schema文件的位置由什么属性指定?
属性 :schemaLocation
属性值:namespace path
7.如果引入了n个元素,至少需要给n-1个取别名
-->
book.xml
<?xml version="1.0" encoding="UTF-8"?>
<书架 xmlns="http://www.smith.com/bookSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.smith.com/bookSchema book.xsd">
<书>
<书名>Smith</书名>
<作者>smith</作者>
<售价>smith</售价>
</书>
</书架>