The 'osxen' RNG type defines options for the <os> element in certain
modes. Allow interleaving of subelements recursively.
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/conf/schemas/domaincommon.rng | 40 +++++++++++++++++++------------
1 file changed, 25 insertions(+), 15 deletions(-)
diff --git a/src/conf/schemas/domaincommon.rng b/src/conf/schemas/domaincommon.rng
index f966285641..765306f094 100644
--- a/src/conf/schemas/domaincommon.rng
+++ b/src/conf/schemas/domaincommon.rng
@@ -257,30 +257,40 @@
<ref name="osexe"/>
</choice>
</define>
+
<define name="osxen">
<choice>
<group>
- <optional>
- <ref name="bootloader"/>
- </optional>
- <element name="os">
- <ref name="ostypexen"/>
- <ref name="osbootkernel"/>
- </element>
- </group>
- <group>
- <ref name="bootloader"/>
- <optional>
+ <interleave>
+ <optional>
+ <ref name="bootloader"/>
+ </optional>
<element name="os">
- <ref name="ostypexen"/>
- <optional>
+ <interleave>
+ <ref name="ostypexen"/>
<ref name="osbootkernel"/>
- </optional>
+ </interleave>
</element>
- </optional>
+ </interleave>
+ </group>
+ <group>
+ <interleave>
+ <ref name="bootloader"/>
+ <optional>
+ <element name="os">
+ <interleave>
+ <ref name="ostypexen"/>
+ <optional>
+ <ref name="osbootkernel"/>
+ </optional>
+ </interleave>
+ </element>
+ </optional>
+ </interleave>
</group>
</choice>
</define>
+
<define name="oshvm">
<interleave>
<optional>
--
2.39.1