The BaseX XQJ

Quick Start Conformance Report Compliance Definition Statement BaseX XQJ Examples (on GitHub) Download BaseX XQJ

BaseX XQJ API - TCK Conformance

The XQJ API Specification states that XQJ implementations should pass the Test Compatibility Kit (TCK) and provide a Compliance Definition statement outlining how all aspects of the XQJ implementation which are described by the XQJ Specification as "implementation-defined" have been implemented.

Technology Compatibility Kit (TCK) Conformance

The XQJ Specification provides a Technology Compatibility Kit (TCK).

The TCK is a piece of software which can be used to test whether or not an XQJ implementation complies with the XQJ specification.

The following table shows the results of running the XQJ TCK against the BaseX XQJ API implementation.

Official XQJ TestCase BaseX XQJ API
SignatureTest PASS (1/1)
XQCancelledExceptionTest PASS (1/1)
XQConnectionTest PASS (17/17)
XQDataFactoryTest PASS (33/33)
XQDataSourceTest PASS (11/11)
XQDynamicContextTest PASS (20/21)*
XQExceptionTest PASS (5/5)
XQExpressionTest PASS (9/9)
XQItemAccessorTest PASS (20/20)
XQItemTest PASS (2/2)
XQItemTypeTest PASS (13/13)
XQMetaDataTest PASS (25/25)
XQPreparedExpressionTest PASS (9/9)
XQQueryExceptionTest PASS (12/12)
XQResultItemTest PASS (1/1)
XQResultSequenceTest PASS (1/1)
XQSequenceTest PASS (25/25)
XQSequenceTypeTest PASS (3/3)
XQStackTraceElementTest PASS (7/7)
XQStackTraceVariableTest PASS (3/3)
XQStaticContextTest PASS (35/35)
Pass Percentage 99.6%


* The XQJ API states that the executing new queries on an XQConnection implicitly closes previous XQResultSequences spawned from the connection. An XQJ TCK test (testBindObject_AllTypes) actually goes against the XQJ 1.0 specification by trying to access an obsolete forward only XQResultSequence. The driver adheres to the Specification instead of the TCK in this instance.