Internet DRAFT - draft-snell-atompub-bidi

draft-snell-atompub-bidi





Network Working Group                                           J. Snell
Internet-Draft                                              June 9, 2009
Updates: 4287 (if approved)
Intended status: Informational
Expires: December 11, 2009


                      Atom Bidirectional Attribute
                    draft-snell-atompub-bidi-08.txt

Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on December 11, 2009.

Copyright Notice

   Copyright (c) 2009 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents in effect on the date of
   publication of this document (http://trustee.ietf.org/license-info).
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.

Abstract

   This document adds a new attribute to the Atom Syndication Format
   used to indicate the base directionality of directionally-neutral



Snell                   Expires December 11, 2009               [Page 1]

Internet-Draft                  Atom Bidi                      June 2009


   characters.


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . 3
     1.1.  Namespace . . . . . . . . . . . . . . . . . . . . . . . . . 3
     1.2.  Notational Conventions  . . . . . . . . . . . . . . . . . . 3
   2.  The "dir" Attribute . . . . . . . . . . . . . . . . . . . . . . 3
     2.1.  Direction Guessing  . . . . . . . . . . . . . . . . . . . . 5
   3.  Security Considerations . . . . . . . . . . . . . . . . . . . . 5
   4.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5
   5.  References  . . . . . . . . . . . . . . . . . . . . . . . . . . 6
     5.1.  Normative References  . . . . . . . . . . . . . . . . . . . 6
     5.2.  Informative References  . . . . . . . . . . . . . . . . . . 6
   Appendix A.  Acknowledgements . . . . . . . . . . . . . . . . . . . 6
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . . . 7


































Snell                   Expires December 11, 2009               [Page 2]

Internet-Draft                  Atom Bidi                      June 2009


1.  Introduction

   This document updates the Atom Syndication Format [RFC4287] by adding
   a new "dir" attribute used to define the base directionality of
   directionally-neutral characters contained within an Atom document.

1.1.  Namespace

   The XML Namespaces URI [W3C.REC-xml-names-19990114] for the Atom
   Syndication Format [RFC4287] is:
   http://www.w3.org/2005/Atom

1.2.  Notational Conventions

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in BCP 14, [RFC2119].

   The Atom Syndication Format [RFC4287] is specified using terms from
   the XML Infoset [W3C.REC-xml-infoset-20040204].  This specification
   uses a shorthand form for two commons terms: The phrase "Information
   Item" is omitted when naming Element and Attribute Information Items.
   Therefore, when this specification uses the term "element," it is
   referring to an Element Information Item in Infoset terms.  Likewise,
   when it uses the term "attribute," it is referring to an Attribute
   Information Item.

   Portions this specification are illustrated with fragments of a non-
   normative RELAX NG Compact schema [RELAXNG].  However, the text of
   this specification provides the sole definition of conformance.


2.  The "dir" Attribute

   The "dir" attribute specifies the base direction of directionally-
   neutral text [ISO10646] in an Atom document.  Possible values for the
   attribute are "ltr" and "rtl" indicating "left-to-right" and "right-
   to-left" respectively, or an empty string indicating that no base-
   direction is specified.  If a dir attribute is not provided, the
   value MUST be assumed to be an empty string.  The attribute can
   appear on any element in an Atom document.

     atomCommonAttributes =
       attribute xml:base { atomUri }?,
       attribute xml:lang { atomLanguageTag }?,
       attribute dir { "ltr" | "rtl" | "" }?,
       undefinedAttribute*




Snell                   Expires December 11, 2009               [Page 3]

Internet-Draft                  Atom Bidi                      June 2009


   The direction specified by "dir" applies to elements and attributes
   whose values are specified as being "Language-Sensitive" as defined
   by Section 2 of [RFC4287].  The direction specified by the attribute
   is inherited by descendant elements and attributes and may be
   overridden.

   Values other than "ltr", "rtl" and "" MUST be ignored and processed
   as if the dir attribute was not present; Atom processors MUST NOT
   stop processing or signal an error.  The value of the attribute is
   not case-sensitive.

   The "dir" attribute is an extension to the Atom vocabulary that will
   be treated as unknown foreign markup by existing Atom processors that
   have not been explicitly implemented to support the "dir" attribute.
   As per the rules specified in [RFC4287], such processors are required
   to ignore unknown foreign markup and continue processing as if the
   markup does not exist.

   Example atom:feed with right-to-left directionality

     <?xml version="1.0" ?>
     <feed xmlns="http://www.w3.org/2005/Atom" dir="rtl">
       <title>&#x0679;&#x067A;&#x067B;</title>
       ...
     </feed>

   If an Atom document contains bidirectional text, the Unicode
   Bidirectional Algorithm [UAX9] SHOULD be used to render that text.
   Because consumers of Atom documents vary broadly in the way they
   display text, the "ltr" and "rtl" values do not necessarily open an
   additional level of embedding or override with respect to the
   bidirectional algorithm.  Consuming applications that render
   bidirectional text are responsible for determining the appropriate
   level of embedding.  If the dir attribute value is "rtl", Atom
   processors that display affected text MAY choose to right-align that
   text as per the rules described in Section 8 of
   [W3C.REC-html401-19991224].

   When Atom Text Constructs or the atom:content elements contain
   bidirectional text and the type attribute value is either "html" or
   "xhtml", the bidirectional markup mechanisms specific to each format
   SHOULD be used.  The value of the "dir" attribute does define the
   base directionality of Language-Sensitive text within Text Constructs
   and atom:content elements regardless of the value of the type
   attribute.

   Example atom:feed with bidirectional XHTML:




Snell                   Expires December 11, 2009               [Page 4]

Internet-Draft                  Atom Bidi                      June 2009


     <?xml version="1.0" ?>
     <feed xmlns="http://www.w3.org/2005/Atom" dir="rtl">
       ...
       <title type="xhtml">
         <div xmlns="http://www.w3.org/1999/xhtml">
           <p dir="rtl">&#x0679;&#x067A;&#x067B;</p>
         </div>
       </title>
       ...
     </feed>

   Unicode bidirectional control characters MAY also be used within
   attributes and element values to indicate the directionality of text
   or to modify the default operation of the Bidirectional Algorithm.
   Implementers are reminded that unexpected results could occur when
   using both the "dir" attribute and the Unicode control characters
   within a single document.

2.1.  Direction Guessing

   In Atom documents that do not contain a "dir" attribute, it is
   possible to apply heuristics to guess the base directionality of text
   in the document.  Such heuristics can take into consideration the in-
   scope language context established by the use of the xml:lang
   attribute or an analysis of the directional properties of the Unicode
   characters used within the text.  Such guessing algorithms can
   produce reasonably acceptable results in many cases but cannot be
   guaranteed to produce correct results in every case.  For this
   reason, explicit determination of text direction using the "dir"
   attribute is preferred over any guessing algorithm.

   For compatibility with existing Atom documents that rely on direction
   guessing, user agents MAY perform direction guessing in documents
   that do not contain a "dir" attribute but they SHOULD NOT do so when
   an in-scope "dir" attribute is provided.


3.  Security Considerations

   The security considerations discussed in [RFC4287] Section 8 apply.


4.  IANA Considerations

   No IANA actions are required by this document.


5.  References



Snell                   Expires December 11, 2009               [Page 5]

Internet-Draft                  Atom Bidi                      June 2009


5.1.  Normative References

   [ISO10646]
              International Organization for Standardization, "ISO/IEC
              10646:2003: Information Technology - Universal Multiple-
              Octet Coded Character Set (UCS)", December 2003.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC4287]  Nottingham, M., Ed. and R. Sayre, Ed., "The Atom
              Syndication Format", RFC 4287, December 2005.

   [UAX9]     Davis, M., "Unicode Standard Annex #9: The Bidirectional
              Algorithm", September 2006.

   [W3C.REC-xml-infoset-20040204]
              Tobin, R. and J. Cowan, "XML Information Set (Second
              Edition)", World Wide Web Consortium Recommendation REC-
              xml-infoset-20040204, February 2004,
              <http://www.w3.org/TR/2004/REC-xml-infoset-20040204>.

   [W3C.REC-xml-names-19990114]
              Bray, T., Hollander, D., and A. Layman, "Namespaces in
              XML", World Wide Web Consortium FirstEdition REC-xml-
              names-19990114, January 1999,
              <http://www.w3.org/TR/1999/REC-xml-names-19990114>.

5.2.  Informative References

   [RELAXNG]  Clark, J., "RELAX NG Compact Syntax", December 2001, <http
              ://www.oasis-open.org/committees/relax-ng/
              compact-20021121.html>.

   [W3C.REC-html401-19991224]
              Raggett, D., Hors, A., and I. Jacobs, "HTML 4.01
              Specification", World Wide Web Consortium
              Recommendation REC-html401-19991224, December 1999,
              <http://www.w3.org/TR/1999/REC-html401-19991224>.


Appendix A.  Acknowledgements

   The author gratefully acknowledges the feedback from the Atom
   Publishing Format and Protocol Working Group.






Snell                   Expires December 11, 2009               [Page 6]

Internet-Draft                  Atom Bidi                      June 2009


Author's Address

   James M Snell

   Email: jasnell@us.ibm.com
   URI:   http://www.ibm.com













































Snell                   Expires December 11, 2009               [Page 7]