UserPreferences

PaceEntriesAllTheWayDown2


Abstract

Recast atom:head as an entry.

Status

Open

Author: Henry Story

History

Originally PaceEntriesAllTheWayDown, closed by Robert Sayrer because he had other things to do. I have simplified this Pace so that it contains only the refactoring.

Rationale

Simplifying the syntax spec by removing duplicate data structures. "It's all about the Entries, stupid!"

Proposal

The data structure in the atom head is equivalent to an atom Entry. Refactoring the spec to reaveal this relationship.

4.2 The "atom:head" Element

Remove all current atom:head definitions.

Replace:

"The atom:head element acts as a container for metadata about the  feed itself."

with:

"The 'atom:head' is an Atom Entry which provides a representation of the
feed itself. The only additional restriction placed on atom:entry is that it MUST 
contain an atom:generator element."

Move atom:generator to Entry since the protocol needs that anyway.

Remove: 4.2.11 "atom:info" Element

Move: 4.2.3 "atom:introspection" Element to atom:entry

Move: 4.2.4 "atom:post" Element to atom:entry, giving it this definition:

"The 'atom:post' element is a Service construct that conveys the URI used to add
entries to a feed which has the parent entry as its headentry. atom:entry
elements MUST NOT contain more than  one atom:post element."

Remove atom:tagline. Use the summary of Atom Entry instead.

Example

<?xml version="1.0" encoding="utf-8"?>
<feed version="draft-ietf-atompub-format-03: do not deploy" 
 xmlns="http://purl.org/atom/ns#draft-ietf-atompub-format-03">
  <head>
    <title>Example Feed</title>
    <link href="http://example.org/"/>
    <summary>witty tagline</summary>
    <edit href="http://example.org/editing/feed1entry" />
    <updated>2003-12-13T18:30:02Z</updated>
    <id>vemmi://example.org/2003/feeds/1</id>
    <generator>...</generator>
    <author>
      <name>John Doe</name>
    </author>
  </head>
  <entry>
    <title>Atom-Powered Robots Run Amok</title>
    <link href="http://example.org/2003/12/13/atom03"/>
    <edit href="http://example.org/editing/entries/32397" />
    <post href="http://example.org/editing/entries/32397" />
    <id>vemmi://example.org/2003/32397</id>
    <updated>2003-12-13T18:30:02Z</updated>
  </entry>
</feed>

Impacts

Substantially shortens the spec.

Allows a straightforward method of editing feed information.

Notes

SamRuby:

HenryStory:


CategoryProposals