BaseX XQuery Processor
Fast and efficient XQuery processing lies at the heart of BaseX. Its dedicated focus on indexes allows for a wide range of optimization techniques to be applied to your XQuery requests. Compact XML storage together with commonly used extensions and functions complete the package.
XQuery 3.1
New language features including group by, try/catch, switch, function items, maps, arrays, support for JSON.
Full Text
W3C XQuery Full Text 1.0 implementation. XQuery’s full-text extension makes BaseX an ideal tool to build high-performance information retrieval systems. More than 20 languages available along with support for wildcards, stemming, case sensitivity, diacritics, TF/IDF scoring and stop words.
Updates
Highly efficient XQuery Update Facility 1.0 implementation for inserting, deleting, renaming and replacing nodes.
Java Bindings
Direct access to Java procedures and object manipulation provides near endless extendability and simple integration of external Java libraries.
Packaging
Support for the standardized EXPath Packaging Module allows for a simple and convenient extension of the XQuery processor.
Errors
Detailed and comprehensive error feedback speeds up development and improvement of XQuery/XML applications. The query editor's realtime syntax evaluation further facilitates this process.
Indexes
Extraordinarily compact Text, Attribute, Full-Text and Path-Summary indexes accelerate the evaluation process by magnitudes. A fuzzy-match full-text option allows for approximate searches and retrieval.
Execution Plans
To leverage optimization, each evaluation procedure can be visualized in an execution plan which lists individual evaluation steps and index accesses. The plans are serializable in plain text, XML and the .dot format.
HTTP
Built-in support for HTTP makes sure that information sources all over the web are accessible from within XQuery.
JSON
Out-of-the-box support to convert XML to JSON and vice-versa.
Cryptography
The Cryptography extension module provides XQuery functions to digitally sign XML documents. In addition, it enables users to encrypt and decrypt messages based on numerous cryptographic algorithms.
File
The File module contains XQuery functions and variables related to common file system operations, such as reading or writing files and directories.
Database
The Database module allows for complex database operations to be formulated and processed within XQuery.
Map
The Maps module offers an efficient functional implementation of maps in XQuery, a data structure that is heavily used in most programming languages.
Higher Order Functions
BaseX completely implements XQuery 3.0 function items, which can be used to write custom data types and structure control flows in XQuery.
SQL
The SQL Module contains XQuery functions to access relational databases from XQuery using SQL. It allows developers to execute arbitrary SQL statements and retrieve the results for further processing.
XSLT
BaseX gives developers full access to transform XML with XSLT 1.0 and XSLT 2.0 (via Saxon)