Define publication headers for use with the Atom Publishing Protocol.
Related and Conflicting Proposals
As pointed out recently by Brent Simmons, there are a number of features shared by most weblog publishing systems. The Atom Publishing Protocol needs to allow for authoring clients to use those features. PacePubControl proposes an XML vocabulary to meet this demand. This proposal attempts to accomplish the same using HTTP headers, because the intended semantics of the "pub:control" elements is that it's ok to drop them, which is sort of incompatible with HTTP status codes relating to the status of the body.
In addition, access control data and instructions to send or allow trackbacks should be in the headers, since both constitute security risks.
n.n The "Allow-Annotation" Header The "Allow-Annotation" header indicates whether annotation by subordinate resources is allowed on the enclosed entry. For example, many weblogging systems allow "comments" on each entry, but these comments rely on the entry itself for their context. This specification defines two values for the "Allow-Annotation" header, "yes" or "no". n.n The "Allow-Remote-Annotation" Header The "Allow-Remote-Annotation" header indicates whether annotation by resources not subordinate to the enclosed entry are allowed. In contrast to those allowed by the "Allow-Annotation" header, these annotations represent a relationship between two independent resources. This specification defines two values for the "Allow-Remote-Annotation" header, "yes" or "no". n.n The "Annotate" Header The value of the "Annotate" header is a URI. The presence of this header indicates that the server should remotely annotate the resource at the given URI with information linking it to the enclosed entry. The mechanism by which the server accomplishes this is implementation-specific. The presence of multiple "Annotate" headers indicates that the server should annotate the URI in each header. n.n The "Annotated" Header The value of the "Annotated" header is a URI. Its presence indicates that the resource identified by that URI has been annotated with content describing the enclosed entry. The presence of multiple "Annotated" headers indicates that the URI in each header has been annotated.
PacePubControl provides "text-filter" and "status" fields. This Pace reflects the belief that "text-filter" is better accomplished with the "type" attribute of atom:content, and that "Drafts" should be stored in a separate collection, removing the need for pub:status.