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

如何使用Schema基于属性值验证元素?

如何解决《如何使用Schema基于属性值验证元素?》经验,为你挑选了1个好方法。

我试图验证的XML如下:


    
        
    
    
        
    

如何使用Schema验证?

注意:

attribute ="foo"时,element只能包含bar.

attribute ="hello"时,element只能包含world



1> JeniT..:

您无法在XML Schema 1.0中执行此操作.在XML Schema 1.1中,你将能够使用该元素来完成它,但我猜你想要一些你现在可以使用的东西.

您可以使用Schematron作为第二层验证,它允许您测试有关XML文档的任意XPath断言.有一篇关于在XSD中嵌入Schematron的相当古老的文章,你可能会发现它很有帮助.

你会做类似的事情:


  
    This element's attribute is 'foo' but it holds an element that isn't a bar.
  
  
    This element's attribute is 'hello' but it holds an element that isn't a world.
  

或者当然你可以切换到RELAX NG,它在睡眠中这样做:


  
    
      foo
      
    
    
      hello
      
    
  

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