本人亲自写的一个简单的测试例子
1、xsd定义
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="LONGTWNG" targetNamespace="http://tempuri.org/LONGTWNG.xsd" elementFormDefault="qualified" xmlns="http://tempuri.org/LONGTWNG.xsd" xmlns:mstns="http://tempuri.org/LONGTWNG.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="WLJ"> <xs:complexType> <xs:sequence> <xs:element name ="Satart" type="xs:string"></xs:element> <xs:element ref="Middlez中间数字" maxOccurs="unbounded"> </xs:element> <xs:element name="End" type="xs:string"></xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="Middlez中间数字"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="\d{3}-\d{8}"></xs:pattern> </xs:restriction> </xs:simpleType> </xs:element></xs:schema>2、xml文件中使用XSD
(1)第一种使用方法
<?xml version="1.0" encoding="utf-8" ?>
<WLJ xmlns="http://tempuri.org/LONGTWNG.xsd" xmlns:xsi="http://tempuri.org/LONGTWNG.xsd-instance"> <Satart>jajj</Satart> <Middlez中间数字>098-66666666</Middlez中间数字> <End>3333</End></WLJ>(2)第二种使用方法
<?xml version="1.0" encoding="utf-8" ?>
<WLJ xmlns="http://tempuri.org/LongtengGenesAndSupreme.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://tempuri.org/LongtengGenesAndSupreme.xsd LongtengGenesAndSupreme.xsd"> <Satart>123</Satart> <Middle>456</Middle> <End>789</End></WLJ>3、XML中直接使用xsd
<?xml version="1.0" encoding="utf-8" ?>
<LONGTWNG> <xs:schema id="LONGTWNG" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-data"> <xs:element name="WLJ"> <xs:complexType> <xs:sequence> <xs:element name ="Satart" type="xs:string"></xs:element> <xs:element ref="Middlez中间数字" maxOccurs="unbounded"> </xs:element> <xs:element name="End" type="xs:string"></xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="Middlez中间数字"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="\d{3}-\d{8}"></xs:pattern> </xs:restriction> </xs:simpleType> </xs:element> </xs:schema> <WLJ> <Satart>eeeee</Satart> <Middlez中间数字>087-22222222</Middlez中间数字> <End>dddd</End> </WLJ></LONGTWNG>4、XML中直接使用DTD
<?xml version="1.0" encoding="utf-8" ?>
<!--内部的 DOCTYPE 声明--><!--DTD 被包含在 XML 源文件中,它应当通过下面的语法包装在一个 DOCTYPE 声明中:--><!--<!DOCTYPE 根元素 [元素声明]>--><!DOCTYPE WLJ [ <!ELEMENT WLJ (start,middle,end)> <!ELEMENT start (#PCDATA)> <!ELEMENT middle (#PCDATA)> <!ELEMENT end (#PCDATA)>]><WLJ> <start>hhee</start> <middle>123</middle> <end>hhhh</end></WLJ><!--以上 DTD 解释如下:
!DOCTYPE note (第二行)定义此文档是 note 类型的文档。!ELEMENT note (第三行)定义 note 元素有四个元素:"to、from、heading,、body"!ELEMENT to (第四行)定义 to 元素为 "#PCDATA" 类型!ELEMENT from (第五行)定义 from 元素为 "#PCDATA" 类型!ELEMENT heading (第六行)定义 heading 元素为 "#PCDATA" 类型!ELEMENT body (第七行)定义 body 元素为 "#PCDATA" 类型-->5、DTD定义
<?xml version="1.0" encoding="utf-8"?>
<!ELEMENT WLJ (start,middle,end)><!--<!ATTLIST WLJ version CDATA #REQUIRED>--><!ELEMENT start (#PCDATA)><!ELEMENT middle (#PCDATA)><!ELEMENT end (#PCDATA)>6、XML中使用DTD文件
<?xml version="1.0" encoding="utf-8" ?>
<!--外部文档声明--><!--假如 DTD 位于 XML 源文件的外部,那么它应通过下面的语法被封装在一个 DOCTYPE 定义中:--><!--<!DOCTYPE 根元素 SYSTEM "文件名">--><!--<!DOCTYPE WLJ SYSTEM "E:\Programme\工作\MyPraticeWork\WLJTool\WLJTLongtengGenesAndSupreme\TestXSDAndDTD\DTD.dtd">--><!DOCTYPE WLJ SYSTEM "DTD.dtd"><WLJ> <start>hhee</start> <middle>123</middle> <end>hhhh</end></WLJ>