On Sun, Dec 09, 2007 at 12:11:21AM +0000, John Levon wrote:
I'm no good at reading relax/ng, but I think that this:
<group>
<ref name='os'/>
<optional>
<ref name='bootloader'/>
</optional>
</group>
<group>
<ref name='bootloader'/>
<optional>
<ref name='os'/>
</optional>
</group>
means I can specify either os, or bootloader, or both. The latter case
makes a lot of sense when using pygrub. However, src/xml.c doesn't
implement those semantics:
1219 if (!bootloader) {
1220 if ((node = virXPathNode("/domain/os[1]", ctxt)) != NULL) {
1221 /* Analyze of the os description, based on HVM or PV. */
1222 str = virXPathString("string(/domain/os/type[1])", ctxt);
I think that we should just remove the "if (!bootloader) {" bit here -
agree?
I'm looking at the schema and I don't see (at least)
domain/devices/input, which appears to be used in src/xml.c too - is the
schema out of date in 0.3.3 ? The tests don't pass xmllint!
Sorry, yes its out of date wrt to this. If the schema doesn't match the
code, then the schema is wrong. The code is definitive (at least for
the Xen / KVM drivers).
Regards,
Dan.
--
|=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=|
|=- Perl modules:
http://search.cpan.org/~danberr/ -=|
|=- Projects:
http://freshmeat.net/~danielpb/ -=|
|=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=|