The Zorba XQuery Processor
..
Zorba is a general purpose XQuery processor implementing in C++ the W3C family of specifications. It is not an XML database. The query processor has been designed to be embeddable in a variety of environments such as other programming languages extended with XML processing capabilities, browsers, database servers, XML message dispatchers, or smartphones. Its architecture employes a modular design, which allows customizing the Zorba query processor to the environment’s needs. In particular the architecture of the query processor allows a pluggable XML store (e.g. main memory, DOM stores, persistent disk-based large stores, S3 stores). Zorba runs on most platforms and is available under the Apache license v2.
The following functionalities are implemented:
-
XQuery 1.0 and XPath 2.0 (as in the W3C recommendation) with only limited support for schema validation.
-
XQuery Update Facility 1.0 (as in the evolving W3C recommendation).
-
An in-memory replaceable XML store implementing the XQuery Data Model (XDM) W3C recommendation.
-
Group By (as in the evolving W3C XQuery 1.1 recommendation).
-
Try-Catch (as in the evolving W3C recommendation).
-
Eval Facility to dynamically evaluate a string and execute it as a query.
-
APIs in various programming languages (i.e. C++, C, Python, and Ruby).
-
Basic schema validation (without post schema validation and substitution groups).