[libvirt] [PATCH] schema: interleave domain name and uuid with other elements

Michal Privoznik mprivozn at redhat.com
Thu Dec 17 13:18:49 UTC 2015


On 17.12.2015 13:56, Ján Tomko wrote:
> Allow <name> and <uuid> anywhere under <domain>, not just at the top:
> 
> error:XML document failed to validate against schema: Unable to validate
> doc against /usr/share/libvirt/schemas/domain.rng
> Expecting an element name, got nothing
> Invalid sequence in interleave
> Element domain failed to validate content
> 
> Introduced with the first RelaxNG schema in commit c642103.
> 
> https://bugzilla.redhat.com/show_bug.cgi?id=1292131
> ---
>  docs/schemas/domaincommon.rng | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng
> index 4804c69..01d99f0 100644
> --- a/docs/schemas/domaincommon.rng
> +++ b/docs/schemas/domaincommon.rng
> @@ -30,8 +30,8 @@
>    <define name="domain">
>      <element name="domain">
>        <ref name="hvs"/>
> -      <ref name="ids"/>
>        <interleave>
> +        <ref name="ids"/>
>          <optional>
>            <ref name="title"/>
>          </optional>
> 

This is rather tricky. I'm not against the change, but 'ids' is defined as:

<optional attribute/>
<interleave>
  <elem name/>
  <optional elem uuid/>
</interleave>

Thing is, if "ids" would ever get second in the master <interleave/>
shown in your patch, the attribute might refer to a different element.
But I guess that would fire plenty of failed cases in our test suite, right?

ACK then.

Michal




More information about the libvir-list mailing list