One document matched: draft-snell-atompub-tombstones-03.xml


<?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 rfc3339 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3339.xml'>  
    <!ENTITY xmlnames PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml4/reference.W3C.REC-xml-names-19990114.xml'>
]>

<rfc category="std" ipr="full3978" docName="draft-snell-atompub-tombstones-03.txt">
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<?rfc strict="yes" ?>
<?rfc toc="yes"?>
<?rfc compact="yes"?>

<?rfc strict="yes" ?>
<?rfc toc="yes"?>
<?rfc compact="yes"?>
<front>
<title abbrev="Atom Tombstones">Atom Syndication Format Tombstones</title>
<author initials="J.M." surname="Snell" fullname="James M Snell">
<organization></organization>
<address>
<postal>
<street></street>
<city></city> <region></region> <code></code>
<country></country>
</postal>
<phone></phone>
<email>jasnell@gmail.com</email>
<uri>http://snellspace.com</uri>
</address>
</author>
<date month="January" year="2008" />
<area>General</area>
<keyword>I-D</keyword>
<keyword>Internet-Draft</keyword>
<keyword>XML</keyword>
<keyword>Extensible Markup Language</keyword>
<keyword>Atom</keyword>
<keyword>RSS</keyword>
<keyword>Syndication</keyword>
<abstract><t>This specification defines mechanisms by which Atom Feed publishers
can explicitly indicate that specific Atom Entries have been removed from an 
Atom feed.</t></abstract>
</front>
<middle>
<section title="Introduction">

<t>This specification adds a new element to the Atom Syndication Format 
<xref target="RFC4287" /> that can be used to explicitly indicate that
specific Atom entries have been removed from an Atom Feed Document.</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 specification uses XML Namespaces <xref target="W3C.REC-xml-names-19990114"/>
to uniquely identify XML element names.  It uses the following namespace prefix 
for the indicated namespace URI;</t>

<figure><artwork><![CDATA[
 "atom": "http://www.w3.org/2005/Atom"
]]></artwork></figure>

</section>

<section title="The atom:deleted-entry element">

<t>The atom:deleted-entry element MAY appear as a child of atom:feed to represent an
Atom Entry that has been removed from the feed.</t>

<figure><artwork><![CDATA[
  deletedEntry = element atom:deleted-entry {
    atomCommonAttributes,
    ( & atomID,
      & element atom:when { atomDateConstruct }?,
      & element atom:by { atomPersonConstruct}?,
      & element atom:comment {atomTextConstruct}?,
      & extensionElement* )
  }
]]></artwork></figure>

<t>The atom:deleted-entry element MUST contain one atom:id element whose value 
specifies the atom:id of the entry that has been removed.</t>

<t>The atom:deleted-entry element MAY contain one atom:when element whose value is an 
<xref target="RFC3339"/> "date-time" specifying the instant the entry was deleted.
An uppercase "T" character MUST be used to separate date and time, and an uppercase 
"Z" character MUST be present in the absence of a numeric time zone offset</t>

<t>The atom:deleted-entry element MAY contain one atom:by element used to identify the
entity that removed the entry from the feed. The atom:by element is an Atom Person
Construct as defined by Section 3.2 of <xref target="RFC4287" />.</t>

<t>The atom:deleted-entry element MAY contain one atom:comment element whose value 
provides additional information about the deletion operation.  The atom:comment
element is an Atom Text Construct as defined by Section 3.1 of <xref target="RFC4287" />.</t>

<t>Atom Feed Documents MAY contain any number of atom:deleted-entry elements.</t>

<figure><artwork><![CDATA[
  <feed xmlns="http://www.w3.org/2005/Atom">
     ...
     <!-- Minimal deleted-entry -->
     <deleted-entry>
       <id>tag:example.org,2005:/entries/1</id>
     </deleted-entry>
     
     <!-- Extended deleted-entry -->
     <deleted-entry>
       <id>tag:example.org,2005:/entries/2</id>
       <when>2005-11-29T12:11:12Z</when>
       <by>
         <name>John Doe</name>
         <email>jdoe@example.org</email>
       </by>
       <comment>Removed comment spam</comment>
     </deleted-entry>
     ...
  </feed>
]]></artwork></figure>

<t>An Atom feed MAY contain atom:entry elements and atom:deleted-entry elements 
sharing the same atom:id value.  Atom processors MUST ignore any atom:deleted-entry 
elements sharing an atom:id value with an atom:entry whose atom:updated element 
specifies a date and time more recent than the atom:deleted-entry element's atom:when 
value.  If the atom:deleted-entry element does not contain an atom:when element, 
the atom:deleted-entry sharing the same atom:id as an entry MUST be ignored.</t>

</section>

<section title="The Trash Link Relation">

<t>When an entry is deleted from one feed, a server can choose to move that 
entry into another Feed document whose member entries consist entirely of 
deleted entries.  Such "trash" feeds are similar in nature to desktop operating
system trash folders that are used to collect, and potentially recover items 
that have been deleted.</t>

<t>This specification registers a new "trash" link relation to the Atom Registry
of Link Relations defined in Section 7.1 of <xref target="RFC4287" />.  When appearing
on atom:link elements within either the atom:feed or atom:source elements, The 
"trash" rel attribute value signifies that the IRI in the value of href attribute 
identifies a resource listing entries that have been deleted from the Feed document.</t>

<figure><preamble>For example,</preamble><artwork><![CDATA[
  <feed xmlns="http://www.w3.org/2005/Atom">
    ...
    <link rel="trash" type="application/atom+xml" href="trash.xml" />
    <link rel="trash" type="application/xhtml+xml" href="trash.xml" />
    ...
  </feed>
]]></artwork></figure>

</section>

<section title="Security Considerations">
  <t>As specified in <xref target="RFC4287"/>, Atom processors should be
  aware of the potential for spoofing attacks where an attacker publishes
  atom:entry or atom:deleted-entry elements using the same atom:id values as 
  entries from other Atom feeds.  An attacker may attempt to trick an application 
  into believing that a given entry has either been removed from or added to a feed.  
  To mitigate this issue, Atom processors are advised to ignore atom:deleted-entry 
  elements referencing entries that have not previously appeared within the 
  containing Feed document and should take steps to verify the origin of the
  Atom feed before considering the entries to be removed.</t>
</section>

<section title="IANA Considerations">
  
<section title="The Link Relation Registration "Trash"">
  <t>
    <list style="hanging">
      <t hangText="Attribute Value:">trash</t>
      <t hangText="Description:">An IRI of a resource listing deleted resources.
        When appearing within an atom:feed or atom:source elements, signifies 
        that the IRI in the value of the href attribute identifies a resource
        listing entries that have been deleted from the Feed document.
      </t>
      <t hangText="Expected display characteristics:">
          Undefined; this relation can be used for
          background processing or to provide extended functionality without
          displaying its value.
      </t> 
      <t hangText="Security considerations:">                   
          Automated agents should take care when this
          relation crosses administrative domains (e.g., the URI has a different
          authority than the current document).
      </t>
    </list>
  </t>
</section>
  
</section>

<section title="Acknowledgements">
<t>The author gratefully acknowledges the feedback from the members of the 
Atom Publishing Format and Protocol working group during the development of 
this specification.</t>
</section>

</middle>

<back>
<references title="Normative References">
  &rfc2119;
  &rfc3339;
  &rfc4287;
  &xmlnames;
</references>
</back>
</rfc>

PAFTECH AB 2003-20262026-04-24 05:45:21