XML---Schema约束

新建xml文件,与其对应的约束文件  new Schema xml

xmlns:名称空间 / 命名空间

targetNamespace:目标名称空间  下面定义的那些元素都与这个名称空间绑定上

elementFormDefault:元素的格式化情况

名称空间的作用就是在写元素的时候   可以指定该元素使用哪一套约束规则。

teacher.xml

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

<!-- xmlns:xsi  :这里的写法固定
	xmlns :  这里是目标名称空间  就是schema项目里面
	xsi:schemaLocation  :  有两段,前半段是名称空间,也是目标空间的值   后半段是约束文档的路径 -->
<teachers
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:aa="http://www.example.org/teacher"
	xmlns:bb="http://www.example.org/teacher"   
	xsi:schemaLocation="http://www.example.org/teacher teacher.xsd"
>
	<teacher>
		<aa:name>张三</aa:name>
		<age>19</age>
	</teacher>
</teachers>

teacher.sxd

<?xml version="1.0" encoding="UTF-8"?>
<!-- xmlns:名称空间 / 命名空间

	targetNamespace:目标名称空间  下面定义的那些元素都与这个名称空间绑定上

	elementFormDefault:元素的格式化情况 -->


<schema xmlns="http://www.w3.org/2001/XMLSchema" 
	targetNamespace="http://www.example.org/teacher" 
	xmlns:tns="http://www.example.org/teacher" 
	elementFormDefault="qualified">
	
	<element name="teachers">
		<complexType>
			<sequence maxOccurs="unbounded">  <!--  maxOccurs 出现次数 -->
				<!-- 这是一个复杂元素 -->
				<element name="teacher">
					<complexType>
						<sequence>
							<!-- 以下两个是简单元素 -->
							<element name="name" type="string"></element>
							<element name="age" type="int"></element>
						</sequence>
					</complexType>
				</element>
			</sequence>
		</complexType>
	</element>
	
	
</schema>

猜你喜欢

转载自blog.csdn.net/weixin_42230478/article/details/81395808