This branch changes XML Serializers and their tests to use lxml.etree instead of minidom.
This branch changes XML Serializers and their tests to use lxml.etree instead of minidom.

The current use of minidom in tests unnecessarily forces xml ordering as well as pretty printing. Using etree allows for validating the XML and checking individual element values.

Changing all the serializers to use etree allows for fixing of bug 814196 and consistency among the serializers.

Schema validation has been added for addresses, flavors, images, limits, metadata and servers resources.

The atom feeds we generated are now tested using the feedparser module. This allows for stronger, cleaner and more correct validation.

Note: Not all minidom usage has been replaced with lxml. We realized this was too big a job to tackle in a single merge. Fixing those in subsequent merges will be more manageable.
rajarammallya/melange,rackerlabs/melange,rajarammallya/melange,openstack-attic/melange,rajarammallya/melange,openstack-attic/melange,openstack-attic/melange,rackerlabs/melange,rackerlabs/melange