mirror of https://gitee.com/openkylin/libvirt.git
75 lines
1.7 KiB
Plaintext
75 lines
1.7 KiB
Plaintext
<!-- A Relax NG schema for the libvirt secret properties XML format -->
|
|
<grammar xmlns="http://relaxng.org/ns/structure/1.0">
|
|
<start>
|
|
<ref name='secret'/>
|
|
</start>
|
|
|
|
<define name='secret'>
|
|
<element name='secret'>
|
|
<optional>
|
|
<attribute name='ephemeral'>
|
|
<choice>
|
|
<value>yes</value>
|
|
<value>no</value>
|
|
</choice>
|
|
</attribute>
|
|
</optional>
|
|
<optional>
|
|
<attribute name='private'>
|
|
<choice>
|
|
<value>yes</value>
|
|
<value>no</value>
|
|
</choice>
|
|
</attribute>
|
|
</optional>
|
|
<interleave>
|
|
<optional>
|
|
<element name='uuid'>
|
|
<ref name='UUID'/>
|
|
</element>
|
|
</optional>
|
|
<optional>
|
|
<element name='description'>
|
|
<text/>
|
|
</element>
|
|
</optional>
|
|
<optional>
|
|
<element name='usage'>
|
|
<choice>
|
|
<ref name='usagevolume'/>
|
|
<!-- More choices later -->
|
|
</choice>
|
|
</element>
|
|
</optional>
|
|
</interleave>
|
|
</element>
|
|
</define>
|
|
|
|
<define name='usagevolume'>
|
|
<attribute name='type'>
|
|
<value>volume</value>
|
|
</attribute>
|
|
<element name='volume'>
|
|
<ref name='absFilePath'/>
|
|
</element>
|
|
</define>
|
|
|
|
<define name="UUID">
|
|
<choice>
|
|
<data type="string">
|
|
<param name="pattern">[a-fA-F0-9]{32}</param>
|
|
</data>
|
|
<data type="string">
|
|
<param name="pattern">[a-fA-F0-9]{8}\-([a-fA-F0-9]{4}\-){3}[a-fA-F0-9]{12}</param>
|
|
</data>
|
|
</choice>
|
|
</define>
|
|
|
|
<define name="absFilePath">
|
|
<data type="string">
|
|
<param name="pattern">/[a-zA-Z0-9_\.\+\-&/%]+</param>
|
|
</data>
|
|
</define>
|
|
|
|
</grammar>
|