首页  >  文章  >  后端开发  >  根据Schema写出XML文档四部曲

根据Schema写出XML文档四部曲

黄舟
黄舟原创
2017-02-16 15:35:301958浏览

Schema约束文档本身就是一个XML文档,扩展名为xsd


难点:XML文档的根元素怎么写?

如下4步曲:

a、首先看Schema文档,找到根元素
<?xml version="1.0"encoding="UTF-8"?>
<书架></书架>
b、思考:书架来自于哪个名称空间?看Schema文档,targetNamespace就是名称空间。

用xmlns关键字(xmlns名称空间声明)来声明我的元素来自哪个名称空间(xmlns:xml namespace)

<?xml version="1.0"encoding="UTF-8"?>
<itcast:书架 xmlns:itcast="http://www.itcast.cn"></itcast:书架>

 

c、思考:名称空间与哪个xsd文件对应呢?使用schemaLocation关键字来关联名称空间和xsd的对应关系
<?xml version="1.0"encoding="UTF-8"?>
<itcast:书架 xmlns:itcast="http://www.itcast.cn"
                     schemaLocation="http://www.itcast.cnbook.xsd"></itcast:书架>


剩下的任务就交给eclipse自动生成就行了。

案例如下:

已知Schema约束文档如下,写出对应的xml文档


<?xml version="1.0" encoding="UTF-8" ?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
					  targetNamespace="http://www.itcast.cn"
					  elementFormDefault="qualified">
	<xs:element name=&#39;书架&#39; >
		<xs:complexType>
			<xs:sequence maxOccurs=&#39;unbounded&#39; >
				<xs:element name=&#39;书&#39; >
					<xs:complexType>
						<xs:sequence>
							<xs:element name=&#39;书名&#39; type=&#39;xs:string&#39; />
							<xs:element name=&#39;作者&#39; type=&#39;xs:string&#39; />
							<xs:element name=&#39;售价&#39; type=&#39;xs:integer&#39; />
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>


xml文档如下:



<?xml version="1.0" encoding="UTF-8"?>
<itcast:书架 xmlns:itcast="http://www.itcast.cn"
				xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
				xsi:schemaLocation="http://www.itcast.cn book.xsd">
	<itcast:书>
		<itcast:书名>JavaScript网页开发</itcast:书名>
		<itcast:作者>张孝祥</itcast:作者>
		<itcast:售价>28</itcast:售价>
	</itcast:书>

</itcast:书架>


最终版本:以秒杀的方式建立。

直接通过Myeclipse工具创建即可。

 以上就是根据Schema写出XML文档四部曲的内容,更多相关内容请关注PHP中文网(www.php.cn)!


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn