I18n Sensitive Processing with XQuery and XSLT
Felix Sasaki, Internationalization Activity Member, W3C, Japan

Intended Audience: Content Developers, Web Administrators, Web Designers, People who want to process i18n-sensitive XML data with i18n-relevant processing features

Session Level: Intermediate

Purpose: enable the audience to use XQuery and XSLT for i18n sensitive processing and make them aware of i18n aspects of XQuery and XSLT which have to be handled carefully.

In recent years, the W3C has worked on 17 (!) documents which deal with the XML query language "XQuery" and the transformation language for XML documents "XSLT 2.0", henceforth noted as "QT". This year, the core of QT specifications will reach the status of a "Recommendation", i.e. a stable specification.

QT has a lot of i18n related features. But due to its complexity, specific parts of the design of QT have to be taken into account. This tutorial will give an overview of the QT architecture, the QT processing model, and describe i18n specific features for the input, processing and output of XML data.

Topics covered include:

  • Processing model of QT in general: How the different parts work together
  • I18n related aspects of the underlying data model
  • Generating output in various encodings: serialization of the data model
  • Functions and operators in QT for string processing, normalization, collations, rounding etc.
  • Dates and time zones
  • IRI processing
  • Processing of language information
  • Specific i18n features of XSLT (e.g. character mapping)
  • What has to be handled carefully: i18n sensitive types, end-of-line handling, white spaces, etc.

Benefits for the audience:

  • Attendees will understand the processing model of XQuery and XSLT, the data model and their i18n related aspects.
  • Attendees will be able to process multilingual XML data (documents, data bases, distributed data) and create various output formats.
  • Attendees will learn about the function library of QT, which is THE powertool for XML based i18n processing.

Benefits in general: QT is an indispensable part of XML processing architectures. Content Developers, Web Administrators, Web Designers and many other user groups who process i18n sensitive XML data will gain from this tutorial.

Prior knowledge: Basic knowledge of XML.