2
我是一個簡單的XML數據,並希望使用我的XSD文件使用 進行驗證。我想創建任何種類的「面向對象」方式的XSD文件。因爲至少在我看來,最好是理解/閱讀。XSD - <xs:sequence> without <xs:complexType>?
我的XML:
<?xml version="1.0" encoding="UTF-8"?>
<DSExport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="TestXSD.xsd">
<Job Identifier="someString1">
<Project name="someString2">
<tag1 />
<tag2 />
</Project>
</Job>
</DSExport>
MY XSD:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- "MAIN" -->
<xs:element name="DSExport">
<xs:complexType>
<xs:sequence>
<xs:element name="Job" type="JobType">
<!-- NOTE: SOMETHING WENT WRONG HERE -->
<xs:sequence>
<xs:element name="Project" type="ProjectType">
<xs:sequence>
<xs:element name="tag3"></xs:element>
<xs:element name="tag4"></xs:element>
</xs:sequence>
</xs:element>
</xs:sequence>
<!-- NOTE: SOMETHING WENT WRONG HERE -->
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- "FUNCTIONS" (WANT TO SEPERATE THE SPECIALIZED VALIDATION OF ALL ELEMENTS)-->
<xs:complexType name="JobType">
<xs:attribute name="Identifier" type="xs:string" use="required" />
</xs:complexType>
<xs:complexType name="ProjectType">
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
我用eclipse。我像任何的ErrorMessage:
s4s-elt-must-match.1: The content of 'Job' must match (annotation?, (simpleType | complexType)?, (unique |
key | keyref)*)). A problem was found starting at: sequence.
我知道如何解決它,如果我將在「主要」部分寫的每一個部分...... 但我怎麼能解決這個問題就像「面向對象」?我想單獨對每個元素的complexType定義 !
感謝您的幫助!
感謝夥計!這運作良好,在我看來這是非常可讀的!它工作正常! –
@ H.Senkaya請接受答案。 – lexicore