UserPreferences

PaceOptionalXhtmlDiv


Abstract

Make the XHTML div container optional.

Status

New

Rationale

Make the XHTML div optional but not enforce it to be part of content.

Proposal

Make the following changes to format-08:

Section 3.1

Change the atomXHTMLTextConstruct definition to this one:
   atomXHTMLTextConstruct =
      atomCommonAttributes,
      attribute type { "xhtml" },
      (text
       | anyXHTML)*

Section 3.1.1.3

   If the value of "type" is "xhtml", the content of the Text construct
   MUST be XHTML [XHTML] text and markup that could validly appear within
   an XHTML div element.  Atom Processors which display the content MAY
   use the markup to aid in displaying it.  Escaped characters, such as
   "&" and ">", represent those characters, not markup.

   If the content of the Text Construct is a single XHTML div element
   with no attribute (other than namespace declarations), Atom processors
   SHOULD consider it not being part of the content and discard it. This
   process SHOULD be recursively repeated on the content of the XHTML div.
   Hence, Atom producers MAY enclose the content of the Text Construct
   within such an XHTML div.

Impacts

People willing to produce prefix-free feeds with "dummy" XHTML containers to carry their XHTML namespace decl. can still do so and have these containers not being considered part of the content (by some processors).

Producers are allowed to add such dummy containers as well without being accused of changing the entry content.

Notes

This Pace is not incompatible with PaceXhtmlDivSuggestedOnly, at least about the inline vs. block content.

If PaceXhtmlDivSuggestedOnly's "inline vs. block content" is adopted, this Pace will need updating to allow discarding XHTML "div" and "span" elements. I further suggest allowing to discard any of them independently of the Text Construct type (Inline or Block): a div with no attribute inside an Inline Text Construct SHOULD be discarded, as well as a span with no attribute inside a Block Text Construct.


CategoryProposals