Gold Sponsors

Mark Logic

The FLWOR Foundation
Silver Sponsors

Xopus logo

oxygenxml logo

river valley logo

28msec logo

Bronze sponsor
data2type logo

Jalfrezi Software Limited provides web hosting and software development services. Our speciality is social networking.
Mercator IT logo

Media Partners

W3C logo (, informace nejen ze sveta Linuxu

The XML Guild 09
Zdrojak (, tvorba webovych stranek a aplikaci

Sister events

Balisage - The Markup Conference
TMRA 2009: Fifth International Conference on Topic Maps Research and Applications - Linked Topic Maps
XML Summer School, St Edmund Hall, Oxford University, September 5 – 10, 2010.


Mary's - Travel & Tourist Services


[1] Introduction to XQC - the C Language Binding for XQuery
Matthias Brantner, 28msec, Inc., Vinayak Borkar, University of California, Irvine, Christopher Hillery, Oracle Corporation, John Snelson, Oracle Corporation

XQC is the C language binding for XQuery. It is intended to provide a standard API allowing applications to make use of any one of several available XQuery implementations. It was developed as a cooperative effort between developers of the XQilla XQuery engine of Oracle Berkeley DB XML and the Zorba XQuery engine from the FLWOR Foundation.

XQC offers a variety of features for programmatic control over all aspects of XQuery processing, including: compiling queries into re-usable expressions; executing compiled queries and navigating through the results; binding external variables and the context item for use during query execution; modifying many components of the static and dynamic query contexts; and receiving and handling errors which may occur at any point during the process. XQC also offers several convenience features and the option for extensions to the basic functionality.

XQC is a young specification. The authors would like to encourage adoption of the API among a larger number of XQuery engines. Further, we would very much like to have additional contributors to the XQC specification itself and to any reference implementations of XQC.

[2] Succinct Indexable XML (SIXML) Library version 1.2
O'Neil Delpratt, University of Leicester, Rajeev Raman, University of Leicester, Naila Rahman

Succinct Indexible XML (SIXML) version 1.2 provides an efficient in-memory representation of large static XML documents, with stable and predictable memory usage, which can be used as a plug-in for XML processing APIs. SIXML is based on succinct data structures, which use an information-theoretically minimum amount of space to represent a given data type (see Wikipedia page: Succinct data structure).

Current SIXDOM version 1.1 features:

  • Development in C++. Supports DOM Level 2 and partially Level 3, with namespace support.
  • Based on research work of SDOM 1.1 (download): Space efficient tree structure representation of XML documents. Handles textual data separately to the tree structure, which can be optionally compressed (i.e. SDOM-CT) using a BZip-based compression. SDOM-CT is comparable with "query-friendly" XML compressors.
  • Memory usage even when without compression is typically less than 50% of the original XML file size.
  • Speed of operations is extremely fast: navigation is in some cases faster than for a pointer-based representation such as Xerces-c.

Forthcoming SIXML version 1.2 (Release date summer 2010) will contain the following features:

  • SIXDOM 1.2: DOM API and NodeInfo interface of Saxon. XPath Support.
  • Inherits all the benefits of SDOM 1.1: Fast navigation, fast processing of XML data. Implementation in C++.
  • Faster parser (using expat) with better memory management. Will feature interfaces to C# .Net and java.
[3] XQBench – A XQuery Benchmarking Service
Peter M. Fischer, ETH Zurich

Benchmarks have been a driving factor for acceptance and progress in relational database area, as they gave researchers and engineers directions on the issues to tackle, and marketers leverage to sell progress on these issues to customers. For more than two decades, standard benchmarks covering most application area of relational database have existed, with the most prominent example being the TPC suite.

XQuery has not (yet) reached this level of maturity. Benchmarks do exist for particular application scenarios (XMark, TPoX), microbenchmarking (MeMBer, The Michigan Benchmark), but most of the results shown by vendors and academics alike are specific to customers, implementations or usage scenarios, with little attempts to generalize them and compare over a wider range of implementations.

In the first half of this decade, there was a short period in which academia showed interest in XQuery benchmarks, leading to series of proposals. This interest has waned rather quickly, and industry has not really picked up the challenge.

Instead of proposing another benchmark workload, we are working to provide a public service to run XQuery benchmarking workloads on a well-defined environment, including an installation of the most commonly used (open-source) XQuery implementation on a stable hardware and OS setting.

By doing so, two main goals can be achieved: (1) Workloads can easily be compared on multiple implementations, leading to a broader coverage and applicability (2) A comprehensive collection of workloads can be established, highlighting performance aspects in particular areas and possibly leading to a general benchmark suite.

Currently, nearly all of the features of the benchmarking service are implemented. The service undergoes internal testing to ensure stability and correctness, and also some more work is needed on documentation. We expect the service to become publicly available around the time of the XML Prague workshop.

[4] XML Mass Production in an Educational environment
Albert Juhé Brogue, Universitat Oberta de Catalunya

The UOC (Open University of Catalonia) is a distance university. His students have access to the learning experience through a virtual campus. The vitual classroom students can access a syllabus, a calendar, a bibliography and course materials, etc..

Since 2005 the UOC produces most of its materials in XML, today more than 50% of materials are already in XML.

MyWay is a project developed for the UOC formed by a set of tools to edit, deliver and transform contents in different formats. MyWay project made available for each person the content format most convenient for each moment. Currently students have the subjects in Web, PDF, ePub, mobipocket, mp3 (packet in Daisy format) and mp4 (videobook).

The multiformat generation service is a daemon that generates on its own the different formats for each of the subjects available at the SVN repository where we store all the XML's. Each of the format conversion implies the use of many XSLT stylesheets. A requirement we had for our stylesheet transformation engine is that it had to support two different XSLT implementations: Xalan (XSLT 1.0) and Saxon (XSLT 2.0). This was because some stylesheets were written in Xalan and others in Saxon. In order to solve this, we differentiated between these two implementations when caching a stylesheet: so that if a stylesheet was written in Xalan, we created the associated Template with the Xalan library.

[5] Approaches to Change Tracking in XML
Robin La Fontaine, DeltaXML

There are many different approaches to tracking document changes in XML. This paper looks at different use cases for situations where change to XML is important. We then review the different approaches used by some of the more popular formats, including OpenDocument, Open XML, DocBook, DITA and editors including XMetaL, oXygen and Xopus. These different approaches are discussed in order to illustrate the advantages and disadvantages of each approach in the context of the different use cases. As a prerequisite to the need to represent change, we first consider what constitutes a change in an XML document, as opposed to a change in an unstructured text document. This sets the scene for our more detailed discussion on the representation(s) of change.

[6] Implementing an XML Language Binding
Wolfgang Laun, Thales RSS GesmbH

This paper is a technical report about the experience of implementing an XML binding to a programming language, i.e., the technique for converting between data in variables and its XML representation. Based on reflection techniques for obtaining information about a program's datatypes, a set of library modules was developed for marshalling, unmarshalling and XML schema generation. The techniques for mapping various data structuring concepts, such as arrays (with arbitrary index types), structures (with variants) and linked data are discussed in detail, as well as the way, the XML schema is constructed. Finally, an outline of applications and lessons learned is given.

[7] Semantic Driven Development with XRX
Dan McCreary, Syntactica, Inc.

The XRX Web Application Architecture (XForms, REST, XQuery) is a new no-translation software architecture that can easily be driven by precise metadata-registry driven semantics. By no-translation we mean that XML I used in all components on the client and server. Yet there are few mature frameworks for XRX with metrics for developer productive. This poster presents some early finding of the use of a rapidly evolving XRX framework of tools and some initial findings of dramatically increased developer productivity.

Today over half of information system costs are due to integration costs. Semantic driven-development (SDD) attempts to address integration costs in very early stages of application development.

Unlike the Rails frameworks which begin with the creation of middle-tier business objects, SDD begins with the selection of data elements taken from carefully controlled metadata registries. These data elements are then -Y´composed¡ into various XML Schemas using web-based tools. Next, the users are guided through dialogs to create fully functional web applications that create, read, update, delete and search for versioned XML data.

This SDD approach has many benefits over traditional web application development where each designer may create their own incompatible objects with inconsistent interfaces and integration is left as an afterthought. By placing semantics and the beginning of the software development lifecycle applications are easier to integrate with other systems that use these same vocabularies.

This poster will describe the XRX SDD process, describe its benefits and show early metrics that indicate increased developer productivity. We will outline of the XRX SDD architecture, the artifacts created by this process and overall developer workflow. We will also describe the tools needed to support XRX SDD and the patterns found in our research. We end with a roadmap for future efforts and links to resources to get more information on XRX SDD.

[8] XQuery Update Facility in Enterprise Database Ssytems and in SQL/XML
Dušan Petković, University of Applied Sciences, Rosenheim

XQuery is the standard language for querying sources with XML content. The specification of XQuery 1.0, which is released in January 2007 does not include features for updating XML documents. In absence of such a recommendation and due to user’s requirements for the ability to update XML data, enterprise database systems have already implemented their proprietary solutions.

We first compare the proposed specification for XQuery Update Facility in the standard document with already existing implementations of analogous functions in three enterprise database systems. Second, we discuss several problems concerning SQL/XML and XQuery update operations. In relation to existing implementations we show that all implementations of XQuery updates in enterprise database systems are significantly different, although their semantics are similar. Also, we strongly advocate for the use of update in-place, when adding new capabilities to SQL/XML.

[9] NaXD: Native XML Interface for a Relational Database
Karel Piwko, Brno University of Technology, Petr Chmelař, Brno University of Technology, Radim Hernych, Brno University of Technology, Daniel Kubíček, Brno University of Technology

NeXD (originally NaXD) is an implementation of XML:DB API and over a relational database. XML documents are shred into relations using XML schema, modified Hybrid algorithm and handles even not conforming documents. It specialises on data retrieval, document reconstruction and querying, where it provides an excellent performance. NeXD currently supports XPath 1.0, with work on XPath 2.0, XQuery and XQJ API in progress.

[10] XML Pipeline Performance
Nigel Whitaker, DeltaXML Ltd, Tristan Mitchell, DeltaXML Ltd

This poster looks at XML Pipeline performance. It presents some fairly simple (artificial) benchmarks comparing a number of different pipeline construction techniques including Java code using the JAXP and s9api interfaces and using the Calabash implementation of XProc. As well as the benchmarks a case-study is also used to compare these pipelining techniques. The case study uses an ODT comparator implementation to further assess performance and possible optimizations.

[11] Versioned Format-Specific XML database – TNTBase(F)
Vyacheslav Zholudev, Jacobs University Bremen, Michael Kohlhase, Jacobs University Bremen, Florian Rabe, Jacobs University Bremen

TNTBase is a versioned XML database; it combines XML fragment access techniques like XQuery with file system functionality and versioning features a la Subversion. We present an infrastructure how the generic TNTBase system can be specialized to include document format-specific services, such as validation, format-specific virtual documents and human-oriented presentation.