Package: libxml2-utils Version: 2.9.4+dfsg1-2.2 It looks like there is an issue in parsing (interpreting?) the following regex:
<xs:simpleType name="UniqueIdentifier">
<xs:restriction base="xs:string">
<xs:minLength value="3"/>
<xs:maxLength value="64"/>
<xs:pattern value="(([1-9][0-9]*)|0)(\.([1-9][0-9]*|0))+"/>
</xs:restriction>
</xs:simpleType>
Steps:
$ xmllint --noout --schema bug.xsd bug.xml
bug.xml validates
Clearly xmllint should have failed the validation. I did test the
regex online and in python interpreter it should not have worked.
Python 2.7.12+ (default, Aug 4 2016, 20:04:34)
[GCC 6.1.1 20160724] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import re
>>> p=re.compile("(([1-9][0-9]*)|0)(\.([1-9][0-9]*|0))+")
>>> p.match("123") == None
True
<?xml version="1.0" encoding="UTF-8"?> <report> <study uid="123"/> </report>
bug.xsd
Description: Binary data

