xsd驗證允許空值

 /////xsd 文檔
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="userInput">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="name" type="xs:string" />
        <xs:element name="author" type="xs:string" />
        <xs:element name="publisher" type="xs:string" />
        <xs:element name="pubDate" type="xs:date" nillable="true" />
        <xs:element name="price" type="xs:decimal" nillable="true" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

////xml文件
<userInput   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">         
    <name></name>
    <author>bb</author>
    <publisher>cc</publisher>
    <pubDate>2001-01-01</pubDate>
    <price xsi:nil="true"></price>
</userInput>
//////////
1.如果沒有 xsi:nil="true",空值驗證通不過
2.如果沒有 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  提示 xsi 是未聲明的 命名空間
3.如果設定了xsi:nil="true"後,有值,會提示 "price"必須沒有任何字符或元素子級
4.參考文檔 XML解析之xsi:nil="true" 
  http://blog.csdn.net/amachaoiv/archive/2008/01/22/2059382.aspx
5.http://www.ibm.com/developerworks/cn/webservices/ws-tip-null.html

 

from:http://www.cnblogs.com/ugvanxk/archive/2009/04/14.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章