对多个电话号码进行XSD验证



我有这个xml:'

<ConsumerPhonenumbers>
<ConsumerPhonenumber>0612345678</ConsumerPhonenumber>
<ConsumerPhonenumber>+312012345678</ConsumerPhonenumber>
</ConsumerPhonenumbers>

'电话号码的格式可以不同。下面是允许的+310612345678或
31612345678或
31612345678或
0612345678或
06.12345678或
06-12345678这个数字应该最小为10长,最大为12一个空的ConsumerPhonenumber也可以。

现在我在我的xsd中有这个:'

<xs:element name="ConsumerPhonenumber" minOccurs="0" maxOccurs="5" nillable="false">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="+?d[d -]{8,12}d"></xs:pattern>
</xs:restriction>
</xs:simpleType>
</xs:element>

如果我发送一个空的ConsumerPhonenumber,它会失败,而它应该是正常的。

两个问题:

  1. 我的模式值ok吗?
  2. 如何接受空ConsumerPhonenumber?

谢谢你

感谢LMC提供的解决方案:

+?d[d -]{8,12}d|^$

最新更新