您應該驗證對的一些規則。該規則可在形式:
比如我生成DTD爲您簡單的XML,並得到與規則的新的XML insude:
<?xml version="1.0"?>
<!DOCTYPE jobs [
<!ELEMENT jobs (job)*>
<!ELEMENT job (jobtitle|jobcity|jobstate|jobdescription|joblink)*>
<!ELEMENT jobtitle (#PCDATA)>
<!ELEMENT jobcity (#PCDATA)>
<!ELEMENT jobstate (#PCDATA)>
<!ELEMENT jobdescription (#PCDATA)>
<!ELEMENT joblink (#PCDATA)>
]>
<jobs>
<job>
<jobtitle>General Manager</jobtitle>
<jobcity>Atlanta</jobcity>
<jobstate>GA</jobstate>
<jobdescription><![CDATA[Description text here.]]></jobdescription>
<joblink>http://domain.com</joblink>
</job>
</jobs>
此外,我爲您的XML生成XSD架構。你可以更喜歡使用XSD,因爲它是更強大的驗證工具xml:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="jobs" type="jobsType"/>
<xs:complexType name="jobType">
<xs:sequence>
<xs:element type="xs:string" name="jobtitle"/>
<xs:element type="xs:string" name="jobcity"/>
<xs:element type="xs:string" name="jobstate"/>
<xs:element type="xs:string" name="jobdescription"/>
<xs:element type="xs:string" name="joblink"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="jobsType">
<xs:sequence>
<xs:element type="jobType" name="job"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
什麼是用來做驗證?您是否有XML應該驗證的DTD或模式? –