FACTOID # 16: In the 2000 Presidential Election, Texas gave Ralph Nader the 3rd highest popular vote count of any US state.
 
 Home   Encyclopedia   Statistics   States A-Z   Flags   Maps   FAQ   About 
   
 
WHAT'S NEW
RELATED ARTICLES
People who viewed "XHTML" also viewed:
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > XHTML
XHTML
File extension: .xhtml, .xht, .html, .htm
MIME type: application/xhtml+xml
Developed by: World Wide Web Consortium
Type of format: Markup language
Extended from: XML, HTML
Standard(s): 1.0 (Recommendation),

1.1 (Recommendation),
Image File history File links XHTML.svg‎ XHTML file format see http://en. ... A filename extension is a suffix to the name of a computer file applied to show its format. ... Multipurpose Internet Mail Extensions (MIME) is an Internet Standard that extends the format of e-mail to support: text in character sets other than US-ASCII; non-text attachments; multi-part message bodies; and header information in non-ASCII character sets. ... It has been suggested that W3C Markup Validation Service be merged into this article or section. ... A specialized markup language using SGML is used to write the electronic version of the Oxford English Dictionary. ... The Extensible Markup Language (XML) is a general-purpose markup language. ... HTML, short for Hypertext Markup Language, is the predominant markup language for the creation of web pages. ... Standards are produced by many organizations, some for internal usage only, others for use by a groups of people, groups of companies, or a subsection of an industry. ...

2.0 (Working Draft)

The Extensible HyperText Markup Language, or XHTML, is a markup language that has the same depth of expression as HTML, but also conforms to XML syntax. A specialized markup language using SGML is used to write the electronic version of the Oxford English Dictionary. ... HTML, short for Hypertext Markup Language, is the predominant markup language for the creation of web pages. ... The Extensible Markup Language (XML) is a general-purpose markup language. ...


Whereas HTML is an application of SGML, a very flexible markup language, XHTML is an application of XML, a more restrictive subset of SGML. Because they need to be well-formed, true XHTML documents allow for automated processing to be performed using standard XML tools—unlike HTML, which requires a relatively complex, lenient, and generally custom parser. XHTML can be thought of as the intersection of HTML and XML in many respects, since it is a reformulation of HTML in XML. XHTML 1.0 became a World Wide Web Consortium (W3C) Recommendation on January 26, 2000. XHTML 1.1 became a W3C recommendation on May 31, 2001. The Standard Generalized Markup Language (SGML) is a metalanguage in which one can define markup languages for documents. ... The Extensible Markup Language (XML) is a general-purpose markup language. ... The Extensible Markup Language (XML) is a general-purpose markup language. ... An example of parsing a mathematical expression. ... It has been suggested that W3C Markup Validation Service be merged into this article or section. ... is the 26th day of the year in the Gregorian calendar. ... Year 2000 (MM) was a leap year starting on Saturday (link will display full 2000 Gregorian calendar). ... is the 151st day of the year (152nd in leap years) in the Gregorian calendar. ... Year 2001 (MMI) was a common year starting on Monday (link displays the 2001 Gregorian calendar). ...

Contents

Overview

The W3C offers this icon, which may be placed on valid XHTML 1.0 documents once they pass through the W3C Markup Validator

XHTML is the successor to HTML. As such, many consider XHTML to be the current or latest version of HTML. However, XHTML is a separate recommendation; the W3C continues to recommend the use of XHTML 1.1, XHTML 1.0, and HTML 4.01 for web publishing. From the W3C (World Wide Web Consortium) home page. ... It has been suggested that this article or section be merged into World Wide Web Consortium. ... The World Wide Web Consortium (W3C) is a consortium that produces standards—recommendations, as they call them—for the World Wide Web. ...


Motivation

The need for a reformulated version of HTML was felt primarily because World Wide Web content now needs to be delivered to many devices (like mobile devices) apart from traditional computers, where extra resources cannot be devoted to support the additional complexity of HTML syntax. In practice, however, HTML supporting browsers for constrained devices have emerged faster than XHTML support has been added to the desktop browser with the largest market share. WWWs historical logo designed by Robert Cailliau The World Wide Web is a system of interlinked, hypertext documents accessed via the Internet. ... Mobile Computing is a generic term describing your ability to use technology untethered, that is not physically connected, or in remote or mobile (non static) environments. ... The NASA Columbia Supercomputer. ...


Another goal for XHTML and XML was to reduce the demands on parsers and user-agents in general. With HTML, user-agents increasingly took on the burden of “correcting” errant documents. Instead XML requires user-agents to signal a “fatal” error when encountering malformed XML. This means that an XHTML browser can theoretically omit error recovery code even though it may even need slightly more error detection checks. The recommendation for browsers to post an error rather than attempt to render malformed content should help eliminate malformed content. Even when authors do not validate code, and simply test against an XML browser, errors will be revealed.


An especially useful feature XHTML inherits from its XML underpinnings is XML namespaces. With namespaces, authors or communities of authors can define their own XML elements, attributes and content models to mix within XHTML documents. This is similar to the semantic flexibility of the ‘class’ attribute from HTML, but with much more power. Some W3C XML namespaces/schema that can be mixed with XHTML include MathML for semantic math markup, Scalable Vector Graphics for markup of vector graphics, and RDFa for embedding RDF data. A namespace is a context in which a group of one or more identifiers might exist. ... Mathematical Markup Language (MathML) is an application of XML for describing mathematical notation and capturing both its structure and content. ... Scalable Vector Graphics (SVG) is an XML specification and file format for describing two-dimensional vector graphics, both static and animated. ... RDFa is a set of extensions to XHTML being proposed by W3C. RDFa uses attributes from XHTMLs meta and link elements, and generalises them so that they are usable on all elements. ... Resource Description Framework (RDF) is a family of World Wide Web Consortium (W3C) specifications originally designed as a metadata model but which has come to be used as a general method of modeling information, through a variety of syntax formats. ...


Relationship to HTML

The changes from HTML to first-generation XHTML 1.0 are minor and are mainly to achieve conformance with XML. The most important change is the requirement that the document must be well-formed and that all elements must be explicitly closed as required in XML. In XML, all element and attribute names are case-sensitive, so the XHTML approach has been to define all tag names to be lowercase. In web page design, and generally for all markup languages based on SGML, such as HTML, XML, a well-formed element is one that is either opened and closed, an empty element, which still must be terminated, and is properly nested and does not overlap. ... In computing, an HTML element indicates structure in an HTML document and a way of hierarchically arranging content. ...


This contrasts with some earlier established traditions which began around the time of HTML 2.0, when many used uppercase tags. In XHTML, all attribute values must be enclosed by quotes (either 'single' or "double" quotes may be used). In contrast, this was sometimes optional in SGML, and hence in HTML, where numeric or boolean attributes can dispense with quotes (quoted attributes are assumed to be strings). All elements must also be explicitly closed, including empty (aka singleton) elements such as img and br. This can be done by adding a closing slash to the start tag: <img /> and <br />. Attribute minimization (e.g., <option selected>) is also prohibited as the attribute “selected” contains no explicit value; instead, use <option selected="selected">. Generally, a singleton is something which exists alone in some way. ...


HTML elements which are optional in the content model, will not appear in the DOM tree unless they are explicitly specified. For example, an XHTML page must have a <body> element, and a table will not have a <tbody> element unless the author specifies one. More differences are detailed in the W3C XHTML 1.0 recommendation [1]. Differences between HTML and XHTML from the (X)HTML5 point of view are detailed on the WHATWG wiki. HTML5 is is the fifth major revision of the core language of the World Wide Web, HTML. The HTML5 language is defined by a draft specification called “HTML 5” (note the space). ...


Because XHTML and HTML are closely related technologies, sometimes they are written about and documented in parallel. In such circumstances, some authors conflate the two names by using a parenthetical notation, such as (X)HTML or X(HTML). This indicates that the documentation and principles can be considered to apply generally to both standards.[1]


Adoption

Adoption of XHTML continues at an uneven pace.


The similarities between HTML 4.01 and XHTML 1.0 led many web authors, content management systems and web sites to adopt the initial W3C XHTML 1.0 recommendations. To aid authors in the transition, the W3C included an appendix to the XHTML 1.0 recommendations describing how to publish XHTML 1.0 documents as HTML-compatible documents and serve them to HTML browsers that were not designed for XHTML.[2]


Browser support for XHTML 1.0 remains incomplete even though it has been many years since the Recommendation status of XHTML 1.0. For example, Internet Explorer by Microsoft (MSIE) has had XML parsing capabilities since version 5.0 in 1999, but even in mid-2007, the current version (IE7) still does not support XHTML documents served as XML; it only renders them correctly when they are served as HTML and are authored in accordance with the HTML compatibility guidelines. MSIE developer Chris Wilson explained in 2005 that IE7's priorities were improved security and CSS support, and that proper XHTML support would be difficult to graft onto IE's compatibility-oriented HTML parser.[3] Windows Internet Explorer (formerly Microsoft Internet Explorer, abbreviated MSIE), commonly abbreviated to IE, is a series of proprietary graphical web browsers developed by Microsoft and included as part of the Microsoft Windows line of operating systems starting in 1995. ... Microsoft Corporation, (NASDAQ: MSFT, HKSE: 4338) is a multinational computer technology corporation with global annual revenue of US$44. ... Cascading Style Sheets (CSS) is a computer language used to describe the presentation of a structured document written in HTML, XHTML or XML. The CSS specification is maintained by the World Wide Web Consortium (W3C). ...


While most other browsers respond properly to all of the possible XHTML MIME types, they are not yet feature complete; for example Firefox and other Gecko-based browsers do not yet incrementally render XHTML as they receive it over the network in the way they do with HTML (this is fixed in Gecko 1.9, which should become widely available in Firefox 3.0 and in Opera 10.0). Typically, in software development, a release is called feature complete when the product team agrees that functional requirements of the system are met and no new features will be put into the release, but significant software bugs may still exist. ... Epiphany using Gecko to render the Wikipedia main page Gecko is the open source, free software web browser layout engine used in all Mozilla-branded software and its derivatives, including later Netscape releases. ...


Obstacles from browser vendors have slowed the effective rate of the adoption. Without broader browser support, XHTML documents must continue to be served as HTML, and therefore some of the advantages of XML — namespaces, faster parsing and smaller-footprint browsers — remain elusive on a wide scale.


Recently, notable bloggers have begun to question why Web authors ever made the leap into authoring in XHTML, and are suggesting that the W3C’s Appendix C HTML Compatibility Guidelines are a hack.[4][5][6] In October 2006, HTML inventor and W3C chair Tim Berners-Lee, explaining the motivation for the resumption of HTML (not XHTML) development, posted in his blog: "The attempt to get the world to switch to XML, including quotes around attribute values and slashes in empty tags and namespaces all at once didn't work. The large HTML-generating public did not move, largely because the browsers didn't complain."[7] A hack in progress in Lobby 7 at MIT. Hack is a term in the slang of the technology culture which has come into existence over the past few decades. ... Sir Tim Berners-Lee Sir Tim (Timothy John) Berners-Lee, KBE (TimBL or TBL) (b. ...


Versions of XHTML

XHTML 1.0

Wikipedia uses XHTML 1.0
Wikipedia uses XHTML 1.0

The original XHTML W3C Recommendation, XHTML 1.0, was simply a reformulation of HTML 4.01 in XML. There are three different "DTDs" of XHTML 1.0, each equal in scope to their respective HTML 4.01 versions. Image File history File links Download high-resolution version (1050x491, 35 KB) The XHTML source for Wikpedia. ... Image File history File links Download high-resolution version (1050x491, 35 KB) The XHTML source for Wikpedia. ... Wikipedia (IPA: , or ( ) is a multilingual, web-based, free content encyclopedia project, operated by the Wikimedia Foundation, a non-profit organization. ... Document Type Definition (DTD), defined slightly differently within the XML and SGML specifications, is one of several SGML and XML schema languages, and is also the term used to describe a document or portion thereof that is authored in the DTD language. ...

  • XHTML 1.0 Strict is the same as HTML 4.01 Strict, but follows XML syntax rules.
  • XHTML 1.0 Transitional is the same as HTML 4.01 Transitional, but follows XML syntax rules. It supports everything found in XHTML 1.0 Strict, but also permits the use of a number of elements and attributes that are judged presentational, in order to ease the transition from HTML 3.2 and earlier. These include <center>, <u>, <strike>, and <applet>. [2]
  • XHTML 1.0 Frameset: is the same as HTML 4.01 Frameset, but follows XML syntax rules. It allows the defining of an HTML frameset, a common practice in versions of HTML prior to HTML 4.

For other uses, see Syntax (disambiguation). ... On a web page, framing means that a website can be organized into frames. ...

XHTML 1.1

The most recent XHTML W3C Recommendation is XHTML 1.1: Module-based XHTML, which is a reformulation of XHTML 1.0 Strict, with minor modifications, using a set of modules selected from a larger set defined in Modularization of XHTML, a W3C Recommendation which provides a modularization framework, a standard set of modules, and various conformance definitions. All deprecated features of HTML, such as presentational elements and framesets, and even lang and anchor name attributes, which were still allowed in XHTML 1.0 Strict, have been removed from this version. Presentation is controlled purely by Cascading Style Sheets (CSS). This version also allows for ruby markup support, needed for East-Asian languages (especially CJK). In web development, Cascading Style Sheets (CSS) is a stylesheet language used to describe the presentation of a document written in a markup language. ... In web development, Cascading Style Sheets (CSS) is a stylesheet language used to describe the presentation of a document written in a markup language. ... This article or section uses Ruby annotation. ... CJK is a collective term for Chinese, Japanese, and Korean, which comprise the main East Asian languages. ...


Although Modularization of XHTML allows small chunks of XHTML to be re-used by other XML applications in a well-defined manner, and for XHTML to be extended for specialized purposes, XHTML 1.1 adds the concept of a "strictly conforming" document: such a document cannot employ such features—it must be a complete document containing only elements defined in the modules required by XHTML 1.1. For example, if a document is extended by using elements from the XHTML Frames (frameset) module, it may still be described as XHTML 1.1, but not strictly conforming XHTML 1.1. Instead, it might be described as an XHTML Host Language Conforming Document, if the relevant criteria are satisfied.


As of 2007, a second edition of XHTML 1.1 is in development as a W3C Working Draft.


The XHTML 2.0 draft specification

This article or section contains information about scheduled or expected future software.
The content may change as the software release approaches and more information becomes available.

Work on XHTML 2.0 is, as of 2007, still ongoing. The current XHTML 2.0 Working Draft is controversial because it breaks backward compatibility with all previous versions, and is therefore, in effect, a new markup language created to circumvent (X)HTML's limitations rather than being simply a new version. Many issues with compatibility are easily addressed, however, XHTML 2.0 can currently be parsed the same way a user agent would parse XHTML 1.1: via an XML parser and a default CSS document conforming to the current XHTML 2.0 Working Draft. Image File history File links Current_event_marker. ... Image File history File links Nuvola_apps_kpager. ... 2007 is a common year starting on Monday of the Gregorian calendar. ...


New features brought into the HTML family of markup languages by XHTML 2.0: A specialized markup language using SGML is used to write the electronic version of the Oxford English Dictionary. ...

  • HTML forms will be replaced by XForms, an XML-based user input specification allowing forms to be displayed appropriately for different rendering devices.
  • HTML frames will be replaced by XFrames.
  • The DOM Events will be replaced by XML Events, which uses the XML Document Object Model.
  • A new list element type, the nl element type, will be included to specifically designate a list as a navigation list. This will be useful in creating nested menus, which are currently created by a wide variety of means like nested unordered lists or nested definition lists.
  • Any element will be able to act as a hyperlink, e.g., <li href="articles.html">Articles</li>, similar to XLink. However, XLink itself is not compatible with XHTML due to design differences.
  • Any element will be able to reference alternative media with the src attribute, e.g., <p src="lbridge.jpg" type="image/jpeg">London Bridge</p> is the same as <object src="lbridge.jpg" type="image/jpeg"><p>London Bridge</p></object>.
  • The alt attribute of the img element has been removed: alternative text will be given in the content of the img element, much like the object element, e.g., <img src="hms_audacious.jpg">HMS <em>Audacious</em></img>.
  • A single heading element (h) will be added. The level of these headings will be indicated by the nested section elements, each with their own h heading.
  • The remaining presentational elements i, b and tt, still allowed in XHTML 1.x (even Strict), will be absent from XHTML 2.0. The only somewhat presentational elements remaining will be sup and sub for superscript and subscript respectively, because they have significant non-presentational uses and are required by certain languages. All other tags are meant to be semantic instead (e.g. <strong> for strong or bolded text) while allowing the user agent to control the presentation of elements via CSS.
  • The addition of RDF triple with the property and about attributes to facilitate the conversion from XHTML to RDF/XML.

XForms is two things: 1. ... XFrames is an XML application being developed by the W3C for combining multiple documents together. ... DOM Events allow event-driven programming languages like JavaScript, JScript, ECMAScript, VBScript and Java to register various event handlers/listeners on the element nodes inside a DOM tree, e. ... www. ... // Hierarchy of Objects in the DOM - Document Object Model The Document Object Model (DOM) is a platform- and language-independent standard object model for representing HTML or XML and related formats. ... // A hyperlink (often referred to as simply a link), is a reference or navigation element in a document to another section of the same document, another document, or a specified section of another document, that automatically brings the referred information to the user when the navigation element is selected by... The XML Linking Language, or XLink, is an XML markup language used for creating hyperlinks within XML documents. ... In general, semantics (from the Greek semantikos, or significant meaning, derived from sema, sign) is the study of meaning, in some sense of that term. ...

HTML5 (Draft)

This article or section contains information about scheduled or expected future software.
The content may change as the software release approaches and more information becomes available.

On 2007-04-10, the Mozilla Foundation, Apple and Opera Software proposed[8] that the new HTML working group of the W3C adopt the WHATWG’s HTML5 as the starting point of its work and name its future deliverable “HTML 5”. On 2007-05-09, the new HTML working group resolved to do that.[9] Image File history File links Current_event_marker. ... Image File history File links Nuvola_apps_kpager. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era. ... is the 100th day of the year (101st in leap years) in the Gregorian calendar. ... The World Wide Web Consortium (W3C) is a consortium that produces standards&#8212;recommendations, as they call them&#8212;for the World Wide Web. ... Wikipedia does not yet have an article with this exact name. ... HTML5 is is the fifth major revision of the core language of the World Wide Web, HTML. The HTML5 language is defined by a draft specification called “HTML 5” (note the space). ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era. ... is the 129th day of the year (130th in leap years) in the Gregorian calendar. ...


The HTML 5 draft defines a parallel XML serialization for HTML5. The XML serialization is called XHTML5. Unlike XHTML 2.0, XHTML5 is compatible with XHTML 1.x.


Other members of the XHTML family

  • XHTML Basic: A special "light" version of XHTML for devices that can not support the larger, richer XHTML dialects, intended for use in handhelds and mobile phones. This is the intended replacement for WML and C-HTML.
  • XHTML Mobile Profile: Based on XHTML Basic, this OMA (Open Mobile Alliance) effort targets hand phones specifically by adding mobile phone-specific elements to XHTML Basic.
  • XHTML+Voice: XHTML combined with Voice XML to support both visual and voice interactions.

XHTML Basic is an XML-based structured markup language primarily used for simple (mainly handheld) user agents, typically mobile devices. ... Wireless Markup Language is the primary content format for devices that implement the WAP (Wireless Application Protocol) specification based on XML, such as mobile phones. ... C-HTML (for Compact HTML) is a subset of the HTML markup language that works on DoCoMos i-mode mobile phones. ... Evolution of mobile web standards XHTML Mobile Profile (XHTML MP) is a hypertextual computer language standard designed specifically for mobile phones and other resource-constrained devices. ... The Open Mobile Alliance (OMA) is a standards body which develops open standards for the mobile industry. ... XHTML+Voice (commonly X+V) is a multimodal markup language. ... VoiceXML (VXML) is the W3Cs standard XML format for specifying interactive voice dialogues between a human and a computer. ...

Valid XHTML documents

An XHTML document that conforms to the XHTML specification is said to be a valid document. In a perfect world, all browsers would follow the web standards and valid documents would predictably render on every browser and platform. Although validating XHTML does not ensure cross-browser compatibility, it is a recommended first step. A document can be checked for validity with the W3C Markup Validation Service. It has been suggested that this article or section be merged into World Wide Web Consortium. ...


DOCTYPEs

In order to validate an XHTML document, a Document Type Declaration (or DOCTYPE) may be used. A DOCTYPE declares to the browser which Document Type Definition (DTD) the document conforms to. A Document Type Declaration should be placed before the root element. A Document Type Declaration, or DOCTYPE, associates a particular SGML or XML document with a Document Type Definition (DTD). ... Document Type Definition (DTD), defined slightly differently within the XML and SGML specifications, is one of several SGML and XML schema languages, and is also the term used to describe a document or portion thereof that is authored in the DTD language. ... Each XML document has one, and exactly one single root element. ...


The system identifier part of the DOCTYPE, which in these examples is the URL that begins with "http://", need only point to a copy of the DTD to use if the validator cannot locate one based on the public identifier (the other quoted string). It does not need to be the specific URL that is in these examples; in fact, authors are encouraged to use local copies of the DTD files when possible. The public identifier, however, must be character-for-character the same as in the examples. A system identifier is a document processing construct introduced in the HyTime markup language as a supplement to SGML. It was subsequently incorporated into the HTML and XML markup languages. ... // Uniform Resource Locator (URL) formerly known as Universal Resource Locator,is a technical, Web-related term used in two distinct meanings: In popular usage, it is a widespread synonym for Uniform Resource Identifier (URI) — many popular and technical texts will use the term URL when referring to URI; Strictly, the... A public identifier is a document processing construct in SGML. It was subsequently incorporated into XML. In HTML and XML, a public identifier is meant to be universally unique within its application scope. ...


These are the most common XHTML Document Type Declarations:

XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
XHTML 2.0

XHTML 2.0 currently (August 2006) is in a draft phase. If an XHTML 2.0 Recommendation is published with the same document type declaration as in the current Working Draft, the declaration will appear as:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 2.0//EN"
"http://www.w3.org/MarkUp/DTD/xhtml2.dtd">

A placeholder DTD schema exists at the corresponding URI, though it currently only includes the character reference entities from previous recommendations. XHTML 2 contemplates both a version attribute and an xsi:schemalocation attribute on the root HTML element that could possibly serve as a substitute for any DOCTYPE declaration.


XML namespaces and schemas

In addition to the DOCTYPE, all XHTML elements must be in the appropriate XML namespace for the version being used. This is usually done by declaring a default namespace on the root element using xmlns="namespace" as in the example below. An XML namespace is a W3C standard for providing uniquely named elements and attributes in an XML instance. ...


For XHTML 1.0 and XHTML 1.1, this is

<html xmlns="http://www.w3.org/1999/xhtml">

XHTML 2.0 requires both a namespace and an XML Schema instance declaration. These might be declared as An XML schema is a description of a type of XML document, typically expressed in terms of constraints on the structure and content of documents of that type, above and beyond the basic syntax constraints imposed by XML itself. ...

<html xmlns="http://www.w3.org/2002/06/xhtml2/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/2002/06/xhtml2/ http://www.w3.org/MarkUp/SCHEMA/xhtml2.xsd">

This example for XHTML 2.0 also demonstrates the use of multiple namespaces within a document. The first xmlns default namespace declaration indicates that elements and attributes whose names have no XML namespace prefix fall within the XHTML 2.0 namespace. The second namespace prefix declaration xmlns:xsi indicates that any elements or attributes prefixed with the xsi: refer to the XMLSchema-Instance namespace. Through this namespace mechanism XML documents allow the use of a mixture of elements and attributes taken from various XML vocabularies while avoiding the potential for clashes of naming between items from independently developed vocabularies.


Similar to the case of DOCTYPE above, the actual URL to the XML Schema file can be changed, as long as the Universal Resource Identifier (URI) before it (which indicates the XHTML 2.0 namespace) remains the same. The namespace URI is intended to be a persistent and universally unique identifier for the particular version of the specification. If treated as a URL, the actual content located at the site is of no significance. An XML schema is a description of a type of XML document, typically expressed in terms of constraints on the structure and content of documents of that type, above and beyond the basic syntax constraints imposed by XML itself. ... A Uniform Resource Identifier (URI), is an Internet protocol element consisting of a short string of characters that conform to a certain syntax. ...


XML Declaration

A character encoding may be specified at the beginning of an XHTML document in the XML declaration when the document is served using the application/xhtml+xml MIME type. (If an XML document lacks encoding specification, an XML parser assumes that the encoding is UTF-8 or UTF-16, unless the encoding has already been determined by a higher protocol.) A character encoding or character set (sometimes referred to as code page) consists of a code that pairs a sequence of characters from a given set with something else, such as a sequence of natural numbers, octets or electrical pulses, in order to facilitate the storage of text in computers... UTF-8 (8-bit UCS/Unicode Transformation Format) is a variable-length character encoding for Unicode. ... In computing, UTF-16 is a 16-bit Unicode Transformation Format, a character encoding form that provides a way to represent a series of abstract characters from Unicode and ISO/IEC 10646 as a series of 16-bit words suitable for storage or transmission via data networks. ...


For example:

<?xml version="1.0" encoding="UTF-8"?>

The declaration may be optionally omitted because it declares as its encoding the default encoding. However, if the document instead makes use of XML 1.1 or another character encoding, a declaration is necessary. Internet Explorer prior to version 7 enters quirks mode if it encounters an XML declaration in a document served as text/html. Windows Internet Explorer (formerly Microsoft Internet Explorer, abbreviated MSIE), commonly abbreviated to IE, is a series of proprietary graphical web browsers developed by Microsoft and included as part of the Microsoft Windows line of operating systems starting in 1995. ... Quirks mode refers to a technique used by some web browsers to maintain backwards compatibility with web pages designed for older browsers. ...


Common errors

Some of the most common errors in the usage of XHTML are:

  • Failing to realize that documents won’t be treated as XHTML unless they are served with an appropriate XML MIME type
  • Not closing empty elements (elements without closing tags in HTML4)
    • Incorrect: <br>
    • Correct: <br />
      Note that any of these are acceptable in XHTML: <br></br>, <br/> and <br />. Older HTML-only browsers will generally accept <br> and <br />. Using <br /> gives some degree of backward and forward compatibility.
  • Not closing non-empty elements
    • Incorrect: <p>This is a paragraph.<p>This is another paragraph.
    • Correct: <p>This is a paragraph.</p><p>This is another paragraph.</p>
  • Improperly nesting elements (elements must be closed in reverse order)
    • Incorrect: <em><strong>This is some text.</em></strong>
    • Correct: <em><strong>This is some text.</strong></em>
  • Not putting quotation marks around attribute values
    • Incorrect: <td rowspan=3>
    • Correct: <td rowspan="3">
    • Correct: <td rowspan='3'>
  • Using the ampersand outside of entities (use &amp; to display the ampersand character)
    • Incorrect: <title>Cars & Trucks</title>
    • Correct: <title>Cars &amp; Trucks</title>
  • Using the ampersand outside of entities in URLs (use &amp; instead of & in links also)
    • Incorrect: <a href="index.php?page=news&style=5">News</a>
    • Correct: <a href="index.php?page=news&amp;style=5">News</a>
  • Failing to recognize that XHTML elements and attributes are case sensitive
    • Incorrect: <BODY><P ID="ONE">The Best Page Ever</P></BODY>
    • Correct: <body><p id="ONE">The Best Page Ever</p></body>
  • Using attribute minimization
    • Incorrect: <textarea readonly>READ-ONLY</textarea>
    • Correct: <textarea readonly="readonly">READ-ONLY</textarea>
  • Mis-using CDATA, script-comments and xml-comments when embedding scripts and stylesheets.
    • This problem can be avoided altogether by putting all script and stylesheet information into separate files and referring to them as follows in the XHTML head element.
 <link rel="stylesheet" href="/style/screen.css" type="text/css" /> <script type="text/javascript" src="http://en.wikipedia.org/script/site.js"></script> 
Note: The format <script ...></script>, rather than the more concise <script ... />, is required for HTML compatibility when served as MIME type text/html.
    • If an author chooses to include script or style data inline within an XHTML document, different approaches are recommended depending whether the author intends to serve the page as application/xhtml+xml and target only fully conformant browsers, or serve the page as text/html and try to obtain usability in Internet Explorer 6 and other non-conformant browsers.
In the fully conformant application/xhtml+xml case, the non-XML code is wrapped in a CDATA section as follows [3]:
 <style type="text/css"> <![CDATA[ p { color: green; } ]]> </style> <script type="text/javascript"> <![CDATA[ function nothing() { } ]]> </script> 
If the same file may be served or processed as both XML (application/xhtml+xml) and HTML compatible text/html to target Internet Explorer 6 and as many other historic and non-conforming browsers as possible, constructs as complex as the following may be necessary[4]:
 <style type="text/css"> <!--/*--><![CDATA[/*><!--*/ p { color: green; } /*]]>*/--> </style> <script type="text/javascript"> <!--//--><![CDATA[//><!-- function nothing() { } //--><!]]> </script> 

However, the following is sufficient for the relatively modern browsers (from 2000 onwards): Multipurpose Internet Mail Extensions (MIME) is an Internet Standard for the format of e-mail. ... A Uniform Resource Locator, URL (spelled out as an acronym, not pronounced as earl), or Web address, is a standardized address name layout for resources (such as documents or images) on the Internet (or elsewhere). ...

 <style type="text/css"> /*<![CDATA[*/ p { color: green; } /*]]>*/ </style> <script type="text/javascript"> //<![CDATA[ function nothing() { } //]]> </script> 

Backward compatibility

XHTML 1.0 documents are mostly backward compatible with HTML — that is, processible as HTML by a web browser that does not know how to properly handle XHTML — when authored according to certain guidelines given in the specification and served as text/html. Authors who follow the compatibility guidelines essentially create HTML documents that, while technically invalid, are processible by all modern web browsers.


Documents following the compatibility guidelines are still not truly compatible with HTML user agents that support the SGML NET (Null End Tag) construct, although very few user agents support it in practice. OpenSP is one such user agent. The Standard Generalized Markup Language (SGML) is a metalanguage in which one can define markup languages for documents. ...


XHTML 1.1's modularity features prevent it from being backward compatible with XHTML 1.0 and HTML. XHTML 2.0, likewise, is not backward compatible with its predecessors.


Examples

The followings are examples of XHTML 1.0 Strict. Both of them have the same visual output. The former one follows the HTML Compatibility Guidelines in Appendix C of the XHTML 1.0 Specification while the latter one breaks backward compatibility but provides cleaner codes.

Media type recommendation for the examples:
Media type Example 1 Example 2
application/xhtml+xml SHOULD SHOULD
application/xml MAY MAY
text/xml MAY MAY
text/html MAY SHOULD NOT

Example 1.

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>XHTML 1.0 Example</title> <script type="text/javascript"> <!--//--><![CDATA[//><!--  function loadpdf() {  document.getElementById("pdf-object").src="http://www.w3.org/TR/xhtml1/xhtml1.pdf";  }  //--><!]]> </script> </head> <body onload="loadpdf()"> <p>This is an example of an <abbr title="Extensible HyperText Markup Language">XHTML</abbr> 1.0 Strict document.<br /> <img id="validation-icon" src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0 Strict" /><br /> <object id="pdf-object" name="pdf-object" type="application/pdf" data="http://www.w3.org/TR/xhtml1/xhtml1.pdf" width="100%" height="500"> </object> </p> </body> </html> 

Example 2.

 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <title>XHTML 1.0 Example</title> <script type="text/javascript"> <![CDATA[  function loadpdf() {  document.getElementById("pdf-object").src="http://www.w3.org/TR/xhtml1/xhtml1.pdf";  }  ]]> </script> </head> <body onload="loadpdf()"> <p>This is an example of an <abbr title="Extensible HyperText Markup Language">XHTML</abbr> 1.0 Strict document.<br/> <img id="validation-icon" src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0 Strict"/><br/> <object id="pdf-object" name="pdf-object" type="application/pdf" data="http://www.w3.org/TR/xhtml1/xhtml1.pdf" width="100%" height="500"/> </p> </body> </html> 

Notes:

  1. For further information on the media type recommendation, please refer to XHTML Media Types, a W3C Note issued on 2002-08-01.
  2. The "loadpdf" function is actually a workaround for Internet Explorer. It can be replaced by adding <param name="src" value="http://www.w3.org/TR/xhtml1/xhtml1.pdf" /> within <object>.
  3. img element does not get a name attribute in the XHTML 1.0 Strict DTD.

Notes

  1. ^ For examples of this, see: http://jigsaw.w3.org/css-validator/ http://www.adobe.com/devnet/dreamweaver/articles/css_best_practices_pt2.html http://www.ukoln.ac.uk/web-focus/papers/www2003/poster-1/dcmeta.doc
  2. ^ XHTML 1.0 Specification, Appendix C: HTML Compatibility Guidelines. World Wide Web Consortium (2000-01-26). Retrieved on 2007-06-16.
  3. ^ Chris Wilson (2005-09-15). The <?xml> prolog, strict mode, and XHTML in IE. Retrieved on 2007-06-16. “…If we tried to support real XHTML in IE 7 we would have ended up using our existing HTML parser (which is focused on compatibility) and hacking in XML constructs. It is highly unlikely we could support XHTML well in this way; in particular, we would certainly not detect a few error cases here or there, and we would silently support invalid cases. This would, of course, cause compatibility problems based on parser error handling in the future, which XML is explicitly trying to avoid; we don’t want to cause another mess like the one with current HTML error handling (rooted in compatibility with earlier browsers – you can blame me for that personally somewhat, but not IE). I would much rather take the time to implement XHTML properly after IE 7, and have it be truly interoperable…”
  4. ^ Ian Hickson, a former developer of the Opera browser and cofounder of the WHATWG (2002-09-08). Sending XHTML as text/html Considered Harmful. Retrieved on 2007-06-16.
  5. ^ Anne van Kesteren, a developer of the Opera browser (2004-06-13). XHTML is invalid HTML. Retrieved on 2007-06-16.
  6. ^ Maciej Stachowiak, a developer of Apple's Safari browser (2006-09-20). Understanding HTML, XML and XHTML. Retrieved on 2007-06-16.
  7. ^ Tim Berners-Lee (2006-10-27). Reinventing HTML. Retrieved on 2007-06-16.
  8. ^ http://lists.w3.org/Archives/Public/public-html/2007Apr/0429.html
  9. ^ http://lists.w3.org/Archives/Public/public-html/2007May/0909.html

It has been suggested that W3C Markup Validation Service be merged into this article or section. ... Year 2000 (MM) was a leap year starting on Saturday (link will display full 2000 Gregorian calendar). ... is the 26th day of the year in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era. ... is the 167th day of the year (168th in leap years) in the Gregorian calendar. ... Year 2005 (MMV) was a common year starting on Saturday (link displays full calendar) of the Gregorian calendar. ... is the 258th day of the year (259th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era. ... is the 167th day of the year (168th in leap years) in the Gregorian calendar. ... Wikipedia does not yet have an article with this exact name. ... Also see: 2002 (number). ... is the 251st day of the year (252nd in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era. ... is the 167th day of the year (168th in leap years) in the Gregorian calendar. ... Year 2004 (MMIV) was a leap year starting on Thursday of the Gregorian calendar. ... is the 164th day of the year (165th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era. ... is the 167th day of the year (168th in leap years) in the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday (link displays full 2006 calendar) of the Gregorian calendar. ... is the 263rd day of the year (264th in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era. ... is the 167th day of the year (168th in leap years) in the Gregorian calendar. ... Year 2006 (MMVI) was a common year starting on Sunday (link displays full 2006 calendar) of the Gregorian calendar. ... is the 300th day of the year (301st in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era. ... is the 167th day of the year (168th in leap years) in the Gregorian calendar. ...

External links

Wikibooks
Wikibooks Programming has more about this subject:

Image File history File links Wikibooks-logo-en. ... An Internet media type,[1] originally called a MIME type after MIME and sometimes a Content-type after the name of a header in several protocols whose value is such a type, is a two-part identifier for file formats on the Internet. ... PHP is a reflective programming language originally designed for producing dynamic web pages. ... Python is a high-level programming language first released by Guido van Rossum in 1991. ... The Apache HTTP Server, commonly referred to simply as Apache, is a web server notable for playing a key role in the initial growth of the World Wide Web. ... A rewrite engine is a piece of web server software used to modify URLs, for a variety of purposes. ...

Validators


  Results from FactBites:
 
Need a title in HTML4! (1581 words)
It is suggested that XHTML delivered as text/html is broken and XHTML delivered as text/xml is risky, so authors intending their work for public consumption should stick to HTML 4.01, and authors who wish to use XHTML should deliver their markup as application/xhtml+xml.
Note that this document compares XHTML 1.0 compliant to appendix C to HTML 4.01, because that is the only variant of XHTML that may be sent as text/html.
However, none of these apply when an XHTML document is sent as text/html, and since authors feel their pages should be readable on the most popular Web browser, which does not support application/xhtml+xml, there is basically no point in using XHTML at the moment.
  More results at FactBites »

 
 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:

 


Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m