Version 12 marks a major leap forward for BaseX – our open-source XML framework, database engine, and XQuery 4.0 processor. This release introduces powerful new features, essential upgrades, and expanded standards support that will elevate how you build, query, and manage XML-driven applications.
🔧 Core Upgrades
- Java 17 Support · BaseX is now powered by Java 17, unlocking better performance and long-term support.
- Jetty 12 Integration · The built-in web server is now based on Jetty 12, ensuring better compatibility and future-proofing.
✨ XQuery Features, 4.0
- Order-Preserving Maps · Maps now retain the insertion order, making your data structures more intuitive and predictable.
- Map performance · Maps are now significantly leaner and faster, with performance approaching that of native Java maps.
- Arrays & sequences · Sequences can now be wrapped as arrays in constant time, and vice versa.
- Pipeline Operator ·
Write cleaner, more expressive queries with the new
->
pipeline operator. - Typed constructs · Add structure to your data logic with item and record constructors.
- Error Stack Traces & Finally Blocks ·
Improve debugging with stack traces and robust error-handling logic using
finally
. - While Clauses ·
Better control flow in functional logic with iterative
while
clauses. - Standardized CSV, JSON, and HTML Parsing · Standardized options for parsing non-XML data structures, enhanced HTML support with Validator.nu.
- Scripting ·
Launch XQuery expressions as independent jobs with
job:execute
, respecting the transaction logic. - Profiler Optimizations · Aggregation of profiled results helps developers analyze memory and runtime characteristics.
🔐 Security & Admin Enhancements
- Automatic Admin Password Generation · On first startup, a secure initial admin password is generated and logged.
- Log Filtering, Masking & Truncation · New database options allow better control over logging, including IP anonymization.
Get the new version and check out our documentation for more details:
Have fun, Your BaseX Team
Back to Posts