xml - 在 XSD 中定义逗号分隔值

标签 xml xsd xsd-validation xml-validation

我正在尝试进行限制,要求输入两个以逗号分隔的正整数值。我浏览了其他帖子,但似乎我想做的事情比其他问题更简单。这是我到目前为止所拥有的:

<xs:element name="cell" maxOccurs="unbounded">
       <xs:simpleType>
               <xs:restriction base="xs:positiveInteger">
                      <xs:pattern value="[1-1000],[1-1000]"/>
               </xs:restriction>
       </xs:simpleType>
</xs:element>

我希望结果值如下所示(示例):<cell>4,15</cell> .

我有第二个元素 <dimensions>这很相似,但我想要用字母“x”分隔整数,而不是逗号。因此,此元素的值的示例为 <dimensions>20x20</dimensions> .

首先,我是否使用了正确的基本数据类型?我还使用 xs:string 尝试了一大堆组合。没有运气。其次,如何表达模式?

最佳答案

此 XSD 将允许在单元格内使用一对逗号分隔的非负整数:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="cell">
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:pattern value="\d+,\d+"/>
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
</xs:schema>

类似的xs:pattern当然可以用于维度:

        <xs:pattern value="\d+x\d+"/>

关于xml - 在 XSD 中定义逗号分隔值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36587312/

相关文章:

需要 Android XPath 帮助

c# - 美化多个 XSD 文件

XSD 元素依赖限制

java - 如何解析可能有或没有命名空间的 XML 内容?

xml - 如何在 XSD 中为具有子元素序列的元素添加属性声明?

xml - "<xs:sequence/>"是什么意思?

java - Xsd条件执行

java - 如何向 org.apache.wink 生成的 ATOM feed 添加处理指令

java - 将 Admob 6.2.1 SDK 添加到我的项目时遇到问题

java - Android自定义工具栏导致java.lang.NoClassDefFoundError