RSS and Atom

RSS 2.0 と Atom 1.0 の比較

最終更新日:2005/010/03

Witha System » Atom目次
» [1章 The Atom Project – RSSの興隆からAtomの誕生]
» [2章 Atomフォーマット – The Atom Syndication Format]
» [3章 Atom出版プロトコル – The Atom Publishing Protocol(AtomAPI)]
» [4章 The Atom Publishing Protocol(AtomAPI)の利用法]
» [AtomやAtomAPI関連のニュースや仕様へのリンク]
» [RSS 2.0 と Atom 1.0 の比較]

This page is a Japanese translation of “RSS 2.0 and Atom 1.0, Compared” by Mr. Bray. If there are any problems, PLEASE let us know.
Bray氏のサイトのページ「RSS 2.0 and Atom 1.0, Compared」を翻訳したものです。著作権は氏に帰属してないかもしれません(Atom公式Wikiページの要約なので…)。問題があれば連絡ください。原文
http://www.tbray.org/atom/RSS-and-Atom

RSS 2.0 and Atom 1.0, Compared
RSS 2.0 と Atom 1.0 の比較

People who generate syndication feeds have a choice of feed formats. As of mid-2005, the two most likely candidates will be RSS 2.0 and Atom 1.0. The purpose of this page is to summarize, as clearly and simply as possible, the differences between the RSS 2.0 and Atom 1.0 syndication languages.
フィードによる配信を行なうには幾つかの選択肢があります。2005年の半ば現在、RSS2.0とAtom1.0がもっとも有力な候補でしょう。このページではRSS2.0とAtom1.0という配信フォーマットの違いを出来るだけシンプルに分かりやすく要約します。

This document is a snapshot of the live version on the Atom wiki.
この文書はWikiで編集中のページのスナップショットです。

Contents

  • Major/qualitative differences (本質的な違い)
    • Deployment (普及度)
    • Specifications (仕様)
    • Publishing protocols (出版プロトコル)
    • Required content (必須要素)
    • Payload (ペイロード)
    • Full or partial content (全部か一部)
    • Autodiscovery (自動発見)
    • Extraction and aggregation (抽出と集合)
  • Differences of degree (充実度の違い)
    • Extensibility (拡張性)
    • URIs (URI)
    • Software availability (ソフトウェアの種類)
    • Language tagging (言語タグ)
    • Digital signatures and encryption 電子署名と暗号化
    • Authors (作者)
    • Categories (カテゴリー)
    • Schema (スキーマ)
  • Sample RSS and atom feeds (サンプル)
  • Element comparison table (要素比較表)

Major/Qualitative Differences
本質的な違い

Deployment
普及度

2005/07/13: RSS 2.0 is widely deployed and Atom 1.0 not at all.
2005/07/13の時点で、RSS2.0は広く普及しており、Atom1.0はまったく使われていません。

Specifications
仕様

The RSS 2.0 specification is copyrighted by Harvard University and is frozen. No significant changes can be made and it is intended that future work be done under a different name; Atom is one example of such work.
RSS2.0の仕様はハーバード大学に著作権があり、凍結されています。重要な変更は出来ず、別の名前の下で将来的な変更に対応していくものです。Atomはそのような結果の一つとなります。

The Atom 1.0 specification (in the course of becoming an IETF standards-track RFC) represents the consensus of the Atompub Working Group within the IETF, as reviewed and approved by the IETF community and the Internet Engineering Steering Group. The specification is structured in such a way that the IETF could conceivably issue further versions or revisions of this specification without breaking existing deployments, although there is no commitment, nor currently expressed interest, in doing so.
Atom1.0の仕様(現在IETFでのRFCへとなる方向へ進んでいる)は、IETFでのAtompugワーキンググループの総意(コンセンサス)を表しています。そしてIETFコミュニティのレビューとIESGでの承認を経たものとなっています。仕様の構成は、既存の仕様と整合性を保ちながら、IETFによるさらなるバージョンやリビジョンを加えていくことが可能になっています。もちろん、現在の所すぐにそのような変更や異なるバージョンを作るつもりも予定もありません。

Publishing Protocols
出版プロトコル

There are two publishing protocols widely used with RSS, MetaWeblog and Blogger. There are frequent reports of problems with interoperability and feature shortcomings.
RSSとともに広く使われる出版プロトコルはMetaWeblogとBloggerです。これらの仕様には頻繁に相互運用性と将来性に関する問題が指摘されています。

The Atompub working group is in the late stages of developing the Atom Publishing Protocol, which is closely integrated with the Atom feed format and is based on the experience with the existing protocols.
ワーキンググループはAtom出版プロトコルの開発の後半の段階にいます。このプロトコルはAtomフォーマットと緊密に統合されており、既存のプロトコルでの経験を元にしたものとなっています。

Required Content
必須要素

RSS 2.0 requires feed-level title, link, and description. RSS 2.0 does not require that any of the fields of individual items in a feed be present.
RSS2.0では、フィードレベルのtitle、link、descriptionが必須。個々のitem以下の要素はいずれも必須ではありません。

Atom 1.0 requires that both feeds and entries include a title (which may be empty), a unique identifier, and a last-updated timestamp.
Atom1.0では、フィードとエントリーでのtitle(空でも可)、識別するID、最終更新日時が必須です。

Payload
ペイロード

RSS 2.0 may contain either plain text or escaped HTML, with no way to indicate which of the two is provided. Escaped HTML is ugly (for example, the string AT&T can be provided as “AT&T”) and has been a source of difficulty for implementors. RSS 2.0 cannot contain actual well-formed XML markup, which reduces the re-usability of content.
RSS2.0ではプレインテキストまたはエスケープしたHTMLを含むことが出来ますが、どちらを利用しているかを知る方法はありません。エスケープしたHTMLは醜い(「AT&T」は「AT&T」になります)ですし、これは実装する人達の頭を悩ませて来ました。実際RSS2.0ではWell-formedなXMLマークアップを含むことができないのでコンテンツの再利用性を落とします。

Atom has a carefully-designed payload container. Content may be explicitly labeled as any one of:
Atom は注意深く設計されたペイロードコンテナを持ちます。(その)内容は次のうちいずれかひとつとして明示的にラベル付けされます。

  • plain text, with no markup (the default)
    プレーンテキスト。マークアップ無し(デフォルト)
  • escaped HTML, like is commonly used with RSS 2.0
    エスケープされたHTML。一般にRSS2.0で利用されるのと同じ方法。
  • well-formed, displayable XHTML markup
    Well-formedで、かつ表示可能なXHTMLな記述
  • some other XML vocabulary (There is no guarantee that the recipient will be able to do anything useful with such content)
    他のXMLボキャブラリ(ただ、受け手がそれらの機能を活用出来る保証はない)
  • base64-encoded binary content (again, no guarantee)
    Base64エンコードされたバイナリーのコンテンツ(上と同じく保証はない)
  • a pointer to Web content not included in the feed
    フィードに含まず、Web上のコンテンツを指し示す

Full or Partial Content
全文または一部

RSS 2.0 has a “description” element which is commonly used to contain either the full text of an entry or just a synopsis (sometimes in the same feed), and which sometimes is absent. There is no built-in way to signal whether the contents are complete.
RSS2.0には、「description(記述,叙述,説明の意)」要素があり、通常エントリーの全文または梗概・概要を(時に同じフィード内に)含みます。時に存在しない時もあります。RSS2.0には全文かどうか示す方法はありません。

Atom has separate “summary” and “content” elements. The summary is encouraged for accessibility reasons if the content is non-textual (e.g. audio) or non-local (i.e. identified by pointer).
Atomには「summary(要約)」と「content(内容)」要素に分かれており、要約はアクセシビリティのために利用が推奨されます(テキスト以外の音声だったり、異なる場所にある時に)。

Autodiscovery
自動発見

RSS autodiscovery has been implemented several times in different ways and has never been standardized. This is a common source of difficulty for non-technical users.
RSS自動発見(Autodiscovery)は異なる方法で幾度か実装され、一度も標準化された方法が確立されませんでした。技術に詳しくないユーザーにとっての壁となります。

Atom standardizes autodiscovery. Additionally, Atom feeds contain a “self” pointer, so a newsreader can auto-subscribe given only the contents of the feed, based on Web-standard dispatching techniques.
Atomは自動発見を標準化します。さらに、AtomフィードにはWeb標準のディスパッチ技術を利用し、「self」ポインタ(つまり自分自身を指し示すもの)があるので、アグリゲーター(RSSリーダー等)は、単体のフィードから配信元を特定できます。(訳者注:RSS・Atom検索エンジン等で二次的に配信されたフィードなどからオリジナルの配信元を特定できるという事です)

Extraction and Aggregation
抽出と集合

The only recognized form of RSS 2.0 is an <rss> document.
RSS2.0は、<rss>ドキュメント要素によってのみ認識されます。

Atom 1.0 allows standalone Atom Entry documents; these could be transferred using any network protocol, for example XMPP. Atom also has support for aggregated feeds, where entries from multiple different feeds are combined, with pointers back to the feed they came from.
Atom1.0はスタンドアローンの独立したAtomエントリードキュメントの存在が可能です。どんなネットワークプロトコル(例:XMPP)でも転送できます。またAtomでは、それぞれオリジナルの配信元情報を保持したままで、異なるフィードが集合した形のフィードもサポートします。

Differences of Degree
充実度

Extensibility
拡張性

RSS 2.0 is not in an XML namespace but may contain elements from other XML namespaces. There is no central place where one can find out about many popular extensions, such as dc:creator and content:encoded.
RSS2.0はXML名前空間のもとにありませんが、他の名前空間のXML要素を多数ふくんでいます。一般的な拡張(dc:creatorやcontent:encoded)を見つけることが出来るメインとなる場所がありません。

Atom 1.0 is in an XML namespace and may contain elements or attributes from other XML namespaces. There are specific guidelines on how to interpret extension elements. Additionally, there will be an IANA managed directory of extensions where anybody can register their namespaces. Finally, Atom 1.0 provides recommended extension points and guidance on how to interpret simple extensions.
Atom1.0はXML名前空間(http://www.w3.org/2005/Atom)のもとにあり、他のXML名前空間のもとにある要素を利用することができます。また拡張要素を解釈する特別のガイドラインもあります。さらに、IANAが管理する拡張用のディレクトリにて誰でも自分の名前空間を登録することが出来ます。最後に、Atom1.0はシンプルな拡張を解釈するための、推奨される拡張のガイダンスを提供します。

URIs
URI

RSS 2.0 does not specify the handling of relative URI references, and in practice they cannot be used in RSS feeds.
RSS2.0は相対URIに関して何も規定していません。実際の所はRSSフィード内では利用することはできません。

Atom 1.0 specifies use of the XML’s built-in xml:base attribute for allowing the use of relative references.
Atom1.0はXMLに内蔵されている、xml:base属性を用いて相対参照を可能にします。

Software Libraries (Parsing, Generating)
ソフトウェアライブラリー(解析、生成)

Both RSS 2.0 and Atom 1.0 feeds can be accessed via standard HTTP client libraries. Standard caching techniques work well and are encouraged. Template-driven creation of both formats is quite practical.
RSS2.0とAtom1.0は両者ともに標準的なHTTPクライアントライブラリを通して利用できます。標準的なキャッシング技術を利用できますし、利用が推奨されます。雛型を用いるタイプの生成はとても実用的です。

Libraries for processing RSS 2.0:
RSS2.0を処理するライブラリーは:

  • FeedParser
  • Rome

Libraries for processing Atom 1.0:
Atom1.0を処理するライブラリーは:

Language Tagging
言語タグ

For identification of the language used in feeds, RSS 2.0 has its own <language> element, while Atom uses XML’s built-in xml:lang attribute.
RSS2.0で言語を識別するために、<language> 要素があります。AtomはXMLにもともとある、xml:lang属性を用います。

Digital Signature/Encryption
電子署名と暗号化

RSS 2.0 can be encrypted or signed like any other web content, if treated as a bag of bits.
RSS2.0は他のWeb上のコンテンツと同様、暗号化または署名することが出来ます、ただし、より一般的なものとして扱う必要があります。

Rules for applying standard XML Encryption and XML Digital Signature on entries are included in Atom 1.0. Alternatively, the feed can be encrypted or signed, like RSS 2.0, as a bag of bits.
標準のXML暗号とXML電子署名を適用する方法が、Atomにはあります。または、RSS2.0と同じように他の一般のものと同様に暗号化したり署名したりすることもできます。

Authors
作者

RSS 2.0 provides the ability to specify email addresses for a feed’s “managingEditor” and “webMaster”, and for an item’s “author”. Some publishers prefer not to share email addresses, and use “dc:creator” from the dublin core extension instead.
RSS2.0にはフィードの編集者とウェブマスター、そしてアイテムの著者にそれぞれE-Mailアドレスを記述する機能があります。しかし配信者はE-mailアドレスを公開したくない場合もあり、ダブリンコアモジュールの「dc:creator」を代わりに利用します。

Atom 1.0 provides “author” and “contributor” elements at both the feed and entry level. These elements must contain a name, and also have optional email and URI sub-elements.
Atom1.0は「author(著者)」と「contributor(貢献者)」要素をフィードとエントリー毎に利用できます。これらの要素は名前を含み、E-mailアドレスとURIの子要素はオプションです。

Categories
カテゴリー

RSS 2.0 categories have two parts: label and domain.
RSS2.0のカテゴリーにはラベルとドメインの二つのパーツがあります。

Atom 1.0 categories have three, with the addition of optional human-readable title.
Atom1.0のカテゴリーは三つ、人間が読めるタイトルがオプションで追加されています。

Schema

The RSS 2.0 specification includes no schema.
RSS2.0の仕様にはスキーマは含まれていません。

Atom 1.0 includes a (non-normative) ISO-Standard RelaxNG schema, to support those who want to check the validity of data advertised as Atom 1.0. Other schema formats can be generated from the RelaxNG schema.
Atom1.0には、ISO標準のRelaxNGスキーマが提供され、Atom1.0の正当性をチェック出来るようになっています。その他のスキーマ形式は、RelaxNGから生成することができます。

Sample RSS and Atom Feeds
RSSとAtomフィードのサンプル

RSS 2.0


<?xml version="1.0" encoding="utf-8"?>
<rss version="2">
  <channel>

   <title>Example Feed</title>
   <description>Insert witty or insightful remark here</description>
   <link>http://example.org/</link>
   <lastBuildDate>Sat, 13 Dec 2003 18:30:02 GMT</lastBuildDate>
   <managingEditor>johndoe@example.com (John Doe)</managingEditor>

   <item>
     <title>Atom-Powered Robots Run Amok</title>
     <link>http://example.org/2003/12/13/atom03</link>
     <guid isPermaLink="false">urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a</guid>
     <pubDate>Sat, 13 Dec 2003 18:30:02 GMT</pubDate>
     <description>Some text.</description>
   </item>

  </channel>
</rss>

Atom 1.0


<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

 <title>Example Feed</title>
 <subtitle>Insert witty or insightful remark here</subtitle>
 <link href="http://example.org/"/>
 <updated>2003-12-13T18:30:02Z</updated>
 <author>
   <name>John Doe</name>
   <email>johndoe@example.com</email>
 </author>
 <id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</id>

 <entry>
   <title>Atom-Powered Robots Run Amok</title>
   <link href="http://example.org/2003/12/13/atom03"/>
   <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a</id>
   <updated>2003-12-13T18:30:02Z</updated>
   <summary>Some text.</summary>
 </entry>

</feed>

Element Comparison Table
要素比較表

Atom 1.0 defines 21 elements; RSS 2.0, 30. Most of the RSS 2.0 elements missing in Atom 1.0 are either those that were never widely implemented in practice, or the capabilities are provided in other ways.
Atom1.0は21の要素を定義し、RSS2.0は30です。RSS2.0にあってAtom1.0にないものは大体において一度も広く実際的に用いられたことのないもの、または別の方法で実現されるものです。

RSS 2.0 Atom 1.0 Comments
rss Vestigial in RSS
channel feed
title title
link link Atom defines an extensible family of “rel” values
description subtitle
language Atom uses standard “xml:lang” attribute
copyright rights
webMaster
managingEditor author or contributor
pubDate published (in entry) Atom has no feed-level equivalent
lastBuildDate (in channel) updated RSS has no item-level equivalent
category category
generator generator
docs
cloud
ttl
image logo Atom recommends 2:1 aspect ratio
icon As in “favicon.ico”
rating
textInput
skipHours
skipDays
item entry
author author
contributor
description summary and/or content depending on whether full content is provided
comments
enclosure <link rel=”enclosure”> in Atom
guid id
source <link rel=”via”> in Atom
source Container for feed-level metadata to support aggregation

原文
http://www.tbray.org/atom/RSS-and-Atom

訂正履歴

2005/07/18(YAMAMOTO氏のご指摘感謝)
ペイロード
Atomでは注意深くデザインし、コンテンツは以下のように明示的に指定できます。
Atom は注意深く設計されたペイロードコンテナを持ちます。(その)内容は次のうちいずれかひとつとして明示的にラベル付けされます。

ソフトウェアライブラリー(解析、生成)
標準的なHTTPクライアントライブラー
標準的なHTTPクライアントライブラリ

作者
要素フィードとエントリー毎に利用できます
要素をフィードとエントリー毎に利用できます

カテゴリー
RSS2.0はラベルとドメインの二つのパーツがあります。
RSS2.0のカテゴリーにはラベルとドメインの二つのパーツがあります。

人間が読む為のタイトル文字ラベルが追加されています。
人間が読めるタイトルがオプションで追加されています。

Previous article

Bloglist

Next article

HepCat Dev and Test