XQilla 2.3 is a major release that includes partial XQuery 3.0 support,
including higher order functions, relaxed FLWOR syntax, and private functions.
The XQuery Full Text syntax has been updated to the latest specification, and
many optimizations have been made.
Change Log:
* Added support for XQuery 3.0 version declarations.
* Updated to support XQuery 3.0 higher order functions, including
partial function application, function coercion, and function item
SequenceType checking.
* Implemented XQuery 3.0 FLWOR clause ordering.
* Implemented XQuery 3.0 FLWOR count clause.
* Implemented XQuery 3.0 extended typeswitch syntax.
* Implemented XQuery 3.0 namespace test and constructor.
* Implemented XQuery 3.0 private functions.
* Updated to the latest W3C XQuery Full Text syntax.
* Implemented Unicode word bounding and sentence bounding for XQuery
Full Text tokenization.
* Implemented XQuery Full Text case options.
* Implemented XQuery 1.0 second edition semantics for module import.
* Added the xqilla:explain() function to return the query plan of an
expression.
* Added xqilla:words() and xqilla:sentences() to perform Unicode word
and sentance boundary detection.
* Added xqilla:drop().
* Rewrote a number of the built-in XQuery functions in XQuery itself.
* Implemented constant time indexing into materialized sequences.
* Improved the efficiency of the tail call optimization code.
* Optimized boolean operators.
* Optimized DOMDocument::evaluate() calls.
* Fixed various bugs in static typing.
* Fixed various memory leaks in the DOM 3 API, and regular expressions.
* Fixed a bug that caused a crash when using huge integers.
* Modified to build against Xerces-C 3.1.1
* Added Visual Studio 2010 support.
* Build fix for AIX 5.3.
* Build fix for the clang++ compiler.
* Build fix for GCC 4.6.
This is a bug fix release for XQilla 2.2, including the ability to compile against Xerces-C 3.1.0, and a small number of miscellaneous fixes.
Change Log:
* Modified to build against Xerces-C 3.1.0
* Modified the DOM 3 API to only orphan grammars if PSVI is enabled.
* Fixed computed attribute constructors not to use the default element
namespace for names.
* Modified node serialization to generate prefixes for attributes with
no prefix but in a namespace.
* Modified node serialization to use existing prefixes if possible.
* Fixed an unknown exception during certain update operations.
* Build fix for Sun Workshop 6 compiler.
* Build fix for older GCC.
* Added maintainer mode (--enable-maintainer-mode) to rebuild build
related files.
This is a bug fix release for XQilla 2.2, including a small number of miscellaneous fixes.
Change Log:
* Work around for a Xerces-C bug in DOMDocument::importNode()
that resulted in badly copied prefixes using XQuery Update.
* Fixed a segfault in the DOM 3 API by orphaning Xerces-C
Grammar correctly.
* Fixed optimization of count(), exists(), and empty() based on
static type if the argument uses doc() or collection().
* Fixed a bug that caused a crash when using "order by" in some
circumstances.
* Fixed query/module static-typing to also (re-)static type the
modules it imports.
* Fixed a bug in fn:codepoint-equal().
This is a bug fix release for XQilla 2.2. This release includes fixes for xlC compiler issues, a SIGBUS on sparc architectures, casting issues between Xerces-C 2.8 and 3.0, Windows memory bug when resolving a document or collection, a segfault when parsing a document in memory, transforming document nodes, and other fixes. This release also updates libtool to version 2.2.6.
Change Log:
* Fixed XQillaDocumentImpl::cloneNode() to return an instance of XQillaDocumentImpl.
* Fixed XPath 2.0 so that it doesn't recognize entities in string literals.
* Fixed a bug in the constant folding identity transforms for arithmetic expressions.
* Fixed a bug in the undefined context item check.
* Fixed the transform expression to copy document nodes rather than dissolving them.
* Fixed a bug in the static typing of external functions.
* Fixed a bug in fn:matches() with a zero-length string as the first argument.
* Fixed a couple of bugs in the debug API, and made it report exit() and end() events correctly.
* Fixed variable inlining so that variables aren't inlined into loops.
* Fixed a segfault when parsing a document from a memory buffer.
* Fixed a bug in XQC_Implementation->parse_document_file() that caused parsing to always fail.
* Workaround a bug in Xerces-C that can cause corrupted memory when deleting a mutex.
* Fixed a bug related to unsigned int/XMLSize_t type difference between Xerces-C 2.8 and 3.0.
* Fixed alignment on sparc architectures that could cause a SIGBUS crash.
* Fixed a Windows memory bug involving the URI used in resolving a document or collection.
* Fixed Windows compile warnings related to Xerces-C types.
* Updated libtool version to 2.2.6.
* Fixed some compiler issues related to the xlC compiler.
This is the 2.2 release of XQilla. This release adds a debugger and
debugging API, partial support for XSLT 2.0, and a prototype
implementation of higher order functions for XQuery.
XQilla is an XQuery, XSLT 2.0 and XPath 2.0 implementation written in
C++ and based on Xerces-C. It implements the DOM 3 XPath API, as well
as having it's own more powerful API. It conforms to both the XQuery
and XPath 2.0 W3C recommendations.
Change log:
* Added a debugging API, and a command line debugger invoked by passing
a "-d" flag to the command line tool.
* Added a partial implementation of XSLT 2.0. This should currently be
considered alpha quality.
* Added an implementation of the current draft of XQC, a standard C API
for accessing XQuery implementations.
* Added a prototype implementation of higher order functions for XQuery.
* Added the ExternalFunctionResolver API to resolve implementations for
external functions that are unknown before compile time.
* Added the xqilla:analyze-string() extension function for performing
complex regular expression analysis.
* Added query options for controlling schema validation, document
projection and lint warnings.
* Added a --disable-rpath configure option for maintainers.
* Implemented function and variable inlining, and other partial
evaluation optimizations.
* Implemented tail recursion optimization.
* Modified XQilla to compile against Xerces-C 3.0. A source installation
of Xerces-C is no longer necessary for compilation.
* Improved static typing with cardinality information.
* Fixed a bug in schema validation of a document in no namespace.
* Fixed schema validation to check ID/IDREF constraints correctly.
* Fixed a bug in validation of SequenceTypes like
document-node(schema-element(XX)).
* Fixed a bug in re-writing documents to disk after updating them, when
they have a space in their document URIs.
This is a bug fix release for XQilla 2.1. This release
includes compilation fixes for 64 bit and Solaris, as well as
several DOM 3 API related bugs.
XQilla is an XQuery and XPath 2.0 implementation written in
C++ and based on Xerces-C. It implements the DOM 3 XPath API,
as well as having it's own more powerful API. It conforms to
the both the XQuery and XPath 2.0 W3C recommendations.
Change Log:
* Fixed a bug in static resolution of replace expressions
* Fixed the Xerces-C data model layer to work correctly with DOM Level 1
elements and attributes.
* Worked around a Xerces-C bug that resulted in exceptions when using
the DOM 3 API with certain schemas.
* Fixed a 64 bit compilation problem.
* Fixed a Solaris compilation problem.
This is the 2.1 release of XQilla. This release adds support
for querying non-XML data sources, including HTML via
TidyLib, JSON and plain text files.
XQilla is an XQuery and XPath 2.0 implementation written in
C++ and based on Xerces-C. It implements the DOM 3 XPath API,
as well as having it's own more powerful API. It conforms to
the both the XQuery and XPath 2.0 W3C recommendations.
Change log:
* Added the xqilla:parse-json() and xqilla:serialize-json() extension
functions to parse and serialize JSON.
* Added the xqilla:parse-html() function which uses HTML Tidy to parse
HTML into XML. The function will not be compiled if TidyLib is not
found.
* Added fn:unparsed-text(), a function from XSLT 2.0 which can fetch a
URL and return it as a string.
* Added an xqilla:time() function which outputs the time taken to
evaluate it's argument.
* Added src/xercesc_content_type.patch which should be applied
against Xerces-C 2.8 to fix an HTTP connection bug.
* Added src/xercesc_regex.patch which should be applied against Xerces-C
2.8 to fix a regular expression bug in fn:replace().
* Added project files for Visual C++ 8, including 64 bit build
targets.
* Changed the default XQuery Update revalidation mode to LAX.
* Fixed a bug in the lexing of element and attribute content in
queries that incorrectly rejected certain Unicode characters.
* Fixed a bug in external functions when used with modules.
* Fixed a memory leak in the FastXDMURIResolver.
* Fixed a segfault in XPath2ResultImpl if the results were only
partially navigated.
* Fixed a bug in XPath2ResultImpl where XQExceptions weren't being
turned into XQillaExceptions.
* Fixed XQilla to compile using Visual C++ 6.
* Fixed compilation flags to work under HPUX.
This is the 2.0 release of XQilla. XQilla is now available under the Apache
License v2, a more permissive open source license. This release also implements
document projection, a technique for reducing memory usage and increasing query
speed.
XQilla is an XQuery and XPath 2.0 implementation written in C++ and based on
Xerces-C. It implements the DOM 3 XPath API, as well as having it's own more
powerful API. It conforms to the both the XQuery and XPath 2.0 W3C
recommendations.
Change log:
* Changed the license for XQilla to the Apache License v2, a more
permissive open-source license.
* Implemented document projection, an optimisation technique that prunes
sub-trees of documents not needed for the query at parse time. This is
enabled by default.
* Added a new extension function xqilla:parse-xml() which takes a string
and parses it as an XML document.
* Added optional support for using the FAXPP XML parser instead of the
Xerces-C parser.
* Added a command line option to the "xqilla" utility for binding
external variables from the command line.
* Implemented better error messages for type errors.
* Modified the embedded MAPM library so we are now using it under the
terms of the MIT license.
* Fixed miscellaneous bugs in the XQuery Update implementation.
* Fixed a bug with the algorithm to add and subtract an
xs:dayTimeDuration to or from an xs:date.
* Fixed a bug in XercesNodeImpl which caused a segfault if the node was
created as a value of a global variable in another module.
This is the 1.1 release of XQilla, that introduces some major new features
including XQuery Update (Last Call Working Draft 28 August 2007) support,
streaming event output, and speed and memory consumption improvements.
XQilla is an XQuery and XPath 2.0 implementation written in C++ and
based on Xerces-C. It implements the DOM 3 XPath API, as well as having
it's own more powerful API. It conforms to the both the XQuery and XPath 2.0
W3C recomendations.
Change log:
* Added support for XQuery Update (Last Call Working Draft, 28 August
2007).
* Added XQillaConfiguration, which encapsulates everything needed to
create or use a new data model.
* Implemented a new data model called FastXDM. It places nodes in a
sequential array, and is much faster and more memory efficient than
the DOM based data model. This is now the default data model.
* Implemented XercesConfiguration, to enable use of the Xerces-C DOM
based data model.
* Implemented EventHandler, an event based execution interface. This is
used primarily for efficient evaluation of constructed nodes. This can
be invoked using XQQuery::execute(EventHandler*,DynamicContext*).
* Added the ExternalFunction class, to allow users to easily implement
XQuery external functions.
* Added the MessageListener interface, to allow users to easily receive
warning and trace messages.
* Implemented closures, to enable the efficient and lazy execution of
"let" expressions.
* Implemented more lazy execution code for "order by" expressions
* Added better error messages for sequence type checking errors.
* Removed the XQDebugCallback API.
* Rewrote the lexer and parser to be more memory efficient.
* Rewrote "validate" expressions to be more memory efficient.
* Modified the XQuery Test Suite runner to run the forthcoming XQuery
Update test suite.
* Made minor changes to allow compilation against the Xerces-C 2.8
release candidate.
* Fixed a bug in the limit checking of the seconds field in the time
when parsing.
* Fixed modules so that the correct language is used to parse the
module.
* Fixed a bug in the code to create a new dynamic context for a
module.
* Fixed possible segmentation faults and memory leaks when using the
DOM3 API
* A number of other miscellaneous minor bug fixes.
This is the 1.0.1 patch release of XQilla, that fixes a few minor bugs discovered since version 1.0.
XQilla is an XQuery and XPath 2.0 implementation written in C++ and based on Xerces-C. It implements the DOM 3 XPath API, as well as having it's own more powerful API. It conforms to the W3C proposed recomendation of XQuery and XPath 2.0.
Change log:
* Fixed fn:concat() to accept more than 51 arguments.
* Fixed module parsing, to use the correct language enumeration when
parsing. Output modules in the query plan.
* Fixed a race condition in the parsing of function signatures.
* Fixed parse errors in the DOM3 API, which were being thrown as
XQException instead of XQillaException. [1626534]
* Fixed the building of shared libraries under Cygwin, by adding
-no-undefined to the libtool line in the Makefile. [1639669]
* Fixed a bug in the static typing of user defined functions, that
could result in incorrect errors.
