Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

Convenient XML creation using objects

Project description

Convert objects to XML quickly and easily.


  • Easily convert objects using an XML template.
  • Supports node lists and sub-documents.
  • Objects don’t need to know about XML paths, flat objects can become deep XML documents.
  • Dynamically inject XML at creation time.


Simple document:

from obj2xml import XML_Object, XML_Property, XML_TextProperty

class MyExampleXML(XML_Object):
    version = XML_Property(['root', 'version'], 1.0)
    test_value = XML_Property(['root', 'test-value'], 'Default Value')
    no_default_value = XML_Property(['root', 'no-default'])

    text_node = XML_TextProperty(['root', 'text-node-1'])
    manual_text_node = XML_Property(['root', 'text-node-2', '_text'])

obj = MyExampleXML()
obj.test_value = 'Another value'
obj.no_default_value = 'This value was hidden before'
obj.a_text_value = 'Over-rode the default text'
obj.text_node = 'This is some text'
obj.manual_text_node = 'This is some more text'


<?xml version="1.0" ?>
<root no-default="This value was hidden before" test-value="Another value" version="1.0">
  <text-node-2>This is some more text</text-node-2>
  <text-node-1>This is some text</text-node-1>

For further examples, look in the examples directory.



Project details

Release history Release notifications

This version
History Node


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
obj2xml-1.0.1.tar.gz (3.4 kB) Copy SHA256 hash SHA256 Source None May 13, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page