スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。



  

Atom、RSSの最小単位の実装方法

ブログ等では、サービスにAtom、RSSの仕組みが実装されているため、RSSの仕様について理解せずに運用できるが、自分で実装する際の方法についてまとめてみた。

RSSは大きく分けて以下の二種類があり、それぞれ実装方法が違う。
・RSS1.0(RDF Site Summary) 初期型のRSSを正統に進化させたもので、他に比べて詳細に内容を記述することができる
・RSS2.0(Really Simple Syndication) 初期型RSSを簡略化させたもの

Atomは仕様のまとまらないRSSを定義しなおしたものである。



1.RSS1.0

以下が最小単位の実装内容

ファイル名:rss1.xml

<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF
 xmlns="http://purl.org/rss/1.0/"
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:content="http://purl.org/rss/1.0/modules/content/"
 xml:lang="ja">
 
 <channel rdf:about="RSSを設置するURL">
  <title>サイト名</title>
  <link>サイトのURL</link>
  <description>サイト内容</description>
  <dc:date>RSSの最終更新日時(※記事追加時、日付けを変更)</dc:date>
  <items>
   <rdf:Seq>
    (※記事追加時、下記と同じようなrdfタグを挿入)
    <rdf:li rdf:resource="更新内容(2)のURL"/>
    <rdf:li rdf:resource="更新内容(1)のURL"/>
   </rdf:Seq>
  </items>
 </channel>

 (※記事追加時、下記と同じようなitemタグで囲んだ情報を挿入)

 <item rdf:about="更新内容(2)のURL">
  <title>更新内容(2)のタイトル</title>
  <link>更新内容(2)のURL</link>
  <description><![CDATA[更新内容(2)の内容]]></description>
  <dc:date>T更新内容(2)の更新日時</dc:date>
 </item>

 <item rdf:about="更新内容(1)のURL">
  <title>更新内容(1)のタイトル</title>
  <link>更新内容(1)のURL</link>
  <description><![CDATA[更新内容(1)の内容]]></description>
  <dc:date>更新内容(1)の更新日時</dc:date>
 </item>

</rdf:RDF>


更新時に修正する部分:
内容を更新した際には、(※)の箇所を修正・追加していく。

RSS1.0の特徴:
初期RSSが正統進化したものであり、RDFを利用することができる。



2.RSS2.0

以下が最小単位の実装内容

ファイル名:rss2.xml

<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
 <channel>
  <title>サイトの名前</title>
  <link>サイトのURL</link>
  <description>サイトの内容</description>
  <language>ja</language>
  <copyright>コピーライト</copyright>
  <pubDate>RSSの最終更新日時(※記事追加時、日付けを変更)</pubDate>

  (※記事追加時、下記と同じようなitemタグで囲んだ情報を挿入)  

  <item>
   <title>更新内容(2)のタイトル</title>
   <link>更新内容(2)のURL</link>
   <description>更新内容(2)の内容</description>
   <pubDate>更新内容(2)の更新日時</pubDate>
  </item>

  <item>
   <title>更新内容(1)のタイトル</title>
   <link>更新内容(1)のURL</link>
   <description>更新内容(1)の内容</description>
   <pubDate>更新内容(1)の更新日時</pubDate>
  </item>

 </channel>
</rss>


更新時に修正する部分:
内容を更新した際には、(※)の箇所を修正・追加していく。

RSS2.0の特徴:
初期RSSを簡易化したバージョンで、RDFを使用せずにxmlだけで記述ができる。



3.Atom

以下が最小単位の実装内容

ファイル名:Atom.xml

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

 <title>サイトの名前</title>
 <subtitle>サイトの内容</subtitle>
 <link href="サイトのURL"/>
 <updated>RSSの最終更新日時(※記事追加時、日付けを変更)</updated>
 
  <name>サイトの製作者名</name>
  <email>サイト製作者のEメールアドレス</email>
 </author>
 <id>サイトごとのユニークなID</id>

 (※記事追加時、下記と同じようなentryタグで囲んだ情報を挿入)

 <entry>
  <title>更新内容(2)のタイトル</title>
  <link href="更新内容(2)のURL"/>
  <id>更新内容(2)のユニークなID</id>
  <updated>更新内容(2)の更新日時</updated>
  <summary>更新内容(2)の内容</summary>
 </entry>

 <entry>
  <title>更新内容(1)のタイトル</title>
  <link href="更新内容(1)のURL"/>
  <id>更新内容(1)のユニークなID</id>
  <updated>更新内容(1)の更新日時</updated>
  <summary>更新内容(1)の内容</summary>
 </entry>

</feed>


更新時に修正する部分:
内容を更新した際には、(※)の箇所を修正・追加していく。

Atomの特徴:
ユニークなIDは、ドメインや時刻を組み合わせて、自分で作成する。
仕様が分かりやすく定義されている。
誰でも自由に拡張が可能。



以下にそれぞれのサンプルコードを用意した。
RSS1.0
RSS2.0
Atom
(RSSリーダー機能のあるブラウザからアクセスした場合、全て同じように見える)
スポンサーサイト



  

テーマ : web制作
ジャンル : コンピュータ

コメント

非公開コメント

検索フォーム
プロフィール

サトリヒロシ

Author:サトリヒロシ
ビジネスを重視した企画を支援したいエンジニアが、何かを書こうとするブログです。

サトリ潜伏先
サトリ倉庫

WEB関連の技術で調査リクエストがあればご連絡ください。

カレンダー
04 | 2017/05 | 06
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -
カテゴリ
最新記事
最新コメント
最新トラックバック
月別アーカイブ
RSSリンクの表示
リンク
QRコード
QRコード
FC2カウンター
スポンサードリンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。