Dear all,
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.
This is what you get:
🔧 Core Upgrades
- Java 17: better performance, long-term support
- Jetty 12: better compatibility, future-proofing
✨ XQuery features, 4.0
- Order-Preserving Maps: more intuitive & predictable data structures
- Map performance: significantly leaner & faster, close to native Java
- Arrays & sequences: Wrapping as arrays in constant time & vice versa
- Pipeline Operator: clean, expressive queries with the -> operator
- Typed constructs: structured data with item and record constructors
- Stack Traces, finally block: better debugging, robust error-handling
- While Clauses: better control flow in functional logic
- Standardized CSV, JSON, and HTML Parsing, support for Validator.nu
- Scripting: launch XQuery expressions as independent jobs
- Profiler Optimizations: aggregation of profiled results
🔐 Security & Admin Enhancements
- Automatic Admin Password Generation (first startup)
- Log Filtering, Masking & Truncation: better control over logging
Get the new version and check out our documentation for more details:
https://basex.orghttps://docs.basex.org/main/Changelog
Have fun,
Your BaseX Team
Dear all,
BaseX 11.9 is released, with many new XQuery 4.0 features and numerous
performance tweaks.
The new release will possibly be the last Java 11 release: Future relases
will be based on Java 17.
This is what you get:
- [ADD] XQuery 4.0: %method annotation, try/finally
- [ADD] XQFO 4.0: element-to-map(-plan), doc, function-identity
- [ADD] Option LOGMASKIP: anonymize IP address
- [ADD] prof:time, prof:memory: Aggregation performance measurements
- [MOD] prof:variable: Complete listing of in-scope variables
- [MOD] Arrays & maps, uniform data types: less memory consumption
- [MOD] JSON, CSV, HTML representations: less memory consumption
- [MOD] Records: Faster access to statically known entries
- [MOD] Records: implicit record creation for statically parsed maps
- [MOD] Sequences, arrays, maps: Unified low-level (un)boxing
- [MOD] XQuery: faster 'instance of' type checks
- [MOD] Arrays & maps: faster traversals and wildcard lookups
- [MOD] GUI, Shift-ESC shortcut for stopping query
- [FIX] Store is written again at shutdown time
- [FIX] RESTXQ, %rest:single: null pointer exceptions
- [FIX] html:doc: close stream
For a preview of the upcoming 12 features, please visit the following page…
https://docs.basex.org/12
…and have a look at our homepage to download the latest version:
https://basex.org
Have fun,
Your BaseX Team
We are delighted to announce BaseX 11.8, one more important step to the
next major version.
Here are the most significant changes:
- [MOD] Lightning fast construction of ordered maps of all types
- [MOD] fn:distinct-values, fn:duplicate-values: faster comparisons
- [MOD] Faster map comparison (ordered and unordered)
- [ADD] New function util:values-except
- [ADD] XQuery 4.0 functionality (functions, %method annotation)
- [MOD] XQuery fold functions: more early exits
- [MOD] XQuery, fn:parse-xml: options added
- [MOD] prof:variables: Better capture of in-scope variables
- [FIX] Stricter permission checks when calling built-in functions
For a preview of the upcoming 12 features, please visit the following page…
https://docs.basex.org/12
…and have a look at our homepage to download the latest version:
https://basex.org
Have fun,
Your BaseX Team
Dear all,
We provide you with a new and fresh version of BaseX, our open source
XML framework, database system and XQuery 3.1 processor:
https://basex.org/
Apart from our main focus (query rewritings and optimizations), we
have added the following enhancements:
XQUERY: MODULES, FEATURES
- Archive Module, archive:write: stream large archives to file
- SQL Module: support for more SQL types
- Full-Text Module, ft:thesaurus: perform Thesaurus queries
- Fulltext, fuzzy search: specify Levenshtein limit
- UNROLLLIMIT option: control limit for unrolling loops
XQUERY: JAVA BINDINGS
- Java objects of unknown type are wrapped into function items
- results of constructor calls are returned as function items
- the standard package "java.lang." has become optional
- array arguments can be specified with the middle dot notation
- conversion can be controlled with the WRAPJAVA option
- better support for XQuery arrays and maps
WEB APPLICATIONS
- RESTXQ: Server-Timing HTTP headers are attached to the response
For a more comprehensive list of added and updated features, look into
our documentation (docs.basex.org) and check out the GitHub issues
(github.com/BaseXdb/basex/issues).
Have fun,
Your BaseX Team
Dear all,
We’ve been hard at work finalizing version 11 of BaseX, our open source XML
framework, database system, and XQuery processor.
First, we have revised our documentation, which is now generated with
RESTXQ:
https://docs.basex.org/
Next, you can now visit BXFiddle to launch XQuery and Invisible XML online:
https://fiddle.basex.org/
Finally, we have added and updated valuable features to help you tackle
your daily data challenges:
STORAGE
• Key/value Store: Better compactification when storing values
• CSV/JSON/XML parsing: reduced memory consumption
XQUERY
• First release with new 4.0 features
• Numerous new built-in functions (standard, maps, arrays, math)
• Updates: Multiple targets in rename/replace/insert expressions
• New custom functions: archive:refresh, validate:xsd-init, xslt:init
• Full support for Invisible XML.
GENERAL
• GUI: Full Unicode character support
• Web Server: Upgrade to Jetty 11
• Command-Line: New options -C, -Q, -W
• Options: WRITESTORE, writes store to disk at shutdown time
We took the opportunity of the version jump to drop various XQuery
functions in favor of new 4.0 standard functions. Database storage has not
changed.
A big thank you to Gunther Rademacher, who is now helping us to make BaseX
better every day.
Thanks to all of you for your continuous support,
Have fun with the new release,
Your BaseX Team
Dear all,
We’re pleased to announce version 10.7 of BaseX, of our XML framework:
https://basex.org.
The new release is a big step forward towards BaseX 11:
• We have added numerous new operators, functions and features of XQuery 4.
• The GUI editor and result view now provide full support for Unicode
characters.
• Font rendering has been improved (you can tweak it in the Font Dialog)
• More BaseX 11 preview features available (see docs.basex.org)
• Various bug fixes (web:forward, job:eval, main-memory documents)
Have fun,
Your BaseX Team
Dear all,
It’s been around 15 years ago when the first Open-Source version of
BaseX was released. Thanks to the continuous support of all of you, we
are thrilled today to announce the first double-digit version of our
XML framework:
https://basex.org/
BaseX 10 assists you with your everyday data challenges with some
great new features:
STORAGE
• Beside XML Documents and Binary Data, you can use the new »XQuery
Values« resource type to store arbitrary items and sequences in
databases.
• General data (registered users, scheduled services, and key-value
stores) can now be backed up as well.
• Mixed-content developers will be delighted: Whitespaces are now
preserved by default.
XQUERY
• Database locking has been improved by splitting up XQuery
compilation into a static and dynamic step.
• A new Store Module allows you to organize values in a persistent
main-memory key-value store.
• You can store and retrieve XQuery values with db:put-value and db:get-value.
• When serializing XML, indentation is now turned off by default.
GENERAL
• BaseX 10 requires Java 11 to run.
• The GUI comes with improved HiDPI support, new icons and improved consistency.
• All HTTP requests are now based on the new Java HTTP client.
• Catalog support is now universal and based on either the new XML
Catalog API or Norman Walsh’s excellent XML Resolver.
• The default ports for web applications were changed from 8984/8985
to 8080/8081.
• The default admin password was removed to improve security.
• Results of the REST API are now wrapped in the default REST namespace.
We have taken the version jump as an opportunity to rename various
existing functions and commands. The database storage has not changed:
Databases created with BaseX 10 are backward compatible and can still
be opened with BaseX 9.
Visit our documentation for more details, and information on how to
upgrade your existing applications:
https://docs.basex.org/wiki/BaseX_10
Have fun!
Your BaseX Team
Hi there,
BaseX 10 will come with a new Caching Module [1], which will allow you to
store XQuery values (atomic items, nodes, sequences, maps, arrays, anything
except function items) in a main-memory cache. Caches are persistent: Its
contents will be written to disk at shutdown time and retrieved from disk
in a new or restarted BaseX instance when accessed for the first time.
The cache size is only limited by the available RAM. We started off with an
XML format for representing caches in files, but we switched to a binary
format to speed up the processing of large caches. It’s also possible to
put large XML documents in the cache, but the classic database
representation will give you better results in most cases.
A first snapshot is available [2].
In addition, we’ll soon introduce new database functions, which will enable
you to store XQuery values (…including maps) in a database.
Have fun,
Christian
[1] https://docs.basex.org/wiki/Caching_Module
[2] https://files.basex.org/releases/latest-10/
Dear all,
Just next to us, millions of people are currently being torn out of
their home country, and we desperately hope that the situation in
Ukraine will calm down soon. For those of you who are planning to
donate money to us in the upcoming weeks, we kindly ask you this time
to redirect it to Médecins Sans Frontières or any NGO of your choice.
– We are back to provide you with a new and fresh version of BaseX. It
comes with a big bunch of advanced performance tweaks and
optimizations and some new XQuery features:
• Support for xsl:messages via xslt:transform-report:
• Support for formatting integers and dates in French
• XSD validation: Improved support for XML catalogs
• Remove namespaces from elements via util:strip-namespaces
For a more comprehensive list of added and updated features, look into
our documentation (docs.basex.org) and check out the GitHub issues
(github.com/BaseXdb/basex/issues).
And one more pleasant announcement: Today, our company BaseX GmbH Our
celebrates its 10th anniversary! Thanks to all of you who have keeping
us busy with challenging projects. Rest assured we’ll be happy to
continue to give you advice and support for the upcoming decades.
All the best,
Your BaseX Team
Dear all,
We conclude this year with yet another release of BaseX, our XML
framework, database and XQuery processor [1]. The new version contains
new performance tweaks and minor bug fixes, the details of which can
be examined on our GitHub page [2].
As we’ve got numerous inquiries regarding Log4j: I can comfort you
that BaseX is not affected by the vulnerabilities. We have our own
logging mechanism, which has no built-in code execution features. The
same applies to the Jetty web server.
Log4j once again demonstrates that Open Source is everywhere, and that
it takes valuable time and resources to build professional and secure
software. We send out a big thank you to those of you who are (and
have been) supporting us by paying for maintenance, sponsoring new
features and giving donations. It’s you who is keeping BaseX both
alive and up to date!
Have a good time,
Christian
[1] https://basex.org
[2] https://github.com/BaseXdb/basex/commits/master