diff options
author | Nikolai Weibull <now@disu.se> | 2018-10-12 23:46:24 +0200 |
---|---|---|
committer | Daniel Veillard <veillard@redhat.com> | 2018-11-29 21:03:11 +0100 |
commit | 46da8fc5290ed3243d0c137d712a1ed05c489f5f (patch) | |
tree | 085dcfc403b682ad40c7104447e86058dea5c255 /test/relaxng/anyName0_0.xml | |
parent | 4338c310eb5e9402d0d4bf1cdf6d60430ac8a9a8 (diff) | |
download | libxml2-46da8fc5290ed3243d0c137d712a1ed05c489f5f.tar.gz |
Allow choice within choice in nameClass in RELAX NG
The pattern nameClass allows for nested choice elements, for example
<name>
<choice>
<choice>
<name>a</name>
<name>b</name>
</choice>
<name>c</name>
</choice>
</name>
which is semantically equivalent to
<name>
<choice>
<name>a</name>
<name>b</name>
<name>c</name>
</choice>
</name>
The old code didn’t handle this correctly, as it never expected a choice inside
another choice. This patch fixes this by flattening any nested choices.
This pattern of nested choice elements comes up in RELAX NG simplification,
where all choice elements are rewritten in this nested manner, see section 4.12
of the RELAX NG specification.
Diffstat (limited to 'test/relaxng/anyName0_0.xml')
-rw-r--r-- | test/relaxng/anyName0_0.xml | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/test/relaxng/anyName0_0.xml b/test/relaxng/anyName0_0.xml new file mode 100644 index 00000000..fb08e36d --- /dev/null +++ b/test/relaxng/anyName0_0.xml @@ -0,0 +1 @@ +<b/> |