1

我想知道是否可以对字符串的第一个字符执行 XSD 验证?我有一种感觉,我找不到这个问题的任何相关搜索结果。

我有一个网关服务,它接受几个 XML 数据字符串,这些字符串都与我的 XSD 文件匹配。在这种情况下,我有一个特定的数据字符串,其中第一个字符只能包含字符“S”和“N”,其中字符串的其余部分可以是字母数字。

目前我只是将它定义为一个字符串,限制为 46 个字符:

<xs:element name="navcode">
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:maxLength value="46"/>
      </xs:restriction>
    </xs:simpleType>
</xs:element>

有谁知道这是否可能?感谢大家的帮助!

4

1 回答 1

2

用模式方面替换您的 maxLength 方面:

    <xs:pattern value="[NS].{0,45}"/>

它应该满足您的需要。这 。表示除新行之外的任何内容。有关 XSD 规范支持的正则表达式的更多信息,请查看此处

于 2012-10-26T17:02:34.053 回答