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)