jxmlease
jxmlease converts between XML and intelligent Python data structures.
What it is and what it does
jxmlease bridges the gap between XML and Python by subclassing native Python types (list, dict, string) to create smart XML classes that hold both data and metadata. When you parse XML, you get a standard Python object you can iterate, compare, and manipulate like any dict or list, but you can also call methods like get_xml_attr() to access XML attributes and other metadata that would normally be lost. It also works in reverse: you can pass a plain Python dict to emit_xml() and get valid XML output.
The package supports flexible parsing modes—you can stream results as the parser encounters specific tags, iterate over the full tree, or search for nodes by tag name. This makes it useful for both small configuration files and selective extraction from larger documents. However, the project has been abandoned since 2020 with no active maintenance, so it should only be adopted if you need a stable, unchanging XML layer and can accept no future updates.
Use it for:
- Parse XML configuration files and access both tag content and attributes as a single Python dict.
- Convert REST API XML responses into Python objects for easier data manipulation and comparison.
- Generate XML output from Python dictionaries without manually constructing XML strings.
- Extract specific nodes from large XML documents using generator-based parsing to avoid loading the entire tree.
- Maintain XML metadata (attributes, element order) while working with XML data as native Python types.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Converts XML to Python data structures (lists, dicts, strings) that preserve XML metadata, and converts Python objects back to XML.
Yes, if you need lightweight XML-to-dict conversion and can accept an abandoned package. The zero runtime dependencies and low install friction make it easy to add, and the MIT license is unencumbered. However, do not use it for new projects requiring active maintenance, security updates, or support for modern Python versions beyond 3.5. For actively maintained alternatives, consider other XML libraries.
Install
jxmlease on PyPI
pip
pip install jxmleaseuv
uv add jxmleasepoetry
poetry add jxmleaseInstalling jxmlease
Before you install
Low install friction with no runtime dependencies. However, the package is abandoned—last release was 2020-05-29 and no commits since. Use only if you need a stable, unchanging XML-to-dict layer and can accept no future maintenance or security updates.
License in practice
MIT license is permissive; you can use, modify, and distribute jxmlease freely in commercial and private projects with minimal restrictions.
Quickstart
import jxmlease
xml_string = '<a><b>hello</b></a>'
root = jxmlease.parse(xml_string)
print(root) # {u'a': {u'b': u'hello'}}
print(jxmlease.emit_xml({'a': {'b': 'hello'}}))
Verify before relying
- Whether the package handles modern XML features (namespaces, CDATA, processing instructions) adequately for your use case.
- Performance characteristics on large XML documents or deeply nested structures.
- Compatibility with Python versions beyond 3.5 (classifiers list 3.5 as the highest, but actual support is unspecified).
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | abandoned — 2,268 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 205,774/month — #9,582 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: jxmlease-1.0.3-py2.py3-none-any.whl
Tags
More XML packages
Beautiful Soup parses HTML and XML documents…
permissive · top 100 on PyPI
lxmllxml provides Python bindings to libxml2 and…
permissive · top 1,000 on PyPI
defusedxmlDefusedxml hardens Python's standard XML…
permissive · top 1,000 on PyPI
docutilsDocutils converts plaintext documentation in…
unclear · top 1,000 on PyPI
xmltodictConverts XML to Python dictionaries and back,…
permissive · top 1,000 on PyPI
SphinxSphinx generates professional documentation…
permissive · top 1,000 on PyPI
dicttoxmlConverts Python dictionaries and other native…
copyleft · top 5,000 on PyPI
xml-pythonConverts XML documents into Python objects,…
copyleft · top 5,000 on PyPI
untangleConverts XML documents into Python objects with…
permissive · top 15,000 on PyPI
dicttoxml2Converts Python dictionaries and native data…
copyleft · top 15,000 on PyPI
xmljsonConverts XML documents to Python dictionaries…
permissive · top 5,000 on PyPI
py-serializableSerializes and deserializes Python classes to…
permissive · top 1,000 on PyPI
xmltojsonConverts XML documents to JSON format via a…
permissive · top 15,000 on PyPI
dict2xmlConverts Python dictionaries into XML strings…
permissive · top 5,000 on PyPI
xmldiffxmldiff compares two XML files or trees and…
permissive · top 15,000 on PyPI