Welcome to pyXSD
Schema-validating parsing of xml into python objects with transformations and xml regeneration.
Abstract:pyXSD is a free, open source python program that maps xml and xsd(XML Schema) files into python, allowing for easy schema-based validation and transformation of xml files. Benefits:
| |
Overview:
- Generates python classes for all of the types defined in the XSD schema file. The generated classes may be written to file.
- Parses the xml file and builds a pythonic object tree according to the generated classes. This tree of maintains the same overall structure of the original xml document.
- Validates the xml file against the schema producing non-fatal errors. Helps the user write a valid xml document, without requiring complete validity.
- Transforms the pythonic objects according to built-in "transform" classes and add-on classes that the user writes in python.
- Sends pythonic object tree to a writer which produces a transformed xml file.
Features:
- Transforms allow users to easily adapt pyXSD to vast number of applications
- Provides a framework and libraries to write transform so the user can more easily write these transform functions
- Allows the user to specify the desired transform classes with arguments and the order in a file so the user can create a sort of custom tool
- Allows for transforms that can export to other formats, giving pyXSD powerful flexibility
- The pythonic data tree format uses a very simple structure that allows for an easily understood API, so that users can easily manipulate this tree in transforms and use the writer in other programs
- Can be used as a standalone program at the command line or as a library in other programs
- Uses the cElementTree library for fast reading of the xml and xsd files
Requirements:
- Python 2.3 or later. Get the python interpreter from the official python website.
- ElementTree library, preferably with the c implementation. Get it from the official ElementTree website.

