我想知道是否可以针对字符串的第一个字符执行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>
有人知道这是否可行?谢谢大家的帮助!
答案 0 :(得分:2)
用图案构面替换maxLength构面:
<xs:pattern value="[NS].{0,45}"/>
它应该适合您的需要。的。意味着新线以外的任何东西有关XSD规范支持的正则表达式的更多信息,请查看here。