印刷用表示へ切り替え 通常表示へ切り替え 更新履歴を表示 更新履歴を隠す
LinuxMovableType RDF のメディアタイプ

RSS (RDF Site Summary) は、サイトの概要をメタデータとして記述する XML フォーマットで、サーバからは XML または RDF のデータ形式として送出される。メディアタイプとしては、application/rdf+xml とするのが正式だが、当面は application/xml とするのが現実的なようだ。

■ ■ ■

RSS に関しては、RSS(RDF Site Summary)によるサイト情報の要約と公開 で詳しく解説されている。このサイトの注意書きに、

〔注意〕サイト要約のフォーマットRSSとメタデータ記述の枠組みRDFを混同しないでください。RSS⊂RDFでもRSS⊃RDFでも、ましてRSS=RDFでもありません。

とある。ややこしい。RDF は「枠組み」であるが、RSSは「実装」である。そこに混乱の元があるというのだ。

RDF (Resource Description Framework) は、サイトの情報を記述するための単なる枠組みであり、RSS はこの取り決めに基づく実装だと考えることができる。RSS は XML 形式で記述されるので、.xml という拡張子が適切だと思われるが、.rdf という拡張子も存在する。MovableType のデフォルトでは、RSS 1.0 が index.rdf、RSS 2.0 が index.xml というファイル名になっている。RSS 2.0 が 1.0 の発展形でなく、必ずしもいいものではないというところが微妙なところ(RSSの歴史〔補足〕)。RFC3023 では、RDF のメディアタイプを application/rdf+xml としているが、現在の多くのブラウザでは、この形式のデータを受け取るときにダウンロードしようとしてしまう。ちょっとしたメモ - RDFのメディアタイプ によれば、当面は application/xml とするのが現実的なようである。

Apache のコンフィグレーション (VineLinux では /etc/httpd/conf/httpd.conf) で、RDF や XML の MIME タイプを指定していない場合、Feed Validator for Atom and RSS でチェックすると、「Valid (Conglatulations!)」にはなるが、次のような警告が表示される。

This feed is valid, but may cause problems for some users. We recommend fixing these problems.

  • Feeds should not be served with the "text/plain" media type
  • Your feed appears to be encoded as "EUC-JP", but your server is reporting "US-ASCII"

エラーではないが、なんとかしたい。これは httpd.conf にメディアタイプを追加することでクリアできる。

# RSS Feeds
AddType application/xml .rdf
AddType application/xml .xml
Posted by n at 2004-10-09 23:53 | Edit | Comments (3) | Trackback(0)
Trackbacks

  • 「手違いで複数トラックバックを送ってしまった!」という場合でも気にしないでください (重複分はこちらで勝手に削除させていただきます)
  • タイムアウトエラーは,こちらのサーバの処理能力不足が原因です (詳細は トラックバック送信時のエラー をご覧ください)
  • トラックバックする記事には,この記事へのリンクを含めてください(詳細は 迷惑トラックバック対策 をご覧ください)
Comments

こんにちは。

最近RDFにスタイルシートを追加したんですが、.htaccessにAddType application/xml .rdfを追加してもfirefoxでちゃんと表示されませんでした。
いろいろ試した結果、AddType text/xml .rdfを追加することで上手く表示させることが出来ました。

難しいことは良く分かりませんけど、これでよかったのでしょうか・・・(汗

Posted by: zRyu at November 10, 2004 22:39

メディアタイプを "text/xml" にするという流儀もあるようです。しかし、"text/xml" にすると文書内での文字コード指定は無視されてしまいます(RFC2376)。そこで、AddType でメディアタイプを指定するときに、同時に文字コードの指定もしてしまうのがよいようです。例えば、RDF の文字コードが EUC なら、
AddType "text/xml; charset=EUC-JP" .rdf
とするのがお勧めです。

Posted by: n at November 12, 2004 00:48

アドバイスありがとうございます。
早速サーバに反映してみました。

では。

Posted by: zRyu at November 15, 2004 17:56
Post a comment
  • 電子メールアドレスは必須ですが,表示されません (気になる場合は「メールアドレスのような」文字列でもOKです)
  • URL を入力した場合はリンクが張られます
  • コメント欄内ではタグは使えません
  • コメント欄内に URL を記入した場合は自動的にリンクに変換されます
  • コメント欄内の改行はそのまま改行となります
  • 「Confirmation Code」に表示されている数字を入力してください (迷惑コメント対策です)


(必須, 表示されます)


(必須, 表示されません)


(任意, リンクされます)


Confirmation Code (必須)


Remember info (R)?