PureXML/Sources/XPath
Mihaela Mihaljevic d83e5a88ce feat(xpath): expression engine and the four-type model
Compile and evaluate full XPath 1.0 expressions, not just location paths.
Add the four-type Value (node-set, boolean, number, string) with the spec's
coercion rules and canonical number formatting, a recursive-descent parser
for the operator grammar (or/and, equality, relational, additive,
multiplicative, unary minus, union) whose grammatical position disambiguates
* and the operator keywords, function calls, variable references, and filter
expressions. Predicates are now arbitrary expressions (a numeric predicate
is a position test). Comparison follows the node-set quantification rules.
Query gains value/number/string/boolean accessors and a $variable binding
map; the core functions last, position, count, not, true, false, boolean,
number, and string ship with it.

Closes #42
2026-06-08 05:33:13 +02:00
..
Axis.swift feat(xpath): all thirteen axes via parent-aware navigation 2026-06-08 05:15:14 +02:00
AxisNavigation.swift feat(xpath): all thirteen axes via parent-aware navigation 2026-06-08 05:15:14 +02:00
Compiler.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
CompilerPaths.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
CoreFunctions.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
EvaluationContext.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
Evaluator.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
EvaluatorOperators.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
EvaluatorSteps.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
Expression.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
NodeTest.swift feat(xpath): all thirteen axes via parent-aware navigation 2026-06-08 05:15:14 +02:00
Query.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
QueryError.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
Selection.swift feat(xpath): add an XPath 1.0 location-path subset 2026-06-08 01:32:23 +02:00
Step.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
Value.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00
XPathNode.swift feat(xpath): expression engine and the four-type model 2026-06-08 05:33:13 +02:00