
Atomという名前は、関連する 2 つのWeb 標準に適用されます。Atom Syndication Format はWeb フィードに使用されるXML言語であり、Atom Publishing Protocol ( AtomPubまたはAPP ) は Web リソースの作成と更新のためのシンプルなHTTPベースのプロトコルです。[ 1 ]
ウェブフィードを利用することで、ソフトウェアプログラムはウェブサイトに掲載された更新情報を確認できます。ウェブフィードを提供するには、サイト所有者は、最新の記事やコンテンツのリスト(フィード)を標準化された機械可読形式で公開する専用ソフトウェア(コンテンツ管理システムなど)を使用する場合があります。フィードは、フィードからコンテンツを配信するウェブサイトや、インターネットユーザーがフィードを購読してコンテンツを閲覧できるフィードリーダープログラムなど、フィードを利用するプログラムによってダウンロードできます。
フィードには、見出し、全文記事、抜粋、要約、ウェブサイト上のコンテンツへのリンクなどのエントリと、さまざまなメタデータが含まれます。
Atom フォーマットはRSSの代替として開発されました。Atomとなった新しいフォーマットの提唱者であるベン・トロットは、RSS には継続的なイノベーションの欠如や後方互換性を維持する必要性などの制限や欠陥があり、新しい設計には利点があると信じていました。[ 1 ]
この新しいフォーマットの提唱者たちは、IETF Atom Publishing Format and Protocol Workgroupを結成した。Atom Syndication Formatは、 RFC 4287(2005年12月)でIETFの提案標準として公開され、Atom Publishing ProtocolはRFC 5023(2007年10月)として公開された。
ブログコミュニティは、ウェブフィードを利用して、最新の記事の見出し、全文、さらには添付されたマルチメディアファイルを共有しています。[ 2 ] プロバイダーは、さまざまな利用規約に基づき、他のウェブサイトがブログの「シンジケート配信」された見出し、または見出しと短い要約のフィードを組み込むことを許可しています。 2016年現在Atomをはじめとするウェブ配信フォーマットは、ジャーナリズム、マーケティング、バグ報告、その他定期的な更新や公開を伴うあらゆる活動など、さまざまな目的で利用されています。Atomは、ブログ全体またはその一部をバックアップ用、あるいは他のブログシステムにインポートするための標準的な方法も提供しています。
大手ウェブサイトはもちろん、多くの小規模ウェブサイトでもウェブフィードはよく見かけます。一部のウェブサイトではRSS形式とAtom形式のウェブフィードを選択できる一方、RSS形式のみ、あるいはAtom形式のみを提供しているサイトもあります。特に、多くのブログやWikiサイトでは、ウェブフィードをAtom形式で提供しています。
フィードリーダーまたは「アグリゲーター」プログラムは、フィードをチェックしたり、新しい記事を表示したりするために使用できます。 クライアント側のリーダーは、スタンドアロンプログラムとして設計することも、 Webブラウザなどの既存のプログラムの拡張機能として設計することもできます。
ウェブベースのフィードリーダーやニュースアグリゲーターは、ソフトウェアのインストールが不要で、ウェブにアクセスできるあらゆるコンピューターでユーザーの「フィード」を利用できます。一部のアグリゲーターは、複数のウェブフィードを統合(結合)して新しいフィードを作成します。例えば、複数のスポーツフィードからサッカー関連の記事をすべて集めて、新しいサッカーフィードを提供するといった具合です。
AtomがRSSに対抗または取って代わることを目的としたフォーマットとして登場したとき、CNETは作成者の動機を次のように説明した。「Winerの反対者たちは、RSSの曖昧さを解消し、複数のバージョンを統合し、機能を拡張し、伝統的な標準化団体の傘下に入る新しいフォーマットを求めている。」[ 3 ]
Atom 1.0 と RSS 2.0 の違いについて、Atom の作成に大きく貢献したTim Brayが簡単に説明しています。 [ 4 ]
RSS 2.0仕様では、フィード内のアイテムがいつ作成され、最後に更新されたかに関する情報を伝えるために、RFC 822形式のタイムスタンプを使用することを前提としています。一方、Atomワーキンググループは、 RFC 3339(ISO 8601のサブセット。相違点についてはRFC 3339の付録Aを参照)で規定されたルールに従ってフォーマットされたタイムスタンプを使用することを選択しました。
RSSの語彙にはフィードの言語を示す仕組みはありますが、個々のアイテムやテキスト要素の言語を指定する方法はありません。一方、Atomは標準のxml:lang属性を使用することで、フィード内の人間が読めるコンテンツすべてに言語コンテキストを指定できるようにしています。
AtomはRSSとは異なり、国際化リソース識別子(IRID)の使用をサポートしている。これにより、リソースへのリンクや固有識別子に、米国のASCII文字セット以外の文字を含めることができる。
RSS語彙の要素は、一般的に他のXML語彙では再利用できません。Atom構文は、Atomフィード文書のコンテキスト外でも要素を再利用できるように特別に設計されています。例えば、RSS 2.0フィード内でatom:link要素が使用されているのは珍しいことではありません。
AtomがIETFの提案標準として登場し、 Googleなどの大手企業がAtomを採用することを決定したにもかかわらず、より古く、より広く知られているRSSフォーマットの使用は依然として続いている。これにはいくつかの理由がある。
Atomが開発される以前は、ウェブコンテンツの配信における主要な手段はRSS形式のファミリーであった。
このフォーマット群に重大な欠陥があると感じていたコミュニティのメンバーは、公式仕様書に安定性を確保するために意図的に凍結されたと記載されていたため、RSS 2.0に直接変更を加えることができなかった。[ 9 ]
2003 年 6 月、サム・ルビーは「整ったログエントリ」とは何かを議論するための wiki を立ち上げた。[ 10 ] この最初の投稿は結集点となった。[ 11 ]人々はすぐに wiki を使って RSS の欠点を解消する新しい配信フォーマットについて議論し始めた。また、この新しいフォーマットはBlogger API やLiveJournal XML-RPC Client/Server Protocolなどのブログ編集プロトコルのより堅牢な代替となる基盤にもなり得ることが明らかになった。
このプロジェクトは、次のようなウェブ配信フォーマットを開発することを目的としていました。[ 12 ]
すぐにプロジェクトのロードマップ[ 12 ]が作成されました。この取り組みには、TechnoratiのDavid Sifry、Six ApartのMena Trott、LiveJournalのBrad Fitzpatrick 、 BloggerのJason Shellen、YahooのJeremy Zawodny 、 O'Reilly NetworkのTimothy Appnel 、 Creative CommonsのGlenn Otis Brown 、Lawrence Lessigなど、150人以上の支持者が集まりました。Atomを支持するその他の著名人には、 Mark Pilgrim、Tim Bray、Aaron Swartz、Joi Ito、Jack Parkなどがいます。[ 13 ]また、RSS 2.0の立役者であるDave Winerも、この新しい取り組みに暫定的な支持を表明しました。 [ 14 ]
この時点以降、意思決定プロセスが欠如していたため、議論は混乱を極めた。プロジェクトには名前もついておらず、暫定的に「Pie」、「Echo」、「Atom」、「Whatever」(PEAW)[ 15 ]が使われた後、最終的にAtomに落ち着いた。2003年7月初旬にAtom 0.2として知られるプロジェクトのスナップショットがリリースされた後、議論はwikiから別の場所に移った。
その後、議論は新しく設定されたメーリングリストに移りました。このフェーズの次の最終スナップショットは、2003 年 12 月にリリースされたAtom 0.3でした。このバージョンはシンジケーション ツールで広く採用され、特に Blogger、Google News、Gmailなど、いくつかの Google 関連サービスに追加されました。Google のデータ API (ベータ版) GData は、Atom 1.0 と RSS 2.0 に基づいています。
2004年、このプロジェクトをWorld Wide Web ConsortiumやInternet Engineering Task Force (IETF)などの標準化団体に移管することについての議論が始まった。最終的にグループはIETFを選択し、Atompubワーキンググループ[ 16 ]が2004年6月に正式に設立され、プロジェクトに憲章とプロセスが与えられた。Atompubワーキンググループは、Tim Bray(XML仕様の共同編集者)とPaul Hoffmanが共同議長を務めている。初期の開発はシンジケーション形式に重点が置かれていた。
Atom Syndication Format は、2005 年 12 月に IETF RFC 4287で提案標準として発行されました。共同編集者は Mark Nottingham と Robert Sayre です。この文書は、 IETF の用語ではatompub-formatとして知られています。Atom Publishing Protocol は、2007 年 10 月に IETF RFC 5023で提案標準として発行されました。他の 2 つのドラフトは標準化されていません。[ 17 ]
Atom Syndication Formatのドキュメントの例:
<?xml version="1.0" encoding="utf-8"?><feed xmlns= "http://www.w3.org/2005/Atom" ><title>フィードの例</title> <subtitle>サブタイトル。</subtitle> <link href= "http://example.org/feed/" rel= "self" /> <link href= "http://example.org/" /> <id> urn:uuid:60a76c80-d399-11d9-b91C-0003939e0af6 </id> <updated> 2003-12-13T18:30:02Z </updated> <entry> <title>原子動力ロボットが暴走</title> <link href= "http://example.org/2003/12/13/atom03" /> <link rel= "alternate" type= "text/html" href= "http://example.org/2003/12/13/atom03.html" /> <link rel= "edit" href= < content type = " xhtml " > < div xmlns = " http://www.w3.org/1999/xhtml " > <p>これはエントリの内容です。</p> </div> </content> <author> <name> John Doe </name> <email> johndoe@example.com </email> </author> </entry></feed>Atomフィードへのリンクを提供するには、HTMLドキュメントの<head>タグ内に以下のタグを配置する必要があります。
< link href = "atom.xml" type = "application/atom+xml" rel = "alternate" title = "サイト全体のAtomフィード" />RSSとAtomはどちらも広くサポートされており、主要なコンシューマー向けフィードリーダーすべてと互換性があります。RSSはフィードリーダーのサポートが早かったため、広く利用されるようになりました。技術的には、Atomにはいくつかの利点があります。ライセンスの制限が少ない、IANAに登録されたMIMEタイプ、XML名前空間、URIサポート、RELAX NGサポートなどです。[ 18 ]
以下の表は、RSS要素とAtom要素が同等である場合に、両者を並べて示しています。
注:アスタリスク(*)は、要素の指定が必須であることを示します(Atom要素「author」と「link」は、特定の条件下でのみ必須です)。
この対立の中心は、ブログやその他のウェブコンテンツを配信するために広く使われている技術であるReally Simple Syndication (RSS) と呼ばれるもの。この論争は、RSS の主要なゲートキーパーであるブログのパイオニア、ハーバード大学ロースクールのフェロー、デイブ・ワイナーと、別の形式の支持者との間で繰り広げられている。