UserPreferences

PaceItemLang


Abstract

Add support for the xml:lang special attribute to the atom:entry element. (Proposed by: BobWyman)

Status

Accepted

Rationale

An entry may be written in a language different from the default language of the feed. This is a very common case for synthetic feeds.

Proposal

Add the following to the definition atom:entry:

4.13.? "xml:lang" Attribute

atom:entry elements MAY have an "xml:lang" attribute whose content indicates the default natural language of the entry. If the language of the atom:entry is different from the language of the feed then the atom:entry SHOULD have an "xml:lang" attribute. The content of this attribute element MUST be a registered language tag from [RFC3066] or its successor; in addition, the empty string MAY be specified to indicate that there is no language information available.

Example

<?xml version="1.0" encoding="utf-8"?>
<feed version="0.3" xmlns="http://purl.org/atom/ns#">
  <title>dive into mark</title>
  <link rel="alternate" type="text/html" 
   href="http://diveintomark.org/"/>
  <modified>2003-12-13T18:30:02Z</modified>
  <author>
    <name>Mark Pilgrim</name>
  </author>
  <entry xml:lang="en-us">
    <title>Atom 0.3 snapshot</title>
    <link rel="alternate" type="text/html" 
     href="http://diveintomark.org/2003/12/13/atom03"/>
    <id>tag:diveintomark.org,2003:3.2397</id>
    <issued>2003-12-13T08:29:29-04:00</issued>
    <modified>2003-12-13T18:30:02Z</modified>
  </entry>
</feed>


Impacts

Notes

[AnneVanKesteren] Why not allow this for *every* single element? I could easily come up with examples were the TITLE should be in a different language, or the "title" attribute on the LINK element. Even the NAME of the author could be in a different language. The SUMMARY could be in a different language (like providing multiple excerpts for the same entry but in different languages, where the aggregator choses the one that matches the preferences of the user).

[EricScheid] I agree. I'm looking forward to bi-lingual feeds so I can practice my French. Time for another pace or two then. PaceLinkLang and PaceContentLang - where both specify the base constructs permit xml:lang.

[AsbjornUlsberg] +1 to xml:lang on every element. But I don't think we need individual paces for them. Just change some of the wordings on this page so that xml:lang could be used on every element.

[KenMacLeod] Note: the 0.3 spec already allows xml:lang on any element, [WWW]Section 2: Atom Documents. I think calling out support for xml:lang on <entry> is intended to emphasize that individual entries can be in different languages. Note also that you can't have a single, bi-lingual <entry>, as specific elements (<title>. <summary>) are only allowed once, presumably "in the language of the entry". You can, however, have a bi-lingual site and a bi-lingual feed, by having different entries be in different languages. It would be nice to be able to relate two entries together if they are alternate translations of each other.

[AnneVanKesteren] Agreed, so the problem is how to relate entries.

[Martin D¨ırst] Don't say "The content of this attribute element MUST be a registered language tag [RFC3066].", because: 1) RFC 3066 also allows non-registered language tags, with the x- prefix; 2) the XML spec says that the contents of xml:lang is a language tag according to RFC 3066 ""or its successor"".

[PhilRingnalda] Actually, it says it's a language tag or "" - an important distinction if you are distributing blog software that builds feeds from a template, and don't want to have to hardcode a language.

CategoryProposals