schema: nodedev: Allow interleaving of sub-elements of 'device'

Note that the schema doesn't allow us to represent the two branches of
optional <devnode type='dev'> and zero or more <devnode type='link'>
definitions, so I've merged them under the <zeroOrMore> case.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Peter Krempa 2022-10-13 18:29:49 +02:00
parent 85108bad37
commit 04bda51cb2

View File

@ -9,41 +9,38 @@
<define name="device"> <define name="device">
<element name="device"> <element name="device">
<!-- The name of the network, used to refer to it through the API <interleave>
and in virsh --> <!-- The name of the network, used to refer to it through the API
<element name="name"><text/></element> and in virsh -->
<optional> <element name="name"><text/></element>
<element name="path"><text/></element> <optional>
</optional> <element name="path"><text/></element>
<optional> </optional>
<element name="devnode"> <zeroOrMore>
<attribute name="type"> <element name="devnode">
<value>dev</value> <attribute name="type">
</attribute> <choice>
<text/> <value>dev</value>
</element> <value>link</value>
</optional> </choice>
<zeroOrMore> </attribute>
<element name="devnode"> <text/>
<attribute name="type"> </element>
<value>link</value> </zeroOrMore>
</attribute> <optional>
<text/> <ref name="parent"/>
</element> </optional>
</zeroOrMore>
<optional>
<ref name="parent"/>
</optional>
<optional> <optional>
<element name="driver"> <element name="driver">
<element name="name"><text/></element> <element name="name"><text/></element>
</element> </element>
</optional> </optional>
<zeroOrMore> <zeroOrMore>
<ref name="capability"/> <ref name="capability"/>
</zeroOrMore> </zeroOrMore>
</interleave>
</element> </element>
</define> </define>