XML Family of Languages Overview and Classification of W3C Specifications

Airi Salminen 05 February 2003

This version: http://www.cs.jyu.fi/~airi/xmlfamily-20030205. Latest version: http://www.cs.jyu.fi/~airi/xmlfamily.html Previous version: http://www.cs.jyu.fi/~airi/xmlfamily-20021022.html

Table of Contents

1. Introduction 2. Classification of the Languages 3. XML 4. XML Accessories 5. XML Transducers 6. XML Applications 6.1 Non-textual Data 6.2 Web Publishing 6.3 Semantic Web 6.4 Web Communication and Services About this report

1. Introduction XML is a for presenting information as structured documents. The language has been developed from SGML (Standard Generalized Markup Language, ISO 8879) as an activity of the Consortium (W3C). Within W3C there is going on a number of other XML-related language development activities where the intent is to specify syntactic and semantic rules either for some specific kind of XML data or for data to be used together with XML data for a specific purpose. Together with XML, we call this group of languages the XML family of languages. The purpose of this report is to give a concise overview of the languages in the family and the current state of their development at W3C. The document introduces a classification for the languages and also serves as a portal to the specifications of the languages.

Results of W3C development activities are published as W3C Technical Reports. The process of developing technical reports is described in the W3C Process Document. This overview is based on the analysis of current technical reports of four types: Working Drafts, Candidate Recommendations, Proposed Recommendations, and Recommendations. The four types differ in their maturity from lower to higher:

· A Working Draft (WD) represents work in progress, it is a draft document and may be updated, replaced or obsoleted by other document any time.

· A Candidate Recommendation (CD) has received significant review from its immediate technical community. The document is an explicit call for implementation and technical feedback.

· A Proposed Recommendation (PR) represents consensus within the group that produced it and has been proposed by the Director to the Advisory Committee for review.

· A Recommendation (R) represents consensus within W3C. W3C makes every effort to maintain its Recommendations (e.g., by tracking errata, providing testbed applications, helping to create test suites, etc.) and to encourage widespread implementation. The practice in W3C is to collect all known errors in a Recommendation into an errata document referred to in the Recommendation.

2. Classification of the Languages

Considering the purpose of the XML-related languages developed at W3C, four main categories can be identified. The first category consists of the different versions of XML itself. XML is intended for representing information as structured documents on the Web and for defining special languages for special purposes. The other three categories are called XML Accessories, XML Transducers, and XML Applications:

XML Accessories are languages which are intended for wide use to extend the capabilities specified in XML. Examples of XML accessories are the XML Schema language extending the definition capability of XML DTDs and the XML Names extending the naming mechanism to allow in a single XML document element and attribute names that are defined for and used by multiple software modules.

XML Transduces are languages which are intended for transducing some input XML data into some output form. Examples of XML transducers are the style sheet languages CSS and XSL intended to produce an external presentation from some XML data and XSLT intended for transforming XML documents into other XML documents. A transducer language is associated with some kind of processing model which defines the way output is derived from input.

XML Applications are languages which define constraints for a class of XML data for some special application area, often by means of a DTD. Examples of XML applications are MathML defined for mathematical data or XML- Signature intended for digital signatures. XML accessories and XML transducers are often XML-based languages and thus also XML applications. In this report a language is however classified as an XML application only if it has not been included in the accessories or transducers.

The languages in the XML applications category can be further divided into four subcategories according to the application area:

l Non-textual forms of data like mathematical data or voice. l Web publishing, to replace HTML by XML-based representation format. l Semantic web. l Web communication and services.

The following sections introduce the languages according to the classification given above. The sections include tables listing the specification documents and those W3C Technical Reports which are closely related to the specifications. In the tables there are links to the specifications and other reports as they were at the date of this report. In cases were the target of a link in this overview document would outdated, a link to the latest version of the W3C document is provided in the target. The tables also show the current phase of the specification process (WD = Working Draft, CR = Candidate Recommendation, PR = Proposed Recommendation, or R = Recommendation). As a reminder of the emergent nature of the W3C specifications and their continuing redevelopment, the links to Recommendations (R) are associated with links to their errata documents. It has to be noticed that all specifications described by Working Drafts (WD) are work in progress and any changes in them may happen.

[Introduction | XML | XML Accessories | XML Transducers | XML Applications]

3. XML

The XML development started in 1996. The use of HTML (HyperText Markup Language) as the publishing language of the Internet had quickly expanded in the begin of 1990’s. The capabilities of the HTML to encode information were however very limited and there was a need to find an agreement about a generic markup language straightforwardly usable over the Internet. SGML (Standard Generalized Markup Language), published as an ISO standard in 1986, had been widely accepted as a generic markup language for digital documents, but the large collection of rules in SGML and the number of different optional features caused problems in the implementation and utilization of SGML. The goal in the XML development was to restrict the rules of SGML and thus to ease the writing of programs for processing documents.

The first W3C Recommendation for XML 1.0 was published in February 1998, the second in October 2000. The Second Edition of XML 1.0 incorporates the changes dictated by the first edition errata. The second edition does not specify a new version of XML. Work has started for XML version 1.1 (formerly known as XML Blueberry). Table 1 includes links to the different XML specifications and also to those W3C documents which describe an abstract model for XML documents.

Table 1. Specifications for XML Document, Phase (R, PR, CR, WD), Month, Year - Extensible Markup Language (XML) 1.0, R, Feb. 1998 XML 1.0 Specification Errata

- Extensible Markup Language (XML) 1.0 (Second Edition), R, Oct. 2000 XML 1.0 Second Edition Specification Errata

- XML 1.1, CR, Oct. 2002 - XML Blueberry Requirements, WD, Sept. 2001

Abstract models for XML documents: - XML Information Set, R, Oct. 2001 - XML Path Language (XPath) Version 1.0, R, Nov. 1999 - (DOM) Level 1 Specification Version 1.0, R, Oct. 1998 - Document Object Model (DOM) Level 2 Core Specification Version 1.0, R, Nov. 2000 - XQuery 1.0 and XPath 2.0 Data Model, WD, Nov. 2002

The XML specifications describe the concrete syntax of XML documents, and partially the behaviour of an XML processor, i.e., a software module used to read XML documents and to provide access to their content and structure. Slightly different abstract models for information available in XML documents have been introduced at W3C:

· The XML Information Set specification defines an abstract data set called XML Information Set (Infoset). The definitions in the specification are intended for other specifications that need to refer to information in a well- formed XML document.

· The XPath Data Model is included in the XML Path Language (XPath) specification to allow the specification of addressing parts of an XML document.

· DOM (Document Object Model) is an application programming interface for XML and HTML documents. It defines the way data in a document is structured, accessed and manipulated. The DOM Level 1 Specification was published in 1998, the DOM Level 2 specifications published in November 2000 extend and update the Level 1 specification. The Level 2 consists of five parts: Core, Views, Events, Style, and Traversal and Range. The underlining data structure of XML documents is in the Core specification. The specification of the DOM Level 3 Core has started.

· XQuery 1.0 and XPath 2.0 Data Model is intended to define the information contained in the input to an XSLT or XQuery processor.

All of the four models describe an XML document as a tree structure but there are differences in the trees and in the information available in the trees.

XML is intended to be universal format for data on the Web. To support references to Internet resources, the use of different character sets, and the use of different natural languages of the world, the XML specification uses a set of specifications introduced by other development authorities than W3C. These specifications are listed in Table 2. Unicode has replaced several different character encoding systems by a uniform encoding where a unique number is provided for every character, to be used in different platforms, by different programs, and for different languages of the world. In principle, it allows data to be transported through different systems without corruption. In practice, however, the lack of Unicode support in software as well as evolution of the Unicode has caused problems in character encoding of XML documents. For more information about the Unicode see the Unicode Home Page. As a joint W3C and Unicode Consortium activity there is work in progress for developing guidelines on the use of the Unicode Version 3.0 in conjunction with markup like XML (See Unicode in XML and other Markup Languages, Unicode Technical Report #20, W3C Note 18 February 2002). Work is going on to develop a Character Model for the World Wide Web 1.0. The purpose is to support the transmittal and processing of the characters used around the world in a well-defined and well-understood way.

Table 2. The Basis for XML Specification Purpose Developing Organization, Year Unicode Describing characters in The Unicode Consortium, 1996 Unicode3 different natural The Unicode Consortium, 2000 ISO/IEC 10646 languages of the world ISO, 1993 + amendments ISO/IEC 10646-2000 ISO, 2000 IANA-CHARSETS Denoting character sets IANA IETF RFC 1766 Denoting languages and IETF, 1995 ISO 639 countries ISO, 1988 ISO 3166 ISO, 1997 IETF RFC 2396 Identifying Internet IETF, 1998 IETF RFC 2732 resources IETF, 1999 IANA = Internet Assigned Numbers Authority ISO = International Organization for Standardization IETF = Internet Engineering Task Force

[Introduction | XML | XML Accessories | XML Transducers | XML Applications]

4. XML Accessories

XML accessories are languages which are intended for wide use to extend the capabilities specified in XML. Table 3 lists the current XML accessories. At the moment six of the languages have reached the Recommendation stage: XML Names, XPath, XML Schema, XLink, XML Base, and the language for specifying associated style sheets for an XML document.

XML Names is intended to facilitate the use of qualified element and attribute names in XML documents, in order to prevent name collisions. A qualified name consists of two parts: a namespace name as a prefix and a local part. The namespace name is identified by a URI reference. XML Names is used as an extension of XML in most other specifications of the XML family. XML Schema extends the definition capabilities of XML, in particular, it allows the use of a variety of data types, e.g. boolean, float, int, date, and their validation in conforming software. XML Schema is intended to constrain XML documents but the schemas themselves are not necessarily written in XML. There is however an XML notation for the schema language. Three levels of conformance for schema aware processors are defined: minimally conforming processors, conformance to the XML representation of schemas, and fully conforming processors.

XPath defines how to address parts in XML documents. In support of this primary purpose it also provides basic facilities for manipulation of strings, numbers, and booleans. The development of the second version of XPath has started. XLink is intended for description and creation of links between Internet resources. The links can be simple unidirectional links similar to HTML, as well as relationships among more than two resources. Links can also reside in a location separate from the linked resources, and they can be associated with metadata. XML Base provides a base URI service for XLink. The purpose of the service is to resolve relative URIs in links to external resources like images, applets, form-processing programs, and style sheets.

XPointer defines fragment identifiers for URI references. It is built on top of the XPath language. XPointer extends XPath to allow addressing points and ranges as well as whole nodes, locating information by string matching, and using addressing expressions in URI references as fragment identifiers. Currently the XPointer design earlier described in a single document has been factored into the design of four schemes described in four separate documents: a basic framework, XPointer element() for addressing elements by their position in the element tree, XPointer xmlns() for binding namespace prefixes to namespace name, and XPointer () for full XPath addressing.

Table 3. XML Accessories Language Purpose Document, Phase (R, PR, CR, WD), Month, Year XML Names Qualifying element - Namespaces in XML, R, Jan. 1999 and attribute names Errata for Namespaces in XML

- Namespaces in XML 1.1, CR, Dec. 2002 - Namespaces in XML 1.1 Requirements, WD, April 2002 XML Schema Constraining of a - XML Schema Part 0: Primer, R, May 2001 (non- class of XML normative decription) documents - XML Schema Part 1: Structures, R, May 2001 - XML Schema Part 2: Datatypes, R, May 2001 - W3C XML Schema Parts 0, 1 and 2 Errata

- Requirements for XML Schema 1.1, WD, Jan. 2003 - XML Schema: Component Designators, WD, Jan. 2003 - XML Schema: Formal Description, WD, Sept. 2001 XPath Addressing parts of - XML Path Language (XPath) Version 1.0, R, an XML document Nov. 1999 XPath Version 1.0 Specification Errata

- XML Path Language (XPath) 2.0, WD, Nov. 2002 - XPath Requirements Version 2.0, WD, Feb. 2001 XLink To create and XML Linking Language (XLink) Version 1.0, R, describe links June 2001 W3C XML Linking Errata XML Base A base URI service XML Base, R, June 2001 for XLink W3C XML Base Errata -stylesheet Associating style Associating Style Sheets with XML documents processing sheets with an XML Version 1.0, R, June 1999 instruction document Errata for "Associating Style Sheets with XML documents Version 1.0" XPointer Fragment identifiers - XPointer Framework, WD, July 2002 for URI - XPointer element() Scheme, WD, July 2002 references - XPointer xmlns() Scheme, WD, July 2002 - XPointer xpointer() Scheme, WD, Dec. 2002

[Introduction | XML | XML Accessories | XML Transducers | XML Applications]

5. XML Transducers

The XML transducer languages are intended for transducing some input XML data into some output form.Table 4 lists the XML transducer languages. They include languages for rendering (CSS and XSL), transformation (XSLT), canonicalization (Canonical XML), fragment interchange (XML Fragment Interchange), merging (XInclude), and querying (XQuery).

CSS is a language for specifying style sheets for any structured documents. In developing CSS2 XML as a notation for structured documents was taken especially into account. CSS Mobile Profiles specifies a subset of CSS2 to be used for mobile devices. The goal in CSS3 is to create a modularized CSS specification. XSL is a style sheet language especially designed for XML documents. It uses XML syntax for style sheets. XSL contains the transformation language XSLT as its component. XSLT can be used also independently of XSL to describe transformations of XML documents.

Canonical XML defines a process to create a specified physical representation, a canonical form, to an XML document or a document subset. The process is called canonicalization. XML Fragment Interchange language includes capabilities to specify a part of a whole XML document as a fragment to be sent to a receiver. XInclude is a language for specifying merging of a set of XML documents represented as Infosets to a new Infoset.

XQuery is the W3C language under development for querying XML data. XQuery is based on an earlier introduced XML query language called Quilt, which in turn is built by pulling together features of several other XML query languages as well as features of the relational query language SQL and the object-oriented query language OQL. XQuery is a functional language and the input and output of a query is an ordered hierarchy of nodes, as described in the XQuery 1.0 and XPath 2.0 Data Model. The semantics of the various types of XQuery expressions are described informally in the XQuery 1.0 specification document. More formally the semantics is described in the XQuery 1.0 and XPath 2.0 Formal Semantics document. The XML Query Use Cases document describes important use cases for an XML query language. Each of the cases is focused on specific application area, and contains a Document Type Definition (DTD), example input data, a set of queries that might be applied to the input data, the formulazion of the queries in XQuery, and the expected result for each of the queries.

Table 4. XML Transducers Language Purpose Document, Phase (R, PR, CR, WD), Month, Year CSS Rendering - Cascading Style Sheets, level 2 CSS2 Specification, R, May 1999 Errata in REC-CSS2-19980512

- Cascading Style Sheets, level 2 revison 1, CSS 2.1 Specification, WD, Jan. 2003 - Selectors, CR, Nov. 2001 - CSS Mobile Profile 1.0, CR, July 2002 - CSS TV Profile 1.0, CR, August 2002 - Syntax of CSS rules in HTML's "style" attribute, WD, May 2002 - Introduction to CSS3, WD, May 2001 - User Interface for CSS3, WD, Feb 2000 - CSS3 module: line, WD, May 2002 - CSS3 module: text, WD, Oct. 2002 - CSS3 module: Basic User Interface, WD, August 2002 - CSS3 module: Lists, WD, Nov. 2002 - CSS3 module: Border, WD, Nov. 2002 - CSS3 module: Ruby, WD, Oct. 2002 - CSS3 module: Color, WD, April 2002 - CSS3 module: Fonts, WD, August 2002 - CSS3 module: Web Fonts, WD, August 2002 - CSS3 module: The box model, WD, Oct. 2002 - CSS3 module: Values and Units, WD, July 2001 - CSS3 module: Cascading and inheritance, WD, Feb. 2002 - CSS3 module: Backgrounds, WD, August 2002 - Media queries, CR, July 2002 - Paged Media Properties for CSS3, WD, Sept. 1999 - CSS Namespace Enhancements (Proposal), WD, June 1999 - Color Profiles for CSS3, WD, June 1999 - Multi-column layout in CSS, WD, June 1999 - Behavioral Extensions to CSS, WD, Aug 1999 - International Layout, WD, Sept. 1999 XSL Rendering Extensible Stylesheet Language (XSL) Version 1.0, R, Oct. 2001 Extensible Stylesheet Language (XSL) Version 1.0 Errata XSLT Transformation - XSL Transformations (XSLT) Version 1.0, R, Nov. 1999 XSL Transformations (XSLT) Version 1.0 Specification Errata

- XSL Transformations (XSLT) Version 2.0, WD, Nov. 2002 - XSLT Requirements Version 2.0, WD, Feb. 2001 Canonical XML Canonicalization - Canonical XML Version 1.0, R, March 2001 Errata of the Canonical XML 1.0 Specification

- Exclusive XML Canonicalization Version 1.0, R, July 2002 Errata of the Exclusive Canonicalization Version 1.0 Specification XML Fragment Interchanging XML Fragment Interchange, CR, Feb. 2001 Interchange fragments XInclude Merging XML Inclusions (XInclude) Version 1.0, CR, Sept. 2002 XQuery Querying - XQuery 1.0: An XML Query Language, WD, Nov. 2002 - XML Query Requirements, WD, Feb. 2001 - XQuery 1.0 and XPath 2.0 Data Model, WD, Nov. 2002 - XQuery 1.0 and XPath 2.0 Functions and Operators, WD, Nov. 2002 - XQuery 1.0 and XPath 2.0 Formal Semantics, WD, Nov. 2002 - XML Syntax for XQuery 1.0 (XQueryX), WD, June 2001 - XML Query Use Cases, WD, Nov. 2002

[Introduction | XML | XML Accessories | XML Transducers | XML Applications]

6. XML Applications

The languages intended for XML documents on some specific application areas are divided into four subcategories and the links to the specifications are correspondingly provided in four tables. The first subcategory (Table 5) consists of languages intended for non-textual forms of data: mathematical data, multimedia data, animation, vector graphics, ruby, and voice. The second subcategory (Table 6) consists of the languages intended for web publishing, to replace HTML. The third subcategory (Table 7) includes languages important for the semantic web. Finally, the fourth subcategory (Table 8) consists of the XML applications related to web communication and services. An extensive list of XML applications developed or under development also by other organizations than W3C is maintained by Robin Cover.

6.1 Non-textual Data Table 5 shows the XML applications for non-textual forms of data. MathML is a language for describing mathematical notation. The goal of MathML is to eable encoding mathematical material for the Web. SMIL is a language for integrating a set of independent multimedia objects into a syncronized multimedia presentation. It can be used to describe temporal behaviour, layout of the presentation on the screen, and links between media objects. The second version of SMIL supports the reuse of SMIL syntax and semantics in other XML-based languages. SMIL Animation defines an animation framework for XML documents. It is based upon the SMIL 1.0 timing model, with some extensions. SVG is a language for describing two-dimensional vector and mixed vector/raster graphics in XML. The Ruby Annotation is a markup language for ruby, short runs of text alongside the base text, typically used in East Asian documents to indicate pronunciation or to provide a short annotation. To enable the use of speech on the web and the access to the Web using spoken interaction W3C is developing a special markup language called VoiceXML.

Table 5. XML Applications for Non-Textual Forms of Data Language Purpose Document, Phase (R, PR, CR, WD), Month, Year MathML Mathematical - Mathematical Markup Language (MathML) notation Version 2.0, R, Feb. 2001 Errata of the MathML 2 Specification

- Mathematical Markup Language (MathML) Version 2.0 (2nd Edition), WD, Dec. 2002 - Mathematical Markup Language (MathML™) 1.01 Specification, R, July 1999

SMIL Multimedia - Synchronized Multimedia Integration Language documents (SMIL 2.0) Specification, R, August 2001 SMIL 2.0 Recommendation Errata

- Synchronized Multimedia Integration Language (SMIL) 1.0 Specification, R, June 1998 SMIL Animation Animation SMIL Animation, R, Sept. 2001 SMIL Animation Recommendation Errata SVG Vector graphics - (SVG) 1.1 Specification, R, Jan. 2003 SVG 1.1 Recommendation Errata

- Scalable Vector Graphics (SVG) 1.0 Specification, R, Sept. 2001 SVG 1.0 Recommendation Errata

- Mobile SVG Profiles: SVG Tiny and SVG Basic, R, Jan. 2003 SVG Mobile Recommendation Errata

- Scalable Vector Graphics (SVG) 1.2, WD, Nov. 2002 - SVG 1.1/2.0 Requirements, WD, April 2002

- SVG Mobile Requirements, WD, August 2001

Ruby Annotation Markup for ruby Ruby Annotation, R, May 2001 Ruby Annotation Specification Errata VoiceXML Voice markup and - Voice Extensible Markup Language (VoiceXML) CCXML telephony call 2.0, CR, Jan. 2003 control; to enable access to the Web - Voice Browser Call Control: CCXML Version using spoken 1.0, WD, Oct. 2002 interaction - Speech Recognition Grammar Specification Version 1.0, CR, June 2002 - Speech Synthesis Markup Language Version 1.0, WD, Dec. 2002 - Model Architecture for Voice Browser Systems, WD, Dec. 1999 - Introduction and Overview of W3C Speech Interface Framework, WD, Dec. 2000 - Speech Synthesis Markup Requirements for Voice Markup Languages, WD, Dec. 1999 - Natural Language Processing Requirements for Voice Markup Languages, WD, Dec. 1999 - Grammar Representation Requirements for Voice Markup Languages, WD, Dec. 1999 - Dialog Requirements for Voice Markup Languages, WD, Dec. 1999 - Reusable Dialog Requirements for Voice Markup Language, WD, April 2000 - Multimodal Requirements for Voice Markup Languages, WD, July 2000 - Natural Language Semantics Markup Language for the Speech Interface Framework, WD, Nov. 2000 - Stochastic Language Models (N-Gram) Specification, WD, Jan. 2001 - Pronunciation Lexicon Markup Requirements for the W3C Speech Interface Framework, WD, March 2001 - Semantic Interpretation for Speech Recognition, WD, Nov. 2001

6.2 Web Publishing

Table 6 lists the languages for the replacement of HTML, to allow Web publishing using XML. XHMTL is a reformulation of HTML 4 in XML 1.0. The XHMTL specification is associated with a set of other specifications supporting the modularized use of XHMTL. XFrames and XForms are languages to support the use of frames and forms, respectively.

Table 6. XML Applications for Web Publishing Language Purpose Document, Phase (R, PR, CR, WD), Month, Year XHTML Reformulation of - XHTML™ 1.0: The Extensible HyperText HTML 4.0 in XML Markup Language (Second Edition), A Reformulation of HTML 4 in XML 1.0, R, Jan. 2000, revised 1 August 2002 XHTML™ 1.0 Second Edition Specification Errata

- XHTML™ 1.0: The Extensible HyperText Markup Language, R, Jan. 1999 XHTML™ 1.0 Specification Errata

- XHTML™ Basic, R, Dec. 2000 XHTML™ Basic Specification Errata - Modularization of XHTML™, R, April 2001 Modularization of XHTML™ Specification Errata

- XHTML™ 1.1 - Module-based XHTML, R, May 2001 XHTML™ 1.1 Specification Errata

- XHTML™ 2.0, WD, Jan. 2003 - Modularization of XHTML™ in XML Schema, WD, Dec. 2002 - XHTML+SMIL Profile, WD, August 2001 - XML Events, An Events Syntax for XML, WD, Oct. 2001 XFrames XML application XFrames, WD, August 2002 allowing the functionality of HTML frames XForms Web forms - XForms 1.0, CR, Nov. 2002 - XForms Requirements, WD, August 2000 - XForms 1.0: Data Model, WD, August 2000

6.3 Semantic Web

Table 7 shows the languages important for the semantic web. The major idea in the languages is to standardize rules for adding semantic metadata and trust to the web. RDF is a general model for the metadata describing Web resources (or resources in general). The concrete syntax of RDF is given by XML and requires also the XML namespace facility. The RDF Schema language allows the use of RDF to describe RDF vocabularies, and especially to provide information about the interpretation of the statements given in an RDF data model. OWL is a semantic markup language for publishing and sharing ontologies on the web. It is derived from the DAML+OIL ontology language. XML-Signature, XKMS, , APPEL, XML Encryption are all important to improve trust on the web. XML-Signature defines syntax and processing rules for XML digital signatures. It is intended to provide integrity, message authentication and signer authentication services for data, be it located within the XML that includes the signature or elsewhere. XKMS is a protocol for distributing and registering public keys, suitable for use in conjuction with XML-Signature. P3P stands for the Platform for Privacy Preferences and it enables Web sites to express their privacy practices in a standard format. APPEL is a language for describing collections of preferences regarding P3P policies between P3P agents. It is intended to complement the P3P language. The XML encryption syntax defines a special element called EncryptedData to represent the result of encryption in XML form.

Table 7. XML Applications for the Semantic Web Language Purpose Document, Phase (R, PR, CR, WD), Month, Year RDF Metadata for Web - Resource Description Framework (RDF) Model resources and Syntax Specification, R, Feb. 1999 Errata in REC-rdf-syntax-19990222

- Resource Description Framework (RDF): Concepts and Abstract Syntax, WD, Jan. 2003 - RDF Semantics, WD, Jan. 2003 - RDF Primer, WD, Jan. 2003 - RDF/XML Syntax Specification (Revised), WD, Jan. 2003 - RDF Test Cases, WD, Jan. 2003 RDF Schema To describe RDF - RDF Vocabulary Description Language 1.0: RDF vocabularies Schema, WD, Jan. 2003 OWL Semantic markup - (OWL) Abstract Syntax language for and Semantics, WD, Feb. 2003 publishing and - Web Ontology Language (OWL) Use Cases and sharing ontologies Requirements, WD,Feb. 2003 on the web - Web Ontology Language (OWL) Reference Version 1.0, WD, Nov. 2002 - Web Ontology Language (OWL) Guide Version 1.0, WD, Nov. 2002 - Web Ontology Language (OWL) Test Cases, WD, Oct. 2002 -Feature Synopsis for OWL Lite and OWL, WD, July 2002 XML-Signature Digital signatures, - XML-Signature Syntax and Processing, R, Feb. XKMS public keys 2002 Errata of the XML-Signature and Processing Specification

- XML-Signature XPath Filter 2.0, R, Nov. 2002 Errata of the XML-Signature XPath Filter 2.0

- XML Key Management Specification (XKMS 2.0), WD, March 2002 - XML Key Management Specification Bulk Operation (X-BULK), WD, March 2002 P3P Privacy practices for The Platform for Privacy Preferences 1.0 (P3P1.0) Web sites Specification, R, April 2002 Errata of the P3P 1.0 Specification APPEL Preferences A P3P Preference Exchange Language 1.0 (APPEL regarding P3P 1.0), WD, April 2002 policies EncryptedData Encrypted data - XML Encryption Syntax and Processing, R, Dec. 2002 XML Encryption Syntax and Processing Errata - Decryption Transform for XML Signature, R, Dec. 2002 Decryption Transform for XML-Signature Errata

6.4 Web Communication and Services

The languages of Table 8 are intended for web communication and services. CC/PP (Composite Capabilities/Preference Profiles) describes a framework for specifying how client devices express their capabilities and preferences to the server that originates content. SOAP is a lightweight XML-based protocol for exchange of information in a decentralized, distributed environment. Work has also started for developing a language to describe Web services. The language is called WSDL. Another language, called WSCL for Web Service Conversation Language is used in conjuction with WSDL to allow abstract interfaces of Web services. The Evaluation and Report Language EARL is a language to express test results. It is not intended for web services only, but it is useful in building web sites and services.

Table 8. XML Applications for Web Communication and Services Language Purpose Document, Phase (R, PR, CR, WD), Month, Year CC/PP A format for how a - Composite Capabilities/ Preference Profiles: client device tells an Requirements and Architecture, WD, July 2000 origin server about - Composite Capability/Preference Profiles its user agent profile (CC/PP): Structure and Vocabularies, WD, Nov. 2002 - Composite Capabilities/ Preference Profiles: Terminology and Abbreviations, WD, July 2000 SOAP Protocol - SOAP Version 1.2 Part 0: Primer, CR, Dec. 2002 XMLP - SOAP Version 1.2 Part 1: Messaging Framework, CR, Dec. 2002 - SOAP Version 1.2 Part 2: Adjuncts, CR, Dec. 2001 - SOAP 1.2 Attachment Feature, WD, Sept. 2002 - SOAP Version 1.2 Specification Assertions and test Collection, WD, June 2002 - XML Protocol (XMLP) Requirements, WD, June 2002 - SOAP Version 1.2 Usage Scenarios, WD, June 2002 WSDL To describe Web - Web Services Description Language (WSDL) WSCL services Version 1.2, WD, Jan. 2003 - Web Services Description Language (WSDL) Version 1.2: Bindings, WD, Jan. 2003 - Web Services Internationalization Usage Scenarios, WD, Dec. 2002 - Web Services Conversation Language (WSCL) 1.0, WD, March 2002 - Web Services Description Requirements, WD, Oct. 2002 - Web Services Architecture, WD, Nov. 2002 - Web Services Glossary, WD, Nov. 2002 - Web Services Architecture Usage Scenarios, WD, July 2002 - Web Services Architecture Requirements, WD, WD, Nov. 2002 EARL To express test - Evaluation and Report Language (EARL) 1.0, results WD, Dec. 2002

About this report The first version of this report was created as part of the X Group activities at the University of Waterloo in Canada. Further maintenance takes place at the University of Jyväskylä in Finland. The work has been supported by the grant 48989 of the Academy of Finland. Please report errors in this document or other comments to mailto:[email protected].

[Introduction | XML | XML Accessories | XML Transducers | XML Applications]