
On Wed, Jul 18, 2012 at 11:10:10AM -0600, Eric Blake wrote:
On 07/18/2012 10:31 AM, Michal Privoznik wrote:
On 18.07.2012 03:28, Marcelo Cerri wrote:
This patch updates the structures that store information about each domain and each hypervisor to support multiple security labels and drivers. It also updates all the remaining code to use the new fields. ---
We must update XML schema as well as we are going to allow more <model> and <doi> elements under <secmodel>. And maybe we want to add a test case. But that can be a follow up patch.
Absolutely add a testcase if you are enhancing the xml parser to accept new tags.
I think needs to be squashed in:
diff --git a/docs/schemas/capability.rng b/docs/schemas/capability.rng index 06ff685..be9d295 100644 --- a/docs/schemas/capability.rng +++ b/docs/schemas/capability.rng
If you're going to touch docs/schemas, then it would also be nice to touch the counterpart docs/*.html.in. Unfortunately, I think our capability.rng is currently underdocumented in the html.
@@ -52,12 +52,14 @@
<define name='secmodel'> <element name='secmodel'> - <element name='model'> - <text/> - </element> - <element name='doi'> - <text/> - </element> + <oneOrMore> + <element name='model'> + <text/> + </element> + <element name='doi'> + <text/> + </element> + </oneOrMore> </element>
Hmm, this says that:
<secmodel> <model>...</model> <doi>...</doi> <model>...</model> <doi>...</doi> </secmodel>
will validate, but:
<secmodel> <doi>...</doi> <model>...</model> <model>...</model> <doi>...</doi> </secmodel>
will not. I think that's somewhat good (since the parameters are positional, and we insist that they come in pairs, then the pairs must be properly interleaved), but did the C code enforce that?
But don't we rather want multiple <secmodel> elements than multiple <doi> and <model> inside one <secmodel>?
Indeed - that makes the XML layout problem MUCH easier. If we add an <interleave> around the 'model' and 'doi' sub-elements, then you could write:
<secmodel> <doi>...</doi> <model>...</model> </secmodel> <secmodel> <model>...</model> <doi>...</doi> </secmodel>
and have an unambiguous 2-model design, without quite so much attention being placed on the exactly-one 'doi' and 'model' subelement per 'secmodel'.
Agreed, multiple <secmodel> elements is preferrable. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|