XPath-based XML data binding
eulxml is an extensible library for reading and writing XML documents in idiomatic Python. It allows developers to map predictable XML node structures to XmlObject subclasses, using field definitions to map XPath expressions directly to Python attributes. For projects using Django, it also provides utilities for exposing XmlObject instances to web users with XmlObjectForm. As a bonus, EULxml happens to include an XPath parser in eulxml.xpath.