isoschematron RELAXNG validation faulty
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
lxml |
Invalid
|
Undecided
|
Unassigned |
Bug Description
We're trying to create a validator from a Schematron schema. The schema is valid; it works with oXygen XML and several other non-Python implementations we've tried. However, lxml gives us this RELAXNG error:
lxml.etree.
<string>
<string>
<string>
<string>
<string>
Here is the XML in question:
<sch:pattern id="p-oid-
<sch:rule id="r-oid-
<sch:rule id="r-oid-
<sch:extends rule="r-
<sch:assert id="a-81-7372" test="count(
</sch:rule>
</sch:pattern>
from the QRDA Category I schema.
Other useful info:
Python 2.7.6
lxml 3.4.4
libxml 2.9.0
libxslt 1.1.28
Please contact me at <email address hidden> for more info on the error. Thanks!
Please try to reproduce your problem with the xmllint command line tool
that comes with libxml2. If that fails as well (and it most likely will)
this is not a problem in lxml but in libxml2.
That being said, have you tried the implementation in lxml's isoschematron
package? It uses the XSLT based reference implementation of Schematron and
should therefore be as compliant as it gets.