У меня есть следующий XML:
<customer>
<name>John Paul</name>
<cpf_cnpj>1376736333334</cpf_cnpj>
</customer>
Элемент <cpf_cnpj>
должен иметь минимальный размер 11 и максимальный размер 15, и в нем могут быть только числовые (от 0 до 9) символы. Мой XSD выглядит так:
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="customer">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="cpf_cnpj" minOccurs="1" maxOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="11"/>
<xs:maxLength value="15"/>
<xs:pattern value="[0-9]{15}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Моя проблема в том, что на узле xs:pattern
я не знаю, что использовать, потому что, несмотря на то, что у меня minLenght 11 и maxLenght 15, из-за {15} XML не анализ, если есть значение от 11 до 14
Как я могу иметь переменный размер от 11 до 15 и применять только числовые символы для этого узла?
Tks!