pydantic xml extension
pydantic-xml is a pydantic extension providing model fields xml binding and xml serialization / deserialization. It is closely integrated with pydantic which means it supports most of its features.
flexable attributes, elements and text binding
python collection types support (Dict, List, Set, Tuple, …)
Union type support
pydantic generic models support
lxml xml parser support
xml.etree.ElementTree standard library xml parser support
What is not supported?
The following model fields binding:
class Product(BaseXmlModel): status: Literal['running', 'development'] = attr() # extracted from the 'status' attribute launched: Optional[int] = attr() # extracted from the 'launched' attribute title: str # extracted from the element text class Company(BaseXmlModel): trade_name: str = attr(name='trade-name') # extracted from the 'trade-name' attribute website: HttpUrl = element() # extracted from the 'website' element text products: List[Product] = element(tag='product') # extracted from the 'website' element
defines the XML document:
"SpaceX"> <website>https://www.spacex.com</website> <product status= "running"launched= "2013">Several launch vehicles</product> <product status= "running"launched= "2019">Starlink</product> <product status= "development">Starship</product> </Company>
Check documentation for more information.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
pydantic_xml-0.6.1.tar.gz (16.9 kB view hashes)
Hashes for pydantic_xml-0.6.1-py3-none-any.whl