idnits 2.17.1 draft-snell-atompub-feed-thread-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 14. -- Found old boilerplate from RFC 3978, Section 5.5 on line 372. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 349. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 356. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 362. ** This document has an original RFC 3978 Section 5.4 Copyright Line, instead of the newer IETF Trust Copyright according to RFC 4748. ** This document has an original RFC 3978 Section 5.5 Disclaimer, instead of the newer disclaimer which includes the IETF Trust according to RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == No 'Intended status' indicated for this document; assuming Proposed Standard Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (February 2006) is 6637 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) No issues found here. Summary: 4 errors (**), 0 flaws (~~), 2 warnings (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group J. Snell 3 Internet-Draft February 2006 4 Expires: August 5, 2006 6 Feed Thread: Enabling Threaded Entries in Atom 7 draft-snell-atompub-feed-thread-06.txt 9 Status of this Memo 11 By submitting this Internet-Draft, each author represents that any 12 applicable patent or other IPR claims of which he or she is aware 13 have been or will be disclosed, and any of which he or she becomes 14 aware will be disclosed, in accordance with Section 6 of BCP 79. 16 Internet-Drafts are working documents of the Internet Engineering 17 Task Force (IETF), its areas, and its working groups. Note that 18 other groups may also distribute working documents as Internet- 19 Drafts. 21 Internet-Drafts are draft documents valid for a maximum of six months 22 and may be updated, replaced, or obsoleted by other documents at any 23 time. It is inappropriate to use Internet-Drafts as reference 24 material or to cite them other than as "work in progress." 26 The list of current Internet-Drafts can be accessed at 27 http://www.ietf.org/ietf/1id-abstracts.txt. 29 The list of Internet-Draft Shadow Directories can be accessed at 30 http://www.ietf.org/shadow.html. 32 This Internet-Draft will expire on August 5, 2006. 34 Copyright Notice 36 Copyright (C) The Internet Society (2006). 38 Abstract 40 This memo presents a mechanism that allows feeds publishers to 41 express threaded discussions within the Atom Syndication Format. 43 Table of Contents 45 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 46 2. Notational Conventions . . . . . . . . . . . . . . . . . . . . 3 47 3. The 'in-reply-to' extension element . . . . . . . . . . . . . 3 48 4. The 'replies' link relation . . . . . . . . . . . . . . . . . 6 49 5. Security Considerations . . . . . . . . . . . . . . . . . . . 8 50 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 51 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9 52 Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 9 53 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 10 54 Intellectual Property and Copyright Statements . . . . . . . . . . 11 56 1. Introduction 58 This document specifies a mechanism that allows the expression of 59 threaded discussions within the Atom Syndication Format ([RFC4287]). 61 2. Notational Conventions 63 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 64 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 65 document are to be interpreted as described in BCP 14, [RFC2119], as 66 scoped to those conformance targets. 68 In this specification, "entry" refers to an atom:entry element. 70 In this specification, "feed" refers to an Atom Feed Document. 72 In this specification, "head section" refers to the children of a 73 feed's document-wide metadata container; e.g., the child elements of 74 the atom:feed element in an Atom Feed Document. 76 In this specification, "link" refers to the atom:link element. 78 In this specification, "link relation" refers to the value of the 79 atom:link element's rel attribute. 81 In this specification, the term "extension element" refers to a 82 structured extension element as described in [RFC4287]. 84 This specification uses XML Namespaces [W3C.REC-xml-names-19990114] 85 to uniquely identify XML element names. It uses the following 86 namespace prefix for the indicated namespace URI; 87 "thr": "http://purl.org/syndication/thread/1.0" 89 This specification uses terms from the XML Infoset [W3C.REC-xml- 90 infoset-20040204]. However, this specification uses a shorthand; the 91 phrase "Information Item" is omitted when naming Element Information 92 Items. Therefore, when this specification uses the term "element," 93 it is referring to an Element Information Item in Infoset terms. 95 3. The 'in-reply-to' extension element 97 The 'in-reply-to' extension element is used to indicate that a feed 98 entry is a response to another resource. The element MUST contain 99 either or both the 'id' and 'href' attributes. 101 in-reply-to = element thr:in-reply-to { 102 atomCommonAttributes, 103 attribute id { atomURI }?, 104 attribute href { atomURI }?, 105 attribute type { atomMediaType }?, 106 attribute source { atomURI }? 107 } 109 The 'id' attribute specifies the universally unique identifier of the 110 resource being responded to. The value of the attribute MUST conform 111 to the same construction and comparison rules as the atom:id element. 112 The 'href' attribute specifies an IRI that may be used to retrieve a 113 representation of the resource being responded to. 115 The "in-reply-to" element MAY contain a "type" attribute whose value 116 identifies the media type of the resource identified by the href 117 attribute. 119 The "in-reply-to" element MAY contain a "source" attribute whose 120 value identifies the IRI of an Atom Feed Document within which an 121 atom:entry representing the resource being responded to MAY be found. 123 o atom:entry elements MAY contain any number of 'in-reply-to' 124 extension elements. 125 o atom:entry elements SHOULD NOT contain more than one 'in-reply-to' 126 extension element having the same 'id' attribute value. 127 o atom:feed elements MAY contain any number of 'in-reply-to' 128 extension elements. 129 o atom:feed elements SHOULD NOT contain more than one 'in-reply-to' 130 extension elements having the same 'id' attribute value. 131 o atom:source elements MAY contain any number of 'in-reply-to' 132 extension elements. 133 o atom:source elements SHOULD NOT contain more than one 134 'in-reply-to' extension element having the same 'id' attribute 135 value. 137 For example 139 141 http://www.example.org/myfeed 142 My Example Feed 143 2005-07-28T12:00:00Z 144 145 James 146 147 tag:example.org,2005:1 148 My original entry 149 2006-03-01T12:12:12Z 150 153 This is my original entry 154 155 156 tag:example.org,2005:1,1 157 A response to the original 158 2006-03-01T12:12:12Z 159 160 164 This is a response to the original entry 165 166 168 In order to allow Atom clients that are not familiar with the in- 169 reply-to element to know that a relationship exists between the 170 containing entry and the resource being responded to, publishers are 171 advised to consider including a "related" link referencing a 172 representation of the resource identified by the in-reply-to element. 174 For example 176 178 http://www.example.org/myfeed 179 My Example Feed 180 2005-07-28T12:00:00Z 181 182 James 183 184 tag:example.org,2005:1,1 185 A response to the original 186 2006-03-01T12:12:12Z 187 188 192 196 This is a response to the original entry 197 198 200 4. The 'replies' link relation 202 While responses to entries MAY appear within the same feed as the 203 entry being responded to, it is common practice to separate responses 204 into a separate feed document or other resource. In such cases, it 205 is helpful for an atom:feed or atom:entry to indicate the location of 206 a resource where responses may be found. For this purpose, the 207 'replies' link relation is used. 209 The type attribute of the 'replies' link relation indicates the type 210 of resource containing the responses. A value of 'application/ 211 atom+xml' indicates that the resource identified by the link's href 212 attribute is either an Atom Feed Document or an Atom Entry Document 213 that MAY contain one or more 'in-reply-to' link relations. If the 214 type attribute is omitted, it's value is assumed to be "application/ 215 atom+xml". 217 o atom:entry elements MAY contain any number of 'replies' link 218 relations. 220 o atom:entry elements MUST NOT contain more than one 'replies' link 221 relation having the same 'type' and 'href' attribute values. 222 o atom:feed elements MAY contain any number of 'replies' link 223 relations. 224 o atom:feed elements MUST NOT contain more than one 'replies' link 225 relation having the same 'type' and 'href' attribute values. 226 o atom:source elements MAY contain any number of 'replies' link 227 relations. 228 o atom:source elements MUST NOT contain more than one 'replies' link 229 relation having the same 'type' and 'href' attribute values. 231 A 'replies' link relation appearing as a child of an atom:feed or 232 atom:source element indicates that the referenced resource MAY 233 contain responses to any of the Feed contained atom:entry's. A 234 'replies' link relation appearing as a child of an atom:entry element 235 indicates that the referenced resource MAY contain responses to the 236 containing atom:entry. 238 Atom link elements specifying the "replies" rel attribute value MAY 239 contain a "thr:count" attribute whose value is a non-negative integer 240 indicating the total number of replies contained by the linked 241 resource. The value is strictly advisory and may not accurately 242 reflect the actual number of replies. 244 The "replies" link MAY also contain a "thr:when" attribute whose 245 value is a [RFC3339] date-time stamp conforming to the same 246 construction rules as the Date Construct from [RFC4287] and is used 247 to indicate the date and time of the most recent reply contained by 248 the linked resource. The value is strictly advisory and may not 249 accurately reflect the actual date and time of the most recent reply. 251 The presence of a 'replies' link relation is merely a hint as to 252 where responses to entries MAY be found and does not guarantee that 253 the referenced resource contains any responses to any entries within 254 the containing feed. 256 For example, replies contained in a separate Atom feed 258 260 http://www.example.org/myfeed 261 My Example Feed 262 2005-07-28T12:00:00Z 263 264 James 265 266 tag:entries.com,2005:1 267 My original entry 268 2006-03-01T12:12:12Z 269 270 275 This is my original entry 276 277 279 The behavior of 'replies' link relations specifying any media type 280 other than "application/atom+xml" is undefined. Software written to 281 conform to this version of the specification will not be guaranteed 282 to process such links correctly. 284 5. Security Considerations 286 Feeds using the mechanisms described here could be crafted in such a 287 way as to cause a consumer to initiate excessive (or even an unending 288 sequence of) network requests, causing denial of service (either to 289 the consumer, the target server, and/or intervening networks). This 290 risk can be mitigated by requiring user intervention after a certain 291 number of requests, or by limiting requests either according to a 292 hard limit, or with heuristics. 294 6. IANA Considerations 296 This specification defines one new Atom link relation type to be 297 registered in the IANA Registry of Link Relation as defined by 298 [RFC4287]. 300 Attribute Value: replies 301 Description: (see section 4) 302 Expected display characteristics: (see section 4) 303 Security considerations: (see section 6) 305 7. References 307 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 308 Requirement Levels", BCP 14, RFC 2119, March 1997. 310 [RFC3339] Klyne, G. and C. Newman, "Date and Time on the Internet: 311 Timestamps", RFC 3339, July 2002. 313 [RFC4287] Nottingham, M. and R. Sayre, "The Atom Syndication 314 Format", RFC 4287, December 2005. 316 [W3C.REC-xml-infoset-20040204] 317 Tobin, R. and J. Cowan, "XML Information Set (Second 318 Edition)", W3C REC REC-xml-infoset-20040204, 319 February 2004. 321 [W3C.REC-xml-names-19990114] 322 Hollander, D., Bray, T., and A. Layman, "Namespaces in 323 XML", W3C REC REC-xml-names-19990114, January 1999. 325 Appendix A. Acknowledgements 327 The author gratefully acknowledges the feedback from James 328 Holderness, Byrne Reese, Aristotle Pagaltzis, and the remaining 329 members of the Atom Publishing Format and Protocol working group 330 during the development of this specification. 332 Author's Address 334 James M Snell 336 Phone: 337 Email: jasnell@gmail.com 338 URI: http://snellspace.com 340 Intellectual Property Statement 342 The IETF takes no position regarding the validity or scope of any 343 Intellectual Property Rights or other rights that might be claimed to 344 pertain to the implementation or use of the technology described in 345 this document or the extent to which any license under such rights 346 might or might not be available; nor does it represent that it has 347 made any independent effort to identify any such rights. Information 348 on the procedures with respect to rights in RFC documents can be 349 found in BCP 78 and BCP 79. 351 Copies of IPR disclosures made to the IETF Secretariat and any 352 assurances of licenses to be made available, or the result of an 353 attempt made to obtain a general license or permission for the use of 354 such proprietary rights by implementers or users of this 355 specification can be obtained from the IETF on-line IPR repository at 356 http://www.ietf.org/ipr. 358 The IETF invites any interested party to bring to its attention any 359 copyrights, patents or patent applications, or other proprietary 360 rights that may cover technology that may be required to implement 361 this standard. Please address the information to the IETF at 362 ietf-ipr@ietf.org. 364 Disclaimer of Validity 366 This document and the information contained herein are provided on an 367 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 368 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET 369 ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, 370 INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE 371 INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 372 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 374 Copyright Statement 376 Copyright (C) The Internet Society (2006). This document is subject 377 to the rights, licenses and restrictions contained in BCP 78, and 378 except as set forth therein, the authors retain all their rights. 380 Acknowledgment 382 Funding for the RFC Editor function is currently provided by the 383 Internet Society.