Semantic XHTML: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
Line 1: Line 1:
== Definition ==
== Definition ==


* {{quotation | XHTML is built on XML, and thus XHTML-based formats can be used not only for convenient display presentation, but also for general-purpose data exchange. In many ways, XHTML-based formats exemplify the best of both HTML and XML worlds. However, when building XHTML-based formats, it helps to have a guiding set of principles.}} ([http://microformats.org/wiki/SemanticXHTMLDesignPrinciples Semantic XHTML Design Principles], retrieved 15:37, 12 April 2007 (MEST))
* {{quotation | XHTML is built on XML, and thus XHTML-based formats can be used not only for convenient display presentation, but also for general-purpose data exchange. In many ways, XHTML-based formats exemplify the best of both HTML and XML worlds. However, when building XHTML-based formats, it helps to have a guiding set of principles.}} ([http://microformats.org/wiki/SemanticXHTMLDesignPrinciples Semantic XHTML Design Principles], retrieved 15:38, 12 April 2007 (MEST))


See also: [[Microformat]]s (for a global perspective) and [[semantic web]] for an opposite, more heavy approach.
See also: [[Microformat]]s (for a global perspective) and [[semantic web]] for an opposite, more heavy approach.
Line 11: Line 11:
#  Reuse schema (names, objects, properties, values, types, hierarchies, constraints) as much as possiblefrom pre-existing, established, well-supported standards by reference. (and don't restate constraints expressed in the source standard, informative mentions are ok).
#  Reuse schema (names, objects, properties, values, types, hierarchies, constraints) as much as possiblefrom pre-existing, established, well-supported standards by reference. (and don't restate constraints expressed in the source standard, informative mentions are ok).
# Use the most accurately precise semantic XHTML building block for each object. E.g. use the "address" tag for a contact information, "h2" for a section title.
# Use the most accurately precise semantic XHTML building block for each object. E.g. use the "address" tag for a contact information, "h2" for a section title.
# Otherwise use a generic structural element (e.g. <span> or <div>), or the appropriate contextual element (e.g. an <li> inside a <ul> or <ol>).
# Otherwise use a generic structural element (e.g. ''span'' or ''div''), or the appropriate contextual element (e.g. an ''li'' inside a ''ul'' or ''ol'').
# Base class names on the original schema.
# Base class names on the original schema.


Line 17: Line 17:


=== Simple example ===
=== Simple example ===
Source: [http://www.tantek.com/presentations/2004etech/realworldsemanticspres.html Real world semantics], retrieved 15:37, 12 April 2007 (MEST).
Source: [http://www.tantek.com/presentations/2004etech/realworldsemanticspres.html Real world semantics], retrieved 15:38, 12 April 2007 (MEST).


<table border="1">
<table border="1">

Revision as of 15:38, 12 April 2007

Definition

  • “XHTML is built on XML, and thus XHTML-based formats can be used not only for convenient display presentation, but also for general-purpose data exchange. In many ways, XHTML-based formats exemplify the best of both HTML and XML worlds. However, when building XHTML-based formats, it helps to have a guiding set of principles.” (Semantic XHTML Design Principles, retrieved 15:38, 12 April 2007 (MEST))

See also: Microformats (for a global perspective) and semantic web for an opposite, more heavy approach.

Design Principles

According to Semantic XHTML Design Principles, the design principles (reproduced in simplified form here) are:

  1. Reuse schema (names, objects, properties, values, types, hierarchies, constraints) as much as possiblefrom pre-existing, established, well-supported standards by reference. (and don't restate constraints expressed in the source standard, informative mentions are ok).
  2. Use the most accurately precise semantic XHTML building block for each object. E.g. use the "address" tag for a contact information, "h2" for a section title.
  3. Otherwise use a generic structural element (e.g. span or div), or the appropriate contextual element (e.g. an li inside a ul or ol).
  4. Base class names on the original schema.

Microformats use semantic XHTML, but not all uses of semantic XHTML are microformats.

Simple example

Source: Real world semantics, retrieved 15:38, 12 April 2007 (MEST).

presentational semantic
<code class="bad"><br></code>
<code><p></code>
<code class="bad"><font></code>
<code><h1>,<h2>,<h3></code>
<code class="bad"><i>,<b></code>
<code><em>,<strong></code>


Links