2012-04-21 44 views
1

我有一個XML片斷如下圖所示:XML/XSD驗證怎麼不理XML元素

<Type> 
    <name>content1</name> 
    <priority></priority> 
    <schedule>30 0/1 * * * ?</schedule> 
    <length>2</length> 
    <patterns> 
     <pattern>[^\s]*\.DOC</pattern> 
    </patterns> 
</Type> 

一些 '類型' 標籤將不包含

<priority></priority> 
<schedule>30 0/1 * * * ?</schedule> 

元素。但是,當我對給定的'XSD'文件進行驗證時,它會引發錯誤。我如何忽略或檢查標籤是否可用在XSD文件上驗證條件?可能嗎?

我正在使用Java Validator來驗證這一點。

在此先感謝。

+0

這個例子可能會有所幫助:http://java-by-ash.blogspot.com/2012/07/xml-schema-validation.html – ThreaT 2012-07-20 11:15:18

回答

3

在你的XSD文件,使<優先> & <時間表>可選。將minOccurs設置爲0使該元素可選。如果元素存在於xml中,則xsd將驗證它,否則xsd將不會驗證它。

Example: 

<xs:element name="priority" minOccurs="0"/> 
<xs:element name="schedule" minOccurs="0"/> 
+0

非常感謝你和它的作品。 – Sam 2012-04-21 07:15:16