xsd 忽略 元素名称 大小写 校验

可以通过为元素名建立别名的方式,但是用这种方式,该元素必须在schema根元素下

相当于是声明了变量,再在xsd具体校验的地方引用。

例子:(忽略root/data/catalogID元素的大小写。即:catalogID和catalogid节点都可以通过)

原来的xsd文件内容:

<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
 <xs:element name="catalogid" substitutionGroup="catalogID"/>
 <xs:element name="root">
  <xs:complexType>
   <xs:sequence>
    <xs:element name="data">
     <xs:complexType>
      <xs:all>
      <xs:element name="catalogID">
       <xs:simpleType>
        <xs:restriction base="xs:string">
        </xs:restriction>
       </xs:simpleType>
      </xs:element>
      </xs:all>
     </xs:complexType>
    </xs:element>
   </xs:sequence>
  </xs:complexType>
 </xs:element>
</xs:schema>

-----------------------------------------------------------------------------------------------------

修改后的xsd文件:

<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
 <xs:element name="catalogID">
  <xs:simpleType>
   <xs:restriction base="xs:string">
   </xs:restriction>
  </xs:simpleType>
 </xs:element>
 <xs:element name="catalogid" substitutionGroup="catalogID"/>
 <xs:element name="root">
  <xs:complexType>
   <xs:sequence>
    <xs:element name="data">
     <xs:complexType>
      <xs:all>
      <xs:element ref="catalogID"/> 
      </xs:all>
     </xs:complexType>
    </xs:element>
   </xs:sequence>
  </xs:complexType>
 </xs:element>
</xs:schema>

----------------------------------------------------------------------------------------------

测试xml:

<?xml version="1.0" encoding="GB2312"?>
<root>
<data>
 <catalogid>A010407001</catalogid>
</data>
</root>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值