Home >> FAQs/Tutorials >> RSS Tutorials >> Index

RSS FAQs - Atom Syndiation Format RFC4287 Reference Document

By: M. Nottingham, Ed. & R. Sayre, Ed.

Part:   1  2  3  4   5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23 

(Continued from previous part...)


   atomCommonAttributes =
      attribute xml:base { atomUri }?,
      attribute xml:lang { atomLanguageTag }?,
      undefinedAttribute*

   Atom is an extensible format.  See Section 6 of this document for a
   full description of how Atom Documents can be extended.

   Atom Processors MAY keep state sourced from Atom Feed Documents and
   combine them with other Atom Feed Documents, in order to facilitate a
   contiguous view of the contents of a feed.  The manner in which Atom
   Feed Documents are combined in order to reconstruct a feed (e.g.,
   updating entries and metadata, dealing with missing entries) is out
   of the scope of this specification.

3.  Common Atom Constructs

   Many of Atom's elements share a few common structures.  This section
   defines those structures and their requirements for convenient
   reference by the appropriate element definitions.

   When an element is identified as being a particular kind of
   construct, it inherits the corresponding requirements from that
   construct's definition in this section.

   Note that there MUST NOT be any white space in a Date construct or in
   any IRI.  Some XML-emitting implementations erroneously insert white
   space around values by default, and such implementations will emit
   invalid Atom Documents.

3.1.  Text Constructs

   A Text construct contains human-readable text, usually in small
   quantities.  The content of Text constructs is Language-Sensitive.

   atomPlainTextConstruct =
      atomCommonAttributes,
      attribute type { "text" | "html" }?,
      text

   atomXHTMLTextConstruct =
      atomCommonAttributes,
      attribute type { "xhtml" },
      xhtmlDiv

   atomTextConstruct = atomPlainTextConstruct | atomXHTMLTextConstruct

[Page 7]

3.1.1.  The "type" Attribute

   Text constructs MAY have a "type" attribute.  When present, the value
   MUST be one of "text", "html", or "xhtml".  If the "type" attribute
   is not provided, Atom Processors MUST behave as though it were
   present with a value of "text".  Unlike the atom:content element
   defined in Section 4.1.3, MIME media types [MIMEREG] MUST NOT be used
   as values for the "type" attribute on Text constructs.

3.1.1.1.  Text

   Example atom:title with text content:

   ...
   <title type="text">
     Less: &lt;
   </title>
   ...

   If the value is "text", the content of the Text construct MUST NOT
   contain child elements.  Such text is intended to be presented to
   humans in a readable fashion.  Thus, Atom Processors MAY collapse
   white space (including line breaks) and display the text using
   typographic techniques such as justification and proportional fonts.

3.1.1.2.  HTML

   Example atom:title with HTML content:

   ...
   <title type="html">
     Less: &lt;em> &amp;lt; &lt;/em>
   </title>
   ...

   If the value of "type" is "html", the content of the Text construct
   MUST NOT contain child elements and SHOULD be suitable for handling
   as HTML [HTML].  Any markup within MUST be escaped; for example,
   "<br>" as "&lt;br>".  HTML markup within SHOULD be such that it could
   validly appear directly within an HTML <DIV> element, after
   unescaping.  Atom Processors that display such content MAY use that
   markup to aid in its display.

[Page 8]

(Continued on next part...)

Part:   1  2  3  4   5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23 


Selected Developer Jobs:

More...