The XQuare project: integrating XQuery and J2EE technologies
The XQuare project provides a set of Java components for extending J2EE platforms with XML-based,
heterogeneous information integration capabilities, using the XQuery
language. The XQuare components
allow enterprise information stored in a large variety of data sources to be accessed in real-time
and shared as uniform XML views, ready for further filtering, processing and publishing.
Incoming XML data can also be stored directly in relational databases, without the need to transform it
first into procedural API calls (such as JDBC) or Java objects.
The XQuare components are designed to be embedded into Java-based Web or
application servers, and rely on the standard J2EE services for exchanging, processing and publishing
XML information. By adding to those services a new configurable data integration service, able to
collect in real-time business information in distributed, heterogeneous data sources, the XQuare
components can help dramatically reduce development costs for applications such as enterprise portals,
B2B information exchange automation, database publishing...
The XQuare project has released two runtime components:
XQuare Bridge: XQuare Bridge expands existing relational database functionalities
with advanced XML import/export capabilities. Using a powerful mapping language, it can perform
efficient insertion of structured XML data into existing relational tables, while taking into account
the database integrity constraints and transforming the implicit relations appearing in the XML document
into explicit ones in the database. It also supports flexible extraction and publishing of relational
data into any target XML format, using the XQuery language.
XQuare Fusion: XQuare Fusion is a powerful information integration engine for
querying in real-time multiple, heterogeneous and distributed data sources. Using XML-based data
sources federation, it presents to applications a single, uniform XML view of all business information,
which can then be queried with XQuery to produce XML documents. Accessible data sources include
relational databases (through the XQuare Bridge component), XML documents, Web Services and
potentially much more, including XQuery-enabled data sources and JCA connectors.
Both components are distributed as JAR files, easily embeddable in J2EE application servers. They use
the same XML/DBC Java API for acessing and querying data sources. XML/DBC is directly derived from the
standard JDBC API for accessing relational databases, but uses XQuery instead of SQL as query language,
and the JAXP APIs for processing XML documents and query results. XML documents and query results
validation and typing is performed with a fully compliant XML Schema processor.
The XQuare project will also provide development tools, to support the configuration of the XQuare
XQuare Map Editor: A graphical tool to visually construct a mapping between
a source XML Schema and a target relational model. The resulting mapping can be stored in an
XML document and used by XQuare Bridge to insert XML documents conformant to the source schema into
the target database.
XQuare Fusion Console: A graphical tool to visually configure data sources for
use by XQuare Fusion. This tool is also a workbench taht can be used to test and tune XQuery queries
for a given data sources configuration.
Both tools are still in under development. Further development, as well as integration as Eclipse plug-ins,
is expected to happen in the coming months.
Why XQuare ?
XQuare stands for XQuery Advanced Runtime