当前位置: 首页 > news >正文

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

本文转自陈哈哈博客园博客,原文链接http://www.cnblogs.com/kissazi2/archive/2012/02/17/2977149.html如需转载请自行联系原作者

kissazi2

相关文章:

  • GO JsonStr 2 obj
  • FlexPaper:使用flash在线展示pdf
  • 《JavaScript高级程序设计》笔记:引用类型(五)
  • 数据库事务的四大特性
  • 嵌入Web资源的方法
  • js实现的时钟
  • python 输出当前行号
  • WannaCry勒索比特币蠕虫病毒解决方案
  • 构建之法阶段小记五
  • 带你理解JavaScript闭包
  • 用Browserify来实现CommonJS的浏览器加载
  • 几个收藏
  • Laravel源码入门-启动引导过程(六)LoadEnvironmentVariables
  • 判断窗体 show完成
  • java.util.Date和java.sql.Date的区别和相互转化 (转)
  • 4. 路由到控制器 - Laravel从零开始教程
  • CEF与代理
  • Javascript 原型链
  • Java基本数据类型之Number
  • jdbc就是这么简单
  • MySQL主从复制读写分离及奇怪的问题
  • Node + FFmpeg 实现Canvas动画导出视频
  • Python_OOP
  • Spring Cloud Feign的两种使用姿势
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • 表单中readonly的input等标签,禁止光标进入(focus)的几种方式
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 聊聊sentinel的DegradeSlot
  • 目录与文件属性:编写ls
  • 排序(1):冒泡排序
  • python最赚钱的4个方向,你最心动的是哪个?
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • 不要一棍子打翻所有黑盒模型,其实可以让它们发挥作用 ...
  • 仓管云——企业云erp功能有哪些?
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • # Panda3d 碰撞检测系统介绍
  • ## 临床数据 两两比较 加显著性boxplot加显著性
  • #Linux(权限管理)
  • (1)(1.13) SiK无线电高级配置(六)
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (env: Windows,mp,1.06.2308310; lib: 3.2.4) uniapp微信小程序
  • (floyd+补集) poj 3275
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (二)fiber的基本认识
  • (免费领源码)Python#MySQL图书馆管理系统071718-计算机毕业设计项目选题推荐
  • (一)基于IDEA的JAVA基础1
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • .mysql secret在哪_MySQL如何使用索引
  • .NET 8.0 中有哪些新的变化?
  • .net core 客户端缓存、服务器端响应缓存、服务器内存缓存
  • .net framework 4.0中如何 输出 form 的name属性。
  • .net对接阿里云CSB服务