[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [libvirt] [PATCH] virsh: Improve editing
- From: Daniel Veillard <veillard redhat com>
- To: Eric Blake <eblake redhat com>
- Cc: libvir-list redhat com
- Subject: Re: [libvirt] [PATCH] virsh: Improve editing
- Date: Tue, 17 May 2011 08:24:36 +0800
On Mon, May 16, 2011 at 02:59:28PM -0600, Eric Blake wrote:
> On 05/16/2011 01:12 AM, Daniel Veillard wrote:
> > On Fri, May 13, 2011 at 02:42:29PM +0100, Daniel P. Berrange wrote:
> >> There are two common problems with virsh edit & friends
> >>
> >> - Invalid XML syntax, causes error report & lost changes
> >> - User add unsupported/unknown XML attributes/elements which
> >> are silently discarded by libvirt
> >>
> >> This patch only fixes the first problem. It would be nice to
> >> fix the second two, by running the XML through the RNG schema
> >> validator.
> >>
> >> Rather than do this in virsh though, I'd add some flags to
> >> the virXXXXDefine/Create APIs, eg
> >>
> >> VIR_DOMAIN_XML_VALIDATE
> >>
> >> virsh can set this flag by default, and if the XML fails
> >> validation, it could prompt the user, asking if they want
> >> to proceed anyway (in which case recall the same API but
> >> without the validate flag set), or re-edit the XML
> >
> > Hum, yes I agree with the option of validating on define of APIs
> > the only problem is that we tend to have holes in the RNG, but
> > since that would be optional I think that's okay, this would
> > hopefully help finding the mismatches between the RNG and the C parsing
> > code.
>
> There's also the idea of doing a round trip parse -> dumpxml -> compare;
> but that also has problems where dumpxml sometimes rearranges elements
> or populates backwards-compatibility additions that were not present in
> the original.
Yeah that can't fly, even for an XML/Markup editor preserving this
kind of non-strucural information is nearly impossible, since we even
discard the tree in libvirt after parsing we really can't hope to do
anything like this.
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
daniel veillard com | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library http://libvirt.org/
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]