开发者社区> shy丶gril> 正文

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


作者:kissazi2 
出处:http://www.cnblogs.com/kissazi2/ 
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

转载:http://www.cnblogs.com/kissazi2/archive/2012/02/17/2977149.html

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Mybatis - 无效的列类型: 1111
Mybatis - 无效的列类型: 1111
376 0
MyBatis test表达式中判断相等无效
本文目录 1. 现象 2. 问题处理 3. 解决
104 0
+关注
shy丶gril
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载