[PATCH] Add 'interleave' to the sub-element for video device in rng file

Kristina Hanicova posted 1 patch 3 years ago
Test syntax-check failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/257f887329c44a6488f26c6fd9362d137df94da5.1615464777.git.khanicov@redhat.com
docs/schemas/domaincommon.rng | 216 +++++++++++++++++-----------------
1 file changed, 109 insertions(+), 107 deletions(-)
[PATCH] Add 'interleave' to the sub-element for video device in rng file
Posted by Kristina Hanicova 3 years ago
Previously, validation of XML failed if sub-elements of video
device were in different order.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1825769
Signed-off-by: Kristina Hanicova <khanicov@redhat.com>
---
 docs/schemas/domaincommon.rng | 216 +++++++++++++++++-----------------
 1 file changed, 109 insertions(+), 107 deletions(-)

diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng
index f7f804adc0..e6db2f5b74 100644
--- a/docs/schemas/domaincommon.rng
+++ b/docs/schemas/domaincommon.rng
@@ -4009,120 +4009,122 @@
    -->
   <define name="video">
     <element name="video">
-      <optional>
-        <element name="driver">
-          <optional>
-            <ref name="virtioOptions"/>
-          </optional>
-          <optional>
-            <attribute name="name">
-              <choice>
-                <value>qemu</value>
-                <value>vhostuser</value>
-              </choice>
-            </attribute>
-          </optional>
-          <optional>
-            <attribute name="vgaconf">
-              <choice>
-                <value>io</value>
-                <value>on</value>
-                <value>off</value>
-              </choice>
-            </attribute>
-          </optional>
-        </element>
-      </optional>
-      <optional>
-        <element name="model">
-          <choice>
-            <attribute name="type">
-              <choice>
-                <value>vga</value>
-                <value>cirrus</value>
-                <value>vmvga</value>
-                <value>xen</value>
-                <value>vbox</value>
-                <value>virtio</value>
-                <value>gop</value>
-                <value>none</value>
-                <value>bochs</value>
-                <value>ramfb</value>
-              </choice>
-            </attribute>
-            <group>
+      <interleave>
+        <optional>
+          <element name="driver">
+            <optional>
+              <ref name="virtioOptions"/>
+            </optional>
+            <optional>
+              <attribute name="name">
+                <choice>
+                  <value>qemu</value>
+                  <value>vhostuser</value>
+                </choice>
+              </attribute>
+            </optional>
+            <optional>
+              <attribute name="vgaconf">
+                <choice>
+                  <value>io</value>
+                  <value>on</value>
+                  <value>off</value>
+                </choice>
+              </attribute>
+            </optional>
+          </element>
+        </optional>
+        <optional>
+          <element name="model">
+            <choice>
               <attribute name="type">
-                <value>qxl</value>
+                <choice>
+                  <value>vga</value>
+                  <value>cirrus</value>
+                  <value>vmvga</value>
+                  <value>xen</value>
+                  <value>vbox</value>
+                  <value>virtio</value>
+                  <value>gop</value>
+                  <value>none</value>
+                  <value>bochs</value>
+                  <value>ramfb</value>
+                </choice>
               </attribute>
-              <optional>
-                <attribute name="ram">
-                  <ref name="unsignedInt"/>
-                </attribute>
-              </optional>
-              <optional>
-                <attribute name="vgamem">
-                  <ref name="unsignedInt"/>
-                </attribute>
-              </optional>
-              <optional>
-                <attribute name="vram64">
-                  <ref name="unsignedInt"/>
-                </attribute>
-              </optional>
-            </group>
-          </choice>
-          <optional>
-            <attribute name="vram">
-              <ref name="unsignedInt"/>
-            </attribute>
-          </optional>
-          <optional>
-            <attribute name="heads">
-              <ref name="unsignedInt"/>
-            </attribute>
-          </optional>
-          <optional>
-            <attribute name="primary">
-              <ref name="virYesNo"/>
-            </attribute>
-          </optional>
-          <optional>
-            <element name="acceleration">
-              <optional>
-                <attribute name="accel3d">
-                  <ref name="virYesNo"/>
-                </attribute>
-              </optional>
-              <optional>
-                <attribute name="accel2d">
-                  <ref name="virYesNo"/>
-                </attribute>
-              </optional>
-              <optional>
-                <attribute name="rendernode">
-                  <ref name="absFilePath"/>
+              <group>
+                <attribute name="type">
+                  <value>qxl</value>
                 </attribute>
-              </optional>
-            </element>
-          </optional>
-          <optional>
-            <element name="resolution">
-              <attribute name="x">
+                <optional>
+                  <attribute name="ram">
+                    <ref name="unsignedInt"/>
+                  </attribute>
+                </optional>
+                <optional>
+                  <attribute name="vgamem">
+                    <ref name="unsignedInt"/>
+                  </attribute>
+                </optional>
+                <optional>
+                  <attribute name="vram64">
+                    <ref name="unsignedInt"/>
+                  </attribute>
+                </optional>
+              </group>
+            </choice>
+            <optional>
+              <attribute name="vram">
                 <ref name="unsignedInt"/>
               </attribute>
-              <attribute name="y">
+            </optional>
+            <optional>
+              <attribute name="heads">
                 <ref name="unsignedInt"/>
               </attribute>
-            </element>
-          </optional>
-        </element>
-      </optional>
-      <optional>
-        <ref name="alias"/>
-      </optional>
-      <optional>
-        <ref name="address"/>
-      </optional>
+            </optional>
+            <optional>
+              <attribute name="primary">
+                <ref name="virYesNo"/>
+              </attribute>
+            </optional>
+            <optional>
+              <element name="acceleration">
+                <optional>
+                  <attribute name="accel3d">
+                    <ref name="virYesNo"/>
+                  </attribute>
+                </optional>
+                <optional>
+                  <attribute name="accel2d">
+                    <ref name="virYesNo"/>
+                  </attribute>
+                </optional>
+                <optional>
+                  <attribute name="rendernode">
+                    <ref name="absFilePath"/>
+                  </attribute>
+                </optional>
+              </element>
+            </optional>
+            <optional>
+              <element name="resolution">
+                <attribute name="x">
+                  <ref name="unsignedInt"/>
+                </attribute>
+                <attribute name="y">
+                  <ref name="unsignedInt"/>
+                </attribute>
+              </element>
+            </optional>
+          </element>
+        </optional>
+        <optional>
+          <ref name="alias"/>
+        </optional>
+        <optional>
+          <ref name="address"/>
+        </optional>
+      </interleave>
     </element>
   </define>
   <!--
-- 
2.29.2