NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1594 most downloaded on PyPI
XPath 1.0/2.0/3.0/3.1 parsers and selectors for ElementTree and lxml
Last release 1 months ago
08 Aug 2026
Release timing varies
gaps range from 9 days to 5 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
87 releases · first in 2018
Add token labels 'sequence types' and 'kind test' for callables that are not XPath functions
Add token labels 'sequence types' and 'kind test' for callables that are not XPath functions
Add missing XPath 2.0 functions
Fix for issue #12
Add test module for TDOP parser
Add test module for TDOP parser
Fix for issue #10
Support for XSD-typed attributes and elements has been extended. Also the attribute nodes are now resolved to their value only at root token level.
One column per quarter.
Support for XSD-typed attributes and elements has been extended. Also the attribute nodes are now resolved to their value only at root token level.
Improved schema proxy
Improved XSD type matching using paths
Cached parent path for XPathContext (only Python 3)
Improve typed selection with TypedAttribute and TypedElement named-tuples
Add iter_results to XPathContext
Remove XMLSchemaProxy from package
Fix descendant shortcut operator '//'
Fix text() function
Fix typed select of '(name)' token
Fix 24-hour time for DateTime
Nothing published for this version
* Hashable XSD datatypes classes * Fix Duration types comparison
Hashable XSD datatypes classes
Fix Duration types comparison
Better handling of schema contexts
Added special XSD datatypes
Better handling of schema contexts
Added validators for numeric types
Fixed function conversion rules
Fixed tests with lxml and XPath 1.0
Added tests for uncovered code
Added code coverage and flake8 checks
Added code coverage and flake8 checks
Drop Python 3.4 support
Use more specific XPath errors for functions and namespace resolving
Fix for issue #4
Added Parser.is_spaced() method for checking if the current token has extra spaces before or after
Added Parser.is_spaced() method for checking if the current token has extra spaces before or after
Fixes for '/' and ':' tokens
Fixes for fn:max() and fn:min() functions
Minor fixes after a first test run with Python v3.8a3
Fixes for XSD datatypes
Minor fixes after a first test run with Python v3.8a3
Differentiated unordered XPath gregorian types from ordered types for XSD
Differentiated unordered XPath gregorian types from ordered types for XSD
Fix issue #2
Implementation of a full Static Analysis Phase at parse() level
Implementation of a full Static Analysis Phase at parse() level
Schema-based static analysis for XPath 2.0 parsers using schema contexts
Added XPathSchemaContext class for processing schema contexts
Added atomization() and get_atomized_operand() helpers to XPathToken
Fix value comparison operators
Added fn:static-base-uri() and fn:resolve-uri()
Fix for issue #1
Added fn:static-base-uri() and fn:resolve-uri()
Fixes to XPath 1.0 functions for compatibility mode
Change the default value of *default_namespace* argument of XPath2Parser to None
Fixes for XSD datatypes
Change the default value of default_namespace argument of XPath2Parser to None
Improvements and fixes for XSD datatypes
Improvements and fixes for XSD datatypes
Rewritten AbstractDateTime for supporting years with value > 9999
Added fn:dateTime()
Almost full implementation of XPath 2.0
Almost full implementation of XPath 2.0
Extended XPath errors management
Add XSD datatypes for data/time builtins
Add constructors for XSD builtins
Fixed the default namespace use for names without prefix.
Fixed the default namespace use for names without prefix.
Added two recursive protected methods to context class
Added two recursive protected methods to context class
Minor fixes for context and helpers
Updated TDOP parser and implemented token classes serialization
Updated TDOP parser and implemented token classes serialization
Fixed token classes creation for parsers serialization
Fixed token classes creation for parsers serialization
Added autodoc based manual with Sphinx
Added autodoc based manual with Sphinx
Improved the parser class with raw_advance method
Added tox testing
Improved the parser class with raw_advance method
Added n.10 XPath 2.0 functions for strings
Added n.10 XPath 2.0 functions for strings
Fix README.rst for right rendering in PyPI
Added ElementPathMissingContextError exception for a correct handling of static context evaluation
Fixed packaging ('packages' argument in setup.py).
Fixed packaging ('packages' argument in setup.py).
Fixed the effective boolean value for a list containing an empty string.
Fixed the effective boolean value for a list containing an empty string.
Add QName parsing like in the ElementPath library (usage regulated by a *strict* flag).
Add QName parsing like in the ElementPath library (usage regulated by a strict flag).
Some bug fixes for attributes selection.
Some bug fixes for attributes selection.
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →