UserPreferences

PaceLangSpecific


Abstract

Allow xml:lang anywhere, but restrict its effects to specific elements so that it is clear when implementations must preserve the language context.

Status

Open

Author: DavidPowell

Rationale

xml:lang can appear anywhere and specifies a language for all children of its containing element. This is simple enough in the context of an XML document, but in the context of any other model, language tags need to be explicitly preserved for every property of each entry and feed.

Many Atom implementations will use RDBMs or object-oriented implementations, rather than XML DOMs to model and store atom content internally. In a RDBMs model, each language sensitive field will require an extra database column. It is clear that some fields, such as atom:updated, are not language dependant, while others such as atom:content are. Some fields are grey areas.

This proposal improves interoperability by ensuring that xml:lang is processed consistently by different implementations. It improves efficiency by allowing implementations to safely discard the language context for non-language specific fields.

Proposal

In section 2, replace:

Any element in an Atom Document MAY have an xml:lang attribute, whose content
indicates the natural language of the element's content. Requirements regarding
the content and interpretation of xml:lang are specified in XML 1.0
[W3C.REC-xml-20040204] Section 2.12.

with:

Any element in an Atom Document MAY have an xml:lang attribute, whose content
sets the language content for the element and its children.  The language context
is only significant for the language sensitive constructs, which are indicated in
this specification.  Implementations MUST preserve the language context of
language sensitive constructs.  Requirements regarding the content and interpretation
of xml:lang are specified in XML 1.0 [W3C.REC-xml-20040204] Section 2.12.

In section 3.1, add the sentence:

Except for the "type" attribute, the content of Text constructs is language sensitive.

In section 3.2.1, add the sentence:

The content of atom:name is language sensitive.

In section 4.6.5, add the sentence:

The content of the "title" attribute is language sensitive.

In section 4.13.3, add the sentence:

The content of the "label" attribute is language sensitive.

In section 4.15, add the sentence:

Except for the "type" and "src" attributes, the content of atom:content is
language sensitive.

Impacts

Depending on which extension paces are accepted, a statement on the default language sensitivity of extension elements will need to be made.

Notes

This proposal is based on [WWW]draft-ietf-atompub-format-05.txt.


CategoryProposals