Robert Sayre wrote: > [snip] > It'll work fine with everythign > Would you mind sharing some details? Is there code already in the mozilla CVS I can go look at? I have some code already written that I'd like to get checked into Abdera soon. I'd prefer that it match what other implementors are doing or are planning to do.
I personally don't mind who writes up the spec or whether it's done as an update to 4287 or not. Nor do I really care whose name ends up on the draft. Heck, we could probably even collaborate on the draft. Take what I've started with, make whatever changes you feel are necessary and add your name to the author list. I've attached the XML. - James
<?xml version="1.0"?> <!DOCTYPE rfc SYSTEM "rfc2629.dtd" [ <!ENTITY rfc2119 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'> <!ENTITY rfc4287 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4287.xml'> <!ENTITY xmlnames PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml4/reference.W3C.REC-xml-names-19990114.xml'> <!ENTITY infoset PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml4/reference.W3C.REC-xml-infoset-20040204.xml'> ]> <rfc category="std" ipr="full3978" docName="draft-snell-atompub-bidi-00.txt"> <?rfc toc="yes" ?> <?rfc symrefs="yes" ?> <?rfc sortrefs="yes"?> <?rfc iprnotified="no"?> <?rfc strict="yes" ?> <?rfc toc="yes"?> <?rfc compact="yes"?> <front> <title abbrev="Atom Bidi">Atom Bidirectional Extension</title> <author initials="J.M." surname="Snell" fullname="James M Snell"> <organization /> <address> <email>[EMAIL PROTECTED]</email> <uri>http://www.snellspace.com</uri> </address> </author> <date month="September" year="2006" /> <area>General</area> <keyword>I-D</keyword> <keyword>Internet-Draft</keyword> <keyword>IRI</keyword> <keyword>URI</keyword> <keyword>Template</keyword> <abstract><t>This document describes an extension to the Atom format that can be used to define the base directionality of directionally-neutral characters contained within an Atom document.</t></abstract> </front> <middle> <section title="Introduction"> <t>This document describes an extension to the Atom format <xref target="RFC4287" /> that can be used to define the base directionality of directionally-neutral characters contained within an Atom document.</t> <section title="Namespace"> <t>The XML Namespaces URI <xref target="W3C.REC-xml-names-19990114" /> for the XML elements and attributes described in this specification is</t> <figure><artwork><![CDATA[http://purl.org/atompub/bidi]]></artwork></figure> <t>In this document, the namespace prefix "u:" is used for the above Namespace URI. Note that the choice of namespace prefix is arbitrary and not semantically significant.</t> </section> <section title="Notational Conventions"> <t>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, <xref target="RFC2119" />.</t> <t>This extension is, like the Atom Syndication Format <xref target="RFC4287" /> itself, specified using terms from the XML Infoset <xref target="W3C.REC-xml-infoset-20040204"/>. However, 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.</t> <t>Some sections of this specification are illustrated with fragments of a non-normative RELAX NG Compact schema <xref target="RELAXNG" />. However, the text of this specification provides the sole definition of conformance.</t> </section> </section> <section anchor="dir" title="The "u:dir" Attribute"> <t>The "u:dir" attribute specifies the base direction of directionally-neutral text <xref target="UNICODE"/>. Possible values for the attribute are "ltr" and "rtl" indicating "left-to-right" and "right-to-left" respectively, "lro" and "rlo" indicating explicit "left-to-right" and "right-to-left" overrides, or an empty string indicating that no base-direction is specified. If the "u:dir" attribute is not specified, the value is assumed to be an empty string. The attribute can appear anywhere in an Atom document, except where it is explicitly forbidden.</t> <figure><artwork><![CDATA[ dir = attribute u:dir { "ltr" | "rtl" | "lro" | "rlo" | "" } ]]></artwork></figure> <t>The direction specified by "u:dir" applies only to elements and attributes whose values are specified as being "Language-Sensitive" as defined by Section 2 of <xref target="RFC4287" />. The attribute is inherited by descendent elements and may be overridden.</t> <t>Example atom:feed with right-to-left directionality</t> <figure><artwork><![CDATA[ <?xml version="1.0" ?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:u="http://purl.org/atompub/bidi" u:dir="rtl"> <title>ٹٺٻ</title> ... </feed> ]]></artwork></figure> <t>If an Atom document contains any right-to-left characters, the Unicode Bidirectional Algorithm <xref target="UNI9"/> MUST 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 with respect to the bidirectional algorithm. Consuming applications that render bidirectional text are responsible for determining the appropriate level of embedding.</t> <t>The "lro" and "rlo" values override the inherent directionality of characters as defined by <xref target="UNICODE"/>. When used, affected text MUST be rendered as if preceded by either Unicode character U+202D (left-to-right override) or U+202E (right-to-left override) and followed by U+202C (pop directional formatting).</t> <t>When Atom Text Constructs or the atom:content elements contain bidirectional text and the type attribute is set to either "html" or "xhtml", the bidirectional markup mechanisms specific to each format SHOULD be used. The value of the "u: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.</t> <t>Example atom:feed with bidirectional XHTML:</t> <figure><artwork><![CDATA[ <?xml version="1.0" ?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:u="http://purl.org/atompub/bidi" u:dir="rtl"> <title type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml"> <p dir="rtl">ٹٺٻ</p> </div> </title> ... </feed> ]]></artwork></figure> <t>The Unicode bidirectional control characters MAY also be used within attributes and element values to indicate the directionality of text. Implementers are reminded that unexpected results could occur when using both the "u:dir" attribute and the Unicode control characters within a single document.</t> </section> <section anchor="security" title="Security Considerations"> <t>The security considerations discussed in <xref target="RFC4287" /> Section 8 apply.</t> </section> <section title="IANA Considerations"> <t>No IANA actions are required by this document.</t> </section> </middle> <back> <references title="Normative References"> &rfc2119; &rfc4287; &xmlnames; &infoset; <reference anchor="UNICODE"> <front> <title>ISO/IEC 10646:2003: Information Technology - Universal Multiple-Octet Coded Character Set (UCS)</title> <author> <organization>International Organization for Standardization</organization> </author> <date month="December" year="2003" /> </front> </reference> <reference anchor="UNI9"> <front> <title>The Bidirectional Algorithm</title> <author initials="M" surname="Davis" fullname="M. Davis"> <organization>International Organization for Standardization</organization> </author> <date month="March" year="2004" /> </front> </reference> </references> <references title="Informative References"> <reference anchor="RELAXNG" target="http://www.oasis-open.org/committees/relax-ng/compact-20021121.html"> <front> <title>RELAX NG Compact Syntax</title> <author initials="J" surname="Clark" fullname="James Clark"> <organization /> </author> <date month="December" year="2001" /> </front> </reference> </references> <section title="Acknowledgements"> <t>TBD</t> </section> </back> </rfc>