index.rdf 用 XSLT 設置

観測気球

収集物の記録書庫 a data archive of collection -- collectible toys

[要旨] ココログ向けの RSS 1.0 (index.rdf) 用 XSLT ファイルを書いてみました。
[キーワード] RSS1.0 XSLT スタイルシート

« うわっ | トップページ | RSS 2.0 の feed を開始しました »

2004.06.09

index.rdf 用 XSLT 設置

もっと早い時期に実行しようと思ってやっていなかった、ココログの標準的な RSS 1.0 用の XSLT ファイルを、 今頃になって作成、設置してみました。

これで

このサイトと連携する (RSS 1.0)

をクリックしたとき、XSLT対応ブラウザの場合、html 変換された結果が表示されるようになります。

参考までにソースを示しておきます。ココログプロで使う場合は、新しいインデックステンプレートを作成し、 下記のソースを貼り付けてください。ファイル名は rss.xsl 辺りが無難かな。

その後、RSS 1.0 のテンプレート(RSS Template)の2行目に

<?xml-stylesheet href="<$MTBlogURL$>rss.xsl" type="text/xsl" media="screen"?>

という行を追加すれば OK。

以下、ソースです。
(2004年6月10日追記: fumikaさんの指摘により、Mozilla や Firefox で parsing error になることが判明。error にならないよう対処しました。以下のソースは修正済みです[さらに再修正しました。Internet Explorer 6.0 と Firefox 0.8 で動作確認済み])

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
  xmlns="http://www.w3.org/1999/xhtml"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:rss="http://purl.org/rss/1.0/"
  xmlns:dc="http://purl.org/dc/elements/1.1/">

  <xsl:template match="/">
    <xsl:apply-templates select="rdf:RDF"/>
  </xsl:template>

  <xsl:template match="rdf:RDF">
    <html xml:lang="ja" lang="ja">
      <head>
        <title><xsl:value-of select="rss:channel/rss:title"/>
               -- headline via RSS/RDF</title>
        <style type="text/css">
          ul {margin-left:1.5em}
          li {margin-bottom:0.5em; list-style-type : square;}
          hr {color: #aaa; height: 3px; }
          .headDescription { margin-top: 0px; margin-bottom: 0px; }
          .headAuthor { margin-top: 0px; margin-bottom: 0px;
                        text-align: right;}
          .footer { margin-top: 0px; margin-bottom: 0px;
                    font-size: x-small; font-weight: bold; }
          .author { font-style: italic; }
        </style>
      </head>

      <body>
        <h1>
          <a>
            <xsl:attribute name="href">
            <xsl:value-of select="rss:channel/rss:link" /> 
            </xsl:attribute>
              <xsl:value-of select="rss:channel/rss:title"/>
          </a>
        </h1>

        <p class="headDescription">
        <xsl:value-of select="rss:channel/rss:description"/></p>
        <p class="headAuthor">by <span class="author">
        <xsl:value-of select="rss:channel/dc:creator"/></span></p>
        <hr/>
        <ul><xsl:apply-templates select="rss:item"/></ul>
        <hr/>
        <p class="footer">
          [
          RSS/RDF of 
          <a>
            <xsl:attribute name="href">
            <xsl:value-of select="rss:channel/rss:link" /> 
            </xsl:attribute>
              <xsl:value-of select="rss:channel/rss:title"/>
          </a>
          generated by `<a href="http://www.cocolog-nifty.com/">ココログ</a>'.
          ]
          </p>
      </body>
    </html>
  </xsl:template>

  <xsl:template match="rss:item">
    <li>
    <a>
    <xsl:attribute name="href">
    <xsl:value-of select="rss:link" /> 
    </xsl:attribute>
    <xsl:value-of select="rss:title"/>
    </a> (<xsl:value-of select="dc:date"/>)<br/><xsl:value-of select="rss:description"/></li>
  </xsl:template>
</xsl:stylesheet>

そのうち、Atom 0.3 用の XSLT ファイルも用意する予定です。

投稿者: tsupo 2004.06.09 午後 05:59 | 固定リンク | このエントリーをはてなブックマークに追加 | このエントリを del.icio.us に登録 このエントリの del.icio.us での登録状況 | このエントリを Buzzurl に追加このエントリの Buzzurl での登録状況 | このエントリをlivedoorクリップに登録 このエントリのlivedoorクリップでの登録状況 このエントリをlivedoorクリップに登録している人の数 | 酢鶏巡回中

楽天市場


RSS」カテゴリ内の最近の記事

ウェブログ・ココログ関連」カテゴリ内の最近の記事

プログラミング」カテゴリ内の最近の記事

品揃え豊富で安い!NTT-X Store


アマゾンわくわく探検隊

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/6737/739423

この記事へのトラックバック一覧です: index.rdf 用 XSLT 設置:

» RSS 0.9x,1.0,2.0,Atom 0.3すべてに対応したXSLT from HepCat Dev and Test
観測気球さんの所で、 index.rdf 用 XSLT 設置 というエントリーがありました。 ああぁこういう使い方もされているんだと、納得。 公開しても誰も使... 続きを読む

受信: 2004.06.09 午後 11:06

» ココログはindex.rdf用のXSLTを標準装備すべき from データバックアップメモ - extended -
観測気球: index.rdf 用 XSLT 設置で紹介されていたindex.rdf 用 XSLTの設置について。 このサイトと連携する (RSS 1.0) を... 続きを読む

受信: 2004.06.13 午後 06:39

» 観測気球: index.rdf 用 XSLT 設置 from 此処録ANNEX:ココログTIPS
観測気球: index.rdf 用 XSLT 設置 続きを読む

受信: 2004.08.16 午後 09:29

» XSLT設置しました。 from アルカディア空間鉄道 / Arcadia AIR Railway
一応ココログ、ムーバブルタイプ用ですが、myu-s 2.09b でも普通に使えてますよXSLTを設置しようかと思っていたら、観測気球さんが丁度使えそうなのを作ら... 続きを読む

受信: 2005.02.11 午後 08:49

» RSS用のXSLT from けにあメモ
RS... 続きを読む

受信: 2005.03.16 午後 02:35

» 「観測気球」のRSS/Atomフィードを一本化しました from 観測気球
今まで、RSS 1.0、RSS 2.0、Atom 0.3、Atom 1.0 の各形式で当ブログの更新情報を配信してきましたが、RSS 1.0 を概要のみの配信から概要 全文の配信に変更し、RSS 2.0、Atom 0.3 による配信を RSS 1.0 の配信に(リダイレクトすることで)一本化しました。... 続きを読む

受信: 2006.03.16 午前 04:47

コメント


残念ながらMozillaではエラーとなってしまいます。
「スタイルシートの読み込みエラー: XSLT スタイルシートのパースに失敗しました。」
Mozilla は 1.7RC2 です。どこがいけないのでしょうかね。

投稿者: fumika (2004.06.10 午前 09:35)


いま、Firefox 0.8 をインストールして試してみましたが、確かに “Error loading stylesheet: Parsing an XSLT stylesheet failed.”になりますね。どこがいけないんでしょう?

RSS 2.0 の方は問題なく parse できて、期待通りの表示ができています。基本的には、RSS 1.0 の方も 2.0 の方も同じようなことをやってるだけなんですが。

ちょっと調べてみます。

投稿者: tsupo (2004.06.10 午前 10:30)


exclude-result-prefixes="rdf rss dc"

を消したら parsing error は消えますが、今度は index.rdf をワードパッドで開こうとしますね。error が出るよりはましですが……

Internet Explorer では

exclude-result-prefixes="rdf rss dc"

はあってもなくても、期待通りの表示ができていますので、消す方向で修正したいと思います。

投稿者: tsupo (2004.06.10 午前 10:44)


rss.xsl を修正したものに入れ替えました。これで、Mozilla でも error は出なくなったと思います。

ついでに、Atom 0.3 用の XSLT も設置しました。
Firefox にて error が出ないことを確認済みです。

投稿者: tsupo (2004.06.10 午前 11:35)


素早い対応有り難うございます。RSS 2.0 とATOM 0.3 は表示されました。相変わらず RSS 1.0 はダメみたいです。Firefox 0.9 RC でも同様でした。

投稿者: fumika (2004.06.10 午前 11:43)


RSS 1.0 の XSLT の件ですが。全く同じ内容の XSLT を Movable Type 2.661 に設置したときは、error が出ません。なぜか、ココログだと error になりますね(Firefox 0.8)。

どうすればいいんだろう?

投稿者: tsupo (2004.06.10 午後 12:36)


やっとわかりました。

xmlns:xsl="http://www.w3.org/TR/WD-xsl"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

に変更したら、parsing error は出なくなりました。ちゃんと期待通り表示されます。Movable Type の方で動きが違ったのは、どうも .rdf に対するサーバ側の MIME-TYPE の設定の問題のようです。

投稿者: tsupo (2004.06.10 午後 01:18)

コメントを書く




※イタズラ防止のため、メールアドレスを入力しないと投稿できません。

次からのコメント入力の手間を省くために、名前やメールアドレスをcookieに記憶しますか?


URL を入力すると、その URL にリンクがはられます。
なお、メールアドレスは公開されません。ご安心ください。


ワード

ニッセン

fujisan.co.jp

楽天市場