一个完整的schema验证xml的例子

本文通过一个具体的例子——J.xsd文件,详细解释了XML Schema的使用,展示了如何对XML文档进行结构和数据类型的验证,帮助读者深入理解XML Schema在XML文档验证中的应用。
摘要由CSDN通过智能技术生成
xml文件:
<reference xmlns="http://www.w3school.com.cn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3school.com.cn J.xsd">
	<author authorLoc="1">陈路瑶</author>
	<title>信息文档结构信任模式的提取及逻辑描述</title>
	<type>J</type>
	<publisher>计算机应用研究</publisher>
	<publish_year>2010</publish_year>
	<volumn_mark>27</volumn_mark>
	<page_number>4624-4629</page_number>
</reference>


schema文件(J.xsd):

<?xml version="1.0" encoding="GB2312"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3school.com.cn" targetNamespace="http://www.w3school.com.cn" elementFormDefault="qualified">
	<xs:element name="reference">	
		<xs:complexType>
			<xs:sequence>
				<xs:element name="author" type="authorInfo" minOccurs="1" maxOccurs="1"/>
				<xs:element name="title" type="xs:string" minOccurs="1" maxOccurs="1"/>
				<xs:element name="type" type="xs:string" minOccurs="1" maxOccurs="1"/>
				<xs:element name="publish" type="xs:string" minOccurs="0" maxOccurs="1"/>
				<xs:element name="publisher" type="xs:string" minOccurs="1" maxOccurs="1"/>
				<xs:element name="publish_year" type="xs:string" minOccurs="1" maxOccurs="1"/>
				<xs:element name="volumn_mark" type="xs:string" minOccurs="1" maxOccurs="1"/>
				<xs:element name="page_number" minOccurs="1" maxOccurs="1">
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:pattern value="(\d{1,4}-)?\d{1,4}"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="authorInfo">
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute name="authorLoc" use="required">
					<xs:simpleType>
						<xs:restriction base="xs:integer">
							<xs:enumeration value="1"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:attribute>
			</xs:extension>
		</xs:simpleContent>		
	</xs:complexType>
</xs:schema>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值