
PyXB is a pure Python package that generates Python code for classes that correspond to data structures defined by XMLSchema. In concept it is similar to JAXB for Java and CodeSynthesis XSD for C++.
The major goals of PyXB are:
* Provide a generated Python interface that is “Pythonicâ€, meaning similar to
one that would have been hand-written:
+ Attributes and elements are Python properties, with name conflicts
resolved in favor of elements
+ Elements with maxOccurs larger than 1 are stored as Python lists
+ Bindings for type extensions inherit from the binding for the base type
+ Enumeration constraints are exposed as class (constant) variables
* Support bi-directional conversion (document to Python and back)
* Allow easy customization of the generated bindings to provide functionality
along with content
* Support all XMLSchema features that are in common use, including:
+ complex content models (nested all/choice/sequence)
+ cross-namespace dependencies
+ include and import directives
+ constraints on simple types
* Validate the documents against their schema
This package contains the prebuilt Security Assertion Markup Language bindings for Python3.