W3C
XHTML(TM) Basic
W3C Recommendation 19 December 2000
This version:
http://www.w3.org/TR/2000/REC-xhtml-basic-20001219
(Plain text version, PostScript version, PDF version, ZIP
archive, or Gzip'd TAR archive)
Latest version:
http://www.w3.org/TR/xhtml-basic
Previous version:
http://www.w3.org/TR/2000/PR-xhtml-basic-20001103
Editors:
Mark Baker, Sun Microsystems
Masayasu Ishikawa, W3C
Shinichi Matsui, Panasonic
Peter Stark, Ericsson
Ted Wugofski, Openwave Systems
Toshihiko Yamakami, ACCESS Co., Ltd.
Copyright © 1999-2000 W3C® (MIT, INRIA, Keio), All Rights Reserved.
W3C liability, trademark, document use and software licensing rules
apply.
_________________________________________________________________
Abstract
The XHTML Basic document type includes the minimal set of modules
required to be an XHTML host language document type, and in addition
it includes images, forms, basic tables, and object support. It is
designed for Web clients that do not support the full set of XHTML
features; for example, Web clients such as mobile phones, PDAs,
pagers, and settop boxes. The document type is rich enough for content
authoring.
XHTML Basic is designed as a common base that may be extended. For
example, an event module that is more generic than the traditional
HTML 4 event system could be added or it could be extended by
additional modules from XHTML Modularization such as the Scripting
Module. The goal of XHTML Basic is to serve as a common language
supported by various kinds of user agents.
The document type definition is implemented using XHTML modules as
defined in "Modularization of XHTML" [XHTMLMOD].
Status of this Document
This section describes the status of this document at the time of its
publication. Other documents may supersede this document. The latest
status of this document series is maintained at the W3C.
This document has been reviewed by W3C Members and other interested
parties and has been endorsed by the Director as a W3C Recommendation.
It is a stable document and may be used as reference material or cited
as a normative reference from another document. W3C's role in making
the Recommendation is to draw attention to the specification and to
promote its widespread deployment. This enhances the functionality and
interoperability of the Web.
This document has been produced by the W3C HTML Working Group (members
only) as part of the W3C HTML Activity. It integrates feedback from
the WAP Forum and members of the W3C Mobile Access Interest Group
(members only). This document will be used by the W3C HTML Working
Group and the W3C Mobile Access Interest Group to find a common ground
for future markup languages aimed at content for small information
appliances.
"Modularization of XHTML" [XHTMLMOD] defines the XHTML modules used in
the XHTML Basic document type. At the time of this publication, the
Candidate Recommendation review period for "Modularization of XHTML"
has closed. Based on that review, the W3C HTML Working Group believes
that the definition of modules used in XHTML Basic is stable, and the
Working Group does not expect to make changes to "Modularization of
XHTML" that would be incompatible with XHTML Basic.
Public discussion of HTML takes place on www-html@w3.org (archive). To
subscribe send an email to www-html-request@w3.org with the word
subscribe in the subject line.
Please report errors in this document to www-html-editor@w3.org
(archive). The list of known errors in this document is available at
http://www.w3.org/2000/12/REC-xhtml-basic-20001219-errata.
The English version of this specification is the only normative
version. Information about translations of this document is available
at http://www.w3.org/MarkUp/translations.
A list of current W3C Recommendations and other technical documents
can be found at http://www.w3.org/TR.
Table of Contents
1. Introduction
1.1. XHTML for Small Information Appliances
1.2. Background and Requirements
1.3. Design Rationale
2. Conformance
2.1. Document Conformance
2.2. User Agent Conformance
3. The XHTML Basic Document Type
4. How to Use XHTML Basic
5. Acknowledgements
A. References
A.1. Normative References
A.2. Informative References
B. XHTML Basic Document Type Definition
B.1. SGML Open Catalog Entry for XHTML Basic
B.2. XHTML Basic Driver
B.3. XHTML Basic Customizations
1. Introduction
1.1. XHTML for Small Information Appliances
HTML 4 is a powerful language for authoring Web content, but its
design does not take into consideration issues pertinent to small
devices, including the implementation cost (in power, memory, etc.) of
the full feature set. Consumer devices with limited resources cannot
generally afford to implement the full feature set of HTML 4.
Requiring a full-fledged computer for access to the World Wide Web
excludes a large portion of the population from consumer device access
of online information and services.
Because there are many ways to subset HTML, there are many almost
identical subsets defined by organizations and companies. Without a
common base set of features, developing applications for a wide range
of Web clients is difficult.
The motivation for XHTML Basic is to provide an XHTML document type
that can be shared across communities (e.g. desktop, TV, and mobile
phones), and that is rich enough to be used for simple content
authoring. New community-wide document types can be defined by
extending XHTML Basic in such a way that XHTML Basic documents are in
the set of valid documents of the new document type. Thus an XHTML
Basic document can be presented on the maximum number of Web clients.
The document type definition for XHTML Basic is implemented based on
the XHTML modules defined in Modularization of XHTML [XHTMLMOD].
1.2. Background and Requirements
Information appliances are targeted for particular uses. They support
the features they need for the functions they are designed to fulfill.
The following are examples of different information appliances:
* Mobile phones
* Televisions
* PDAs
* Vending machines
* Pagers
* Car navigation systems
* Mobile game machines
* Digital book readers
* Smart watches
Existing subsets and variants of HTML for these clients include
Compact HTML [CHTML], the Wireless Markup Language [WML], and the
"HTML 4.0 Guidelines for Mobile Access" [GUIDELINES]. The common
features found in these document types include:
* Basic text (including headings, paragraphs, and lists)
* Hyperlinks and links to related documents
* Basic forms
* Basic tables
* Images
* Meta information
This set of HTML features has been the starting point for the design
of XHTML Basic. Since many content developers are familiar with these
HTML features, they comprise a useful host language that may be
combined with markup modules from other languages according to the
methods described in "Modularization of XHTML" [XHTMLMOD]. For
example, XHTML Basic may be extended with an event module that is more
generic than the traditional HTML 4 event system or it could be
extended by additional modules from XHTML Modularization such as the
Scripting Module.
It is not the intention of XHTML Basic to limit the functionality of
future languages. But since the features in HTML 4 (frames, advanced
tables, a fixed set of attribute event handlers, etc.) were developed
for a desktop computer type of client, they have proved to be
inappropriate for many non-desktop devices. XHTML Basic will be
extended and built upon. Extending XHTML from a common and basic set
of features, instead of almost identical subsets or the too-large set
of functions in HTML 4, will be good for interoperability on the Web,
as well as for scalability.
Compared to the rich functionality of HTML 4, XHTML Basic may look
like one step back, but in fact, it is two steps forward for clients
that do not need what is in HTML 4 and for content developers who get
one XHTML subset instead of many.
1.3. Design Rationale
This section explains why certain HTML features are not part of XHTML
Basic.
1.3.1. Style Sheets
The style element is not supported. External style sheets are
recommended. The link element can be used to include external style
sheets. The div and span elements and the class attribute are
supported to hook style information onto the structure. Separation
between structure and presentation allows user agents to download the
style sheets if they support style sheets; user agents that do not
support style sheets can ignore the external stylesheet. The media
attribute can be used to select the appropriate style sheets. See the
section on "Media types" in the HTML 4.01 specification ([HTML4],
section 14.2.4) for more details.
1.3.2. Script and Events
The script and noscript elements are not supported. Usually small
devices have limited memory and CPU power. Execution of script
programs may not be supported. Contents should be readable even if
scripts are not executed.
Event handler attributes used to invoke script programs are not
supported. Events are device dependent. An incoming-call event is
unlikely to happen in a television. A generic event handling mechanism
would be more appropriate than hardwiring the event names in the
document type definition.
1.3.3. Presentation
Many simple Web clients cannot display fonts other than monospace.
Bi-directional text, bold faced font, and other text extension
elements are not supported.
It is recommended that style sheets be used to create a presentation
that is appropriate for the device.
1.3.4. Forms
Basic XHTML forms ([XHTMLMOD], section 5.5.1) are supported. Since
only devices with a local file system can take advantage of file and
image input types in forms, they are not included in the basic forms.
Also, content developers should keep in mind that users may not be
able to input many characters from some devices (e.g. from a mobile
phone).
1.3.5. Tables
Basic XHTML tables ([XHTMLMOD], section 5.6.1) are supported, but
tables can be difficult to display on small devices. It is recommended
that content developers follow the Web Content Accessibility
Guidelines 1.0 for creating accessible tables ([WCAG10], Guideline 5).
Note that in the Basic Tables Module, nesting of tables is prohibited.
1.3.6. Frames
Frames are not supported. Frames depend on a screen interface and may
not be applicable to some small appliances like phones, pagers, and
watches.
2. Conformance
This section is normative.
2.1. Document Conformance
A Conforming XHTML Basic document is a document that requires only the
facilities described as mandatory in this specification. Such a
document must meet all of the following criteria:
1. The document must conform to the constraints expressed in Appendix
B.
2. The root element of the document must be .
3. The name of the default namespace on the root element must be the
XHTML namespace name, http://www.w3.org/1999/xhtml.
4. There must be a DOCTYPE declaration in the document prior to the
root element. If present, the public identifier included in the
DOCTYPE declaration must reference the DTD found in Appendix B
using its Formal Public Identifier. The system identifier may be
modified appropriately.
5. The DTD subset must not be used to override any parameter entities
in the DTD.
2.2. User Agent Conformance
The user agent must conform to the "User Agent Conformance" section of
the XHTML 1.0 specification ([XHTML1], section 3.2).
3. The XHTML Basic Document Type
This section is normative.
The XHTML Basic document type is defined as a set of XHTML modules.
All XHTML modules are defined in the "Modularization of XHTML"
specification [XHTMLMOD].
XHTML Basic consists of the following XHTML modules:
Structure Module*
body, head, html, title
Text Module*
abbr, acronym, address, blockquote, br, cite, code, dfn, div,
em, h1, h2, h3, h4, h5, h6, kbd, p, pre, q, samp, span, strong,
var
Hypertext Module*
a
List Module*
dl, dt, dd, ol, ul, li
Basic Forms Module
form, input, label, select, option, textarea
Basic Tables Module
caption, table, td, th, tr
Image Module
img
Object Module
object, param
Metainformation Module
meta
Link Module
link
Base Module
base
(*) = This module is a required XHTML Host Language module.
An XML 1.0 DTD is available in Appendix B.
NOTE: Since the HTML event handler attributes are not included in
XHTML Basic, form controls outside forms may not function as expected
by the user.
4. How to Use XHTML Basic
Although XHTML Basic can be used as it is - a simple XHTML language
with text, links, and images - the intention of its simple design is
for use as a host language. A host language can contain a mix of
vocabularies all rolled into one document type. It is natural that
XHTML is the host language, since that is what most Web developers are
used to.
When markup from other languages is added to XHTML Basic, the
resulting document type will be an extension of XHTML Basic. Content
developers can develop for XHTML Basic or take advantage of the
extensions. The goal of XHTML Basic is to serve as a common language
supported by various kinds of user agents.
5. Acknowledgements
This specification was prepared by the W3C HTML Working Group. The
members were:
* Steven Pemberton, CWI (HTML Working Group Chair)
* Robert Adams, Intel (until November 2000)
* Murray Altheim, Sun Microsystems
* Takuya Asada, W3C (until October 2000)
* Daniel Austin, Mozquito Technologies
* Mark Baker, Sun Microsystems
* Wayne Carr, Intel
* Tantek Çelik, Microsoft
* Andrew W. Donoho, IBM
* Herman Elenbaas, Philips Electronics
* Beth Epperson, Netscape/AOL
* Masayasu Ishikawa, W3C (HTML Activity Lead)
* Shin'ichi Matsui, Panasonic
* Shane McCarron, Applied Testing and Technology
* Ann Navarro, WebGeek, Inc.
* Dave Raggett, W3C/Openwave Systems
* Sebastian Schnitzenbaumer, Mozquito Technologies (until September
2000)
* Peter Stark, Ericsson
* Michel Suignard, Microsoft
* Markku Vartiainen, Openwave Systems
* Jeremy Wadsworth, Quark Inc.
* Malte Wedel, Mozquito Technologies
* Linda Welsh, Intel
* Ted Wugofski, Openwave Systems
Thanks to Gary Adams (Sun Microsystems), Jonny Axelsson (Metastasis
design), Peter Chen (Philips), Dan Connolly (W3C), John Cowan
(Reuters), Martin J. Dürst (W3C), Johan Hjelm (Ericsson), Ian Jacobs
(W3C), Susan Lesch (W3C), Louis Theran (Nokia), Quinton Zondervan
(Lotus), members of the W3C Mobile Access Interest Group, the W3C
Synchronized Multimedia Working Group, the W3C WAI Protocols and
Formats Working Group, and the WAP Forum, for contributing, reviewing
and commenting on this document.
A. References
A.1. Normative References
[HTML4]
"HTML 4.01 Specification", W3C Recommendation, D. Raggett, A.
Le Hors, I. Jacobs, eds., 24 December 1999. Available at:
http://www.w3.org/TR/1999/REC-html401-19991224
The latest version is available at: http://www.w3.org/TR/html4
[XHTML1]
"XHTML 1.0: The Extensible HyperText Markup Language - A
Reformulation of HTML 4 in XML 1.0", W3C Recommendation, Steven
Pemberton et al., 26 January 2000. Available at:
http://www.w3.org/TR/2000/REC-xhtml1-20000126
The latest version is available at: http://www.w3.org/TR/xhtml1
[XHTMLMOD]
"Modularization of XHTML", W3C Candidate Recommendation, R.
Adams, M. Altheim, F. Boumphrey, S. Dooley, S. McCarron, S.
Schnitzenbaumer, T. Wugofski, eds., 20 October 2000. Available
at: http://www.w3.org/TR/2000/CR-xhtml-modularization-20001020
The latest version is available at:
http://www.w3.org/TR/xhtml-modularization
[XML]
"Extensible Markup Language (XML) 1.0 (Second Edition)", W3C
Recommendation, T. Bray, J. Paoli, C. M. Sperberg-McQueen, E.
Maler, eds., 6 October 2000. Available at:
http://www.w3.org/TR/2000/REC-xml-20001006
The latest version is available at:
http://www.w3.org/TR/REC-xml
A.2. Informative References
[CHTML]
"Compact HTML for Small Information Appliances", W3C Note, T.
Kamada, 9 February 1998. Available at:
http://www.w3.org/TR/1998/NOTE-compactHTML-19980209
[GUIDELINES]
"HTML 4.0 Guidelines for Mobile Access, W3C Note, T. Kamada, T.
Asada, M. Ishikawa, S. Matsui, eds., 15 March 1999. Available
at: http://www.w3.org/TR/1999/NOTE-html40-mobile-19990315
The latest version is available at:
http://www.w3.org/TR/NOTE-html40-mobile
[WCAG10]
"Web Content Accessibility Guidelines 1.0", W3C Recommendation,
W. Chisholm, G. Vanderheiden, I. Jacobs, eds., 5 May 1999.
Available at: http://www.w3.org/TR/1999/WAI-WEBCONTENT-19990505
The latest version is available at: http://www.w3.org/TR/WCAG10
[WML]
"Wireless Markup Language Specification", WAP Forum Ltd.
Available from http://www.wapforum.org/what/technical.htm
B. XHTML Basic Document Type Definition
This appendix is normative.
B.1. SGML Open Catalog Entry for XHTML Basic
This section contains the SGML Open Catalog-format definition of the
XHTML Basic FPI.
-- .......................................................................... --
-- File catalog ............................................................ --
-- XHTML Basic Catalog Data File
Revision: $Id: xhtml-basic10.cat,v 2.4 2000/12/18 21:42:58 mimasa Exp $ SMI
See "Entity Management", SGML Open Technical Resolution 9401 for detailed
information on supplying and using catalog data. This document is available
from OASIS at URL:
--
-- .......................................................................... --
-- SGML declaration associated with XML .................................... --
OVERRIDE YES
SGMLDECL "xml1.dcl"
-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: --
-- XHTML Basic DTD modular driver file ..................................... --
PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" "xhtml-basic10.dtd"
-- XHTML Basic framework module ............................................. --
PUBLIC "-//W3C//ENTITIES XHTML Basic 1.0 Document Model 1.0//EN" "xhtml-basic10-model-1.mod"
-- End of catalog data ..................................................... --
-- .......................................................................... --
B.2. XHTML Basic Driver
This section contains the driver for the XHTML Basic document type
implementation as an XML DTD. It relies upon XHTML module
implementations defined in [XHTMLMOD].
%xhtml-framework.mod;
%xhtml-text.mod;
%xhtml-hypertext.mod;
%xhtml-list.mod;
%xhtml-image.mod;]]>
%xhtml-table.mod;]]>
%xhtml-form.mod;]]>
%xhtml-link.mod;]]>
%xhtml-meta.mod;]]>
%xhtml-base.mod;]]>
%xhtml-param.mod;]]>
%xhtml-object.mod;]]>
%xhtml-struct.mod;
B.3. XHTML Basic Customizations
An XHTML Family Document Type (such as XHTML Basic) must define the
content model that it uses. This is done through a separate content
model module that is instantiated by the XHTML Modular Framework. The
content model module and the XHTML Basic Driver (above) work together
to customize the module implementations to the document type's
specific requirements. The content model module for XHTML Basic is
defined below: