World Library  
Flag as Inappropriate
Email this Article

Atom (standard)

Article Id: WHEBN0000509078
Reproduction Date:

Title: Atom (standard)  
Author: World Heritage Encyclopedia
Language: English
Subject: RSS, Sam Ruby, History of web syndication technology, Feed icon, Video blog
Collection: Atom (Standard), Cloud Standards, Rss, Web Syndication Formats, Xml-Based Standards
Publisher: World Heritage Encyclopedia
Publication
Date:
 

Atom (standard)

Atom
Filename extension .atom, .xml
Internet media type application/atom+xml
Type of format web syndication
Extended from XML
[1]
User interface of a feed reader

The name Atom applies to a pair of related Web standards. The Atom Syndication Format is an XML language used for web feeds, while the Atom Publishing Protocol (AtomPub or APP) is a simple HTTP-based protocol for creating and updating web resources.

Web feeds allow software programs to check for updates published on a website. To provide a web feed, the site owner may use specialized software (such as a content management system) that publishes a list (or "feed") of recent articles or content in a standardized, machine-readable format. The feed can then be downloaded by programs that use it, like websites that syndicate content from the feed, or by feed reader programs that allow Internet users to subscribe to feeds and view their content.

A feed contains entries, which may be headlines, full-text articles, excerpts, summaries, and/or links to content on a website, along with various metadata.

The Atom format was developed as an alternative to RSS. Ben Trott, an advocate of the new format that became Atom, believed that RSS had limitations and flaws—such as lack of on-going innovation and its necessity to remain backward compatible— and that there were advantages to a fresh design.[1]

Proponents of the new format formed the IETF Atom Publishing Format and Protocol Workgroup. The Atom syndication format was published as an IETF proposed standard in RFC 4287 (December 2005), and the Atom Publishing Protocol was published as RFC 5023 (October 2007).

Contents

  • Usage 1
  • Atom compared to RSS 2.0 2
    • Content model 2.1
    • Date formats 2.2
    • Internationalization 2.3
    • Modularity 2.4
  • Barriers to adoption 3
  • Development history 4
    • Background 4.1
    • Initial work 4.2
    • Atom 0.3 and adoption by Google 4.3
    • Atom 1.0 and IETF standardization 4.4
  • Example of an Atom 1.0 feed 5
    • Including in HTML 5.1
  • See also 6
  • References 7
  • External links 8

Usage

Web feeds are used by the blogging community to share recent entries' headlines, full text, and even attached multimedia files.[2] These providers allow other websites to incorporate the blog's "syndicated" headline or headline-and-short-summary feeds under various usage agreements. Atom and other web syndication formats are now used for many purposes, including journalism, marketing, bug-reports, or any other activity involving periodic updates or publications. Atom also provides a standard way to export an entire blog, or parts of it, for backup or for importing into other blogging systems.

It is common to find web feeds on major websites, as well as many smaller ones. Some websites let people choose between RSS or Atom formatted web feeds; others offer only RSS or only Atom. In particular, many blog and wiki sites offer their web feeds in the Atom format.

A feed reader or "aggregator" program can be used to check feeds and display new articles. Client-side readers may also be designed as standalone programs or as extensions to existing programs like web browsers.

Web-based feed readers and news aggregators require no software installation and make the user's "feeds" available on any computer with Web access. Some aggregators syndicate (combine) web feeds into new feeds, e.g., taking all football related items from several sports feeds and providing a new football feed.

Atom compared to RSS 2.0

When Atom emerged as a format intended to rival or replace [3]

A brief description of some of the ways Atom 1.0 differs from RSS 2.0 has been given by Tim Bray, who played a major role in the creation of Atom:[4]

Content model

RSS 2.0 may contain either plain text or escaped HTML as a payload, with no way to indicate which of the two is provided. Atom, on the other hand, provides a mechanism to explicitly and unambiguously label the type of content being provided by the entry, and allows for a broad variety of payload types including plain text, escaped HTML, XHTML, XML, Base64-encoded binary, and references to external content such as documents, video, audio streams, and so forth.

Date formats

The RSS 2.0 specification relies on the use of RFC 822 formatted timestamps to communicate information about when items in the feed were created and last updated. The Atom working group chose instead to use timestamps formatted according to the rules specified by RFC 3339 (which is a subset of ISO 8601; see Appendix A in RFC 3339 for differences).

Internationalization

While the RSS vocabulary has a mechanism to indicate a human language for the feed, there is no way to specify a language for individual items or text elements. Atom, on the other hand, uses the standard xml:lang attribute to make it possible to specify a language context for every piece of human-readable content in the feed.

Atom also differs from RSS in that it supports the use of Internationalized Resource Identifiers, which allow links to resources and unique identifiers to contain characters outside the US ASCII character set.

Modularity

The elements of the RSS vocabulary are not generally reusable in other XML vocabularies. The Atom syntax was specifically designed to allow elements to be reused outside the context of an Atom feed document. For instance, it is not uncommon to find atom:link elements being used within RSS 2.0 feeds.

Barriers to adoption

Despite the emergence of Atom as an IETF Proposed Standard and the decision by major companies such as Google to embrace Atom, use of the older and better-known RSS formats has continued. There are several reasons to this:

  • RSS 2.0 support for enclosures led directly to the development of podcasting. While many podcasting applications, such as iTunes, support the use of Atom 1.0, RSS 2.0 remains the preferred format.[5]
  • Many sites choose to publish their feeds in only a single format. For example, CNN and the New York Times offer their web feeds only in RSS 2.0 format.
  • News articles about web syndication feeds have increasingly used the term "RSS" to refer generically to any of the several variants of the RSS format such as RSS 2.0 and RSS 1.0 as well as the Atom format.[6][7]

Development history

Background

Before the creation of Atom the primary method of web content syndication was the RSS family of formats.

Members of the community who felt there were significant deficiencies with this family of formats were unable to make changes directly to RSS 2.0 because the official specification document stated that it was purposely frozen to ensure its stability.[8]

Initial work

In June 2003, Sam Ruby set up a wiki to discuss what makes "a well-formed log entry".[9] This initial posting acted as a rallying point.[10] People quickly started using the wiki to discuss a new syndication format to address the shortcomings of RSS. It also became clear that the new format could form the basis of a more robust replacement for blog editing protocols such as the Blogger API and LiveJournal XML-RPC Client/Server Protocol as well.

The project aimed to develop a web syndication format that was:[11]

  • "100% vendor neutral,"
  • "implemented by everybody,"
  • "freely extensible by anybody, and"
  • "cleanly and thoroughly specified."

In short order, a project road map[11] was built. The effort quickly attracted more than 150 supporters, including David Sifry of Technorati, Mena Trott of Six Apart, Brad Fitzpatrick of LiveJournal, Jason Shellen of Blogger, Jeremy Zawodny of Yahoo, Timothy Appnel of the O'Reilly Network, Glenn Otis Brown of Creative Commons and Lawrence Lessig. Other notables supporting Atom include Mark Pilgrim, Tim Bray, Aaron Swartz, Joi Ito, and Jack Park.[12] Also, Dave Winer, the key figure behind RSS 2.0, gave tentative support to the new endeavor.[13]

After this point, discussion became chaotic, due to the lack of a decision-making process. The project also lacked a name, tentatively using "Pie," "Echo," "Atom," and "Whatever" (PEAW)[14] before settling on Atom. After releasing a project snapshot known as Atom 0.2 in early July 2003, discussion was shifted off the wiki.

Atom 0.3 and adoption by Google

The discussion then moved to a newly set up mailing list. The next and final snapshot during this phase was Atom 0.3, released in December 2003. This version gained widespread adoption in syndication tools, and in particular it was added to several Google-related services, such as Blogger, Google News, and Gmail. Google's Data APIs (Beta) GData are based on Atom 1.0 and RSS 2.0.

Atom 1.0 and IETF standardization

In 2004, discussions began about moving the project to a standards body such as the World Wide Web Consortium or the Internet Engineering Task Force (IETF). The group eventually chose the IETF and the Atompub working group[15] was formally set up in June 2004, finally giving the project a charter and process. The Atompub working group is co-chaired by Tim Bray (the co-editor of the XML specification) and Paul Hoffman. Initial development was focused on the syndication format.

The Atom Syndication Format was issued as a Proposed Standard in IETF RFC 4287 in December 2005. The co-editors were Mark Nottingham and Robert Sayre. This document is known as atompub-format in IETF's terminology. The Atom Publishing Protocol was issued as a Proposed Standard in IETF RFC 5023 in October 2007. Two other drafts have not been standardized.[16]

Example of an Atom 1.0 feed

An example of a document in the Atom Syndication Format:





        Example Feed
        A subtitle.
        
        
        urn:uuid:60a76c80-d399-11d9-b91C-0003939e0af6
        2003-12-13T18:30:02Z
        
        
        
                Atom-Powered Robots Run Amok
                
                
                
                urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a
                2003-12-13T18:30:02Z
                Some text.
                
                        

This is the entry content.

John Doe johndoe@example.com

Including in HTML

The following tag should be placed into the head of an HTML document to provide a link to an ATOM Feed.


See also

References

  1. ^ a b
  2. ^ See also podcasting, vodcasting, broadcasting, screencasting, vlogging, and MP3 blogs.
  3. ^
  4. ^
  5. ^
  6. ^
  7. ^
  8. ^
  9. ^
  10. ^
  11. ^ a b
  12. ^
  13. ^
  14. ^
  15. ^
  16. ^

External links

Atom standard

  • RFC 4287 – "The Atom Syndication Format"
  • RFC 5023 – "The Atom Publishing Protocol"

Atom advocacy / evangelism

  • AtomEnabled.org – An unofficial website following the Atom project
  • Atom Syndication Format – Introduction – Overview
  • Comparison of RSS and Atom Web Feed Formats
  • The Atom API – Xml.com column by Mark Pilgrim
  • Getting to know the Atom Publishing Protocol – IBM developerWorks article by James Snell
  • Atom Landscape Overview – Overview of Atom-related IETF standards and drafts
  • Atom Publishing Protocol (APP) and Atom Syndication Format – Tutorial on Atom Publishing Protocol (APP) and Atom Syndication Format

Atom history & motivation

  • Anatomy of a Well Formed Log Entry – the weblog post that started it all
  • Why we need Echo (June 2003) – Motivation and goals of the Atom project

Atom working group links

  • Atom Wiki – The main place for work on Atom.
  • Atom Protocol Mailing List – WG discussion of the publishing protocol
  • Atom Syntax Mailing List – WG discussion of the syndication format
  • IETF Atom Publishing Format and Protocol working group (atompub)

Atom Extension Standards

  • IANA Registry of Link-Relations – Official registry of atom:link element "rel" attribute values
  • RFC 4685 – Atom Threading Extensions
  • RFC 4946 – Atom License Extension
  • RFC 5005 – Feed Paging and Archiving
  • hAtom – a microformat for marking up standard HTML such that an Atom feed can be derived from it.
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 


Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.