schema .xsd文件定义xml文件约束
schema .xsd文件定义xml文件约束
Schema约束文件
schema约束文件示范
<?xml version="1.0" encoding="UTF-8" ?>
<!-- elementFormDefault该schema是一个质量良好的约束文件-->
<!-- targetNamespace目标命名空间,标识作用,别人引用我就用这个-->
<schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.freeprogramming.cn/schema/student"
>
<!-- 定义persons元素-->
<element name="persons">
<!-- 声明这个元素是一个复杂元素-->
<complexType>
<!-- 声明子元素要按照顺序写-->
<sequence>
<element name="person">
<complexType>
<sequence>
<!-- 声明子元素name、age,类型为字符串-->
<element name="name" type="string"></element>
<element name="age" type="string"></element>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>
引入schema约束文件
- 语法
1,在根标签上定义属性
xmlns="http://www.w3.org/2001/XMLSchema-instance"
2,通过xmlns引入约束文件的名称空间
3,给某一个xmlns属性添加一个标识,用于区分不同的名称空间格式为: xmlns:标识=“名称空间地址”。
标识可以是任意的,但是一般取值都是xsi
4,通过xsi:schemaLocation指定名称空间所对应的约束文件路径
格式为: xsi:schemaLocation = "名称空间url文件路径“
- 示范
<?xml version="1.0" encoding="utf-8" ?>
<persons
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.freeprogramming.cn/schema/student"
xsi:schemaLocation="http://www.freeprogramming.cn/schema/student studentschema.xsd"
>
<person id="1">
<name>张三</name>
<age>18</age>
</person>
</persons>
定义元素属性
- 语法格式
<attribute name="id" type="string" use="required"></attribute>
<!-- 其中name是属性的名字 -->
<!-- 其中type是属性的类型 -->
<!-- 其中use 可以是required 必须的 optional 可选的 -->
- 示范 studentschema.xsd
<?xml version="1.0" encoding="UTF-8" ?>
<!-- elementFormDefault该schema是一个质量良好的约束文件-->
<!-- targetNamespace目标命名空间,标识作用,别人引用我就用这个-->
<schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.freeprogramming.cn/schema/student"
>
<!-- 定义persons元素-->
<element name="persons">
<!-- 声明这个元素是一个复杂元素-->
<complexType>
<!-- 声明子元素要按照顺序写-->
<sequence>
<element name="person">
<complexType>
<sequence>
<!-- 声明子元素name、age,类型为字符串-->
<element name="name" type="string"></element>
<element name="age" type="string"></element>
</sequence>
<!-- 声明person元素有个属性叫id类型为字符串且必须有-->
<attribute name="id" type="string" use="required"></attribute>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>
- 示范 student.xml
<?xml version="1.0" encoding="utf-8" ?>
<persons
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.freeprogramming.cn/schema/student"
xsi:schemaLocation="http://www.freeprogramming.cn/schema/student studentschema.xsd"
>
<person id="1">
<name>张三</name>
<age>18</age>
</person>
</persons>
本文来自博客园,作者:HumorChen99,转载请注明原文链接:https://www.cnblogs.com/HumorChen/p/18039595