diff --git a/docs/libvirt.rng b/docs/libvirt.rng
index 6e4863c23d0d2bfbd3fd8b57da1dfebbc406c46a..b1e4abec403984fc86cad5ca239ec7bc21e506f9 100644
--- a/docs/libvirt.rng
+++ b/docs/libvirt.rng
@@ -8,88 +8,130 @@
-
-
-
-
-
-
-
-
-
-
-
-
- xen
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
+
+
+
-
+
-
-
-
-
- qemu
-
-
+
+
+
+ xen
+ kvm
+ kqemu
+ qemu
+ lxc
+ openvz
+ test
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
- hvm
+
+
+
-
-
-
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+ i686
+ x86_64
+ ia64
+
+
+
+
+
+
+ xenpv
+ xenner
+
+
+
+
+ xen
+ linux
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ hvm
+
-
+
@@ -106,7 +148,7 @@
-
+
mips
@@ -117,7 +159,7 @@
-
+
sparc
@@ -128,7 +170,7 @@
-
+
ppc
@@ -143,28 +185,6 @@
-
-
-
-
- kvm
-
-
-
-
-
- hvm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
- linux
-
+
@@ -268,31 +295,36 @@
-
-
-
- hvm
+
+
+
+
+ hd
+ fd
+ cdrom
+ network
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
- hd
- fd
- cdrom
-
-
-
-
-
-
+
+
+
+
+
+
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
@@ -402,12 +431,14 @@
bridge
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -415,9 +446,25 @@
ethernet
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ network
+
-
+
@@ -445,44 +492,50 @@
- the target device used
-->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -493,7 +546,8 @@
@@ -505,9 +559,19 @@
vnc
-
-
-
+
+
+
+
+
+
+
+
+ yes
+ no
+
+
+
@@ -518,6 +582,11 @@
+
+
+
+
+
@@ -564,67 +633,150 @@
+
+
+
+
+ dev
+ file
+ pipe
+ unix
+ tcp
+ udp
+ null
+ stdio
+ vc
+ pty
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ sb16
+ es1370
+ pcspk
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ tablet
+ mouse
+
+
+
+
+
+ ps2
+ usb
+ xen
+
+
+
-
+
-
-
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
@@ -688,7 +840,7 @@
- [a-zA-Z0-9_\+\-]+
+ [a-zA-Z0-9_\+\-&]+
@@ -708,12 +860,12 @@
- [a-zA-Z0-9_\+\-%./]+
+ [a-zA-Z0-9_\+\-%./&]+
- /[a-zA-Z0-9_\+\-%./]+
+ /[a-zA-Z0-9_\+\-%./&]+
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-input-xen.xml b/tests/qemuxml2argvdata/qemuxml2argv-input-xen.xml
index a8efef0873691a3be6f9d8c6975674d898e8f98c..44f43b0195b61e444517cf827a570d2052d3e8ec 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-input-xen.xml
+++ b/tests/qemuxml2argvdata/qemuxml2argv-input-xen.xml
@@ -4,9 +4,9 @@
219200
219200
1
+ /foo
xen
-
destroy