当前位置:  开发笔记 > Android > 正文

XmlSchema Whitespace崩溃:多个空格会发生什么?

如何解决《XmlSchemaWhitespace崩溃:多个空格会发生什么?》经验,为你挑选了1个好方法。

我使用以下XmlSchema:




  
    
      
        
      
    
  

  
    
      
      
    
  

它定义了一个requiredStringType,它必须至少有一个字符长,并且还定义了空白崩溃.

当我验证以下Xml文档时,验证成功:



         

w3.org定义了空白崩溃:

"在替换所暗示的处理之后,#x20的连续序列被折叠为单个#x20,并且前导和尾随#x20被删除."

这是否意味着3个空格被折叠为一个或零个空格?在XmlSpy中,验证失败,在.Net中它成功.



1> Eddie..:

由于它表示删除了前导和尾随空格,这意味着只包含空格的字符串将折叠为空字符串.XmlSpy在验证中是准确的,而.NET是慷慨的(或者是出错).

这是根据验证期间空白规范化,从XML Schema第一部分:结构第二版.

保留
不进行标准化,值为·标准化值·
替换
#x9(空格)替换所有出现的#x9(制表符),#xA(换行符)和#xD(回车符)>.
崩溃
在替换上面指定的替换之后,将#x20s的连续序列折叠为单个#x20,并删除初始和/或最终#x20s.

因此,首先将所有空格替换为空白字符,将第二个连续序列替换为单个空白字符,第三个和最后一个,删除初始和最终空白.在此序列之后,在验证期间必须将仅包含空格的字符串规范化为空字符串.

推荐阅读
贾志军
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有