SharePoint 2007 の RSS 機能(1)
MOSS には、全てのコンテンツ(リスト/ライブラリ)について、自動的に RSS を生成する機能が標準で搭載されています。実のところ、これまで、あまり注目していなかった機能なのですが…。折角の機能ですから、何かに仕えないものかと、その仕様を確認してみました。
まず肝心の RSS フィードの取得方法ですが、リスト・ライブラリの [操作]→[RSSフィードを表示] で、フィードの URL が開きます。
こんな感じのURLになります。
https:/server/_layouts/listfeed.aspx?List=%7B3DC9AB57%2D5BE8%2D4037%2DA7B2%2D23331E721358%7D
なお、RSS 機能を有効にするには、まずサーバの管理画面で RSS 機能を有効にして、さらにサイトコレクションの機能で RSS を有効にする必要があります。
RSS らしからぬ画面ですが、ソースはきちんと XML 形式になっています。
RSS 機能の設定は、リストの設定→[通信/RSS設定] から行います。
基本設定項目はこんな感じ。テキストを256文字で切ることができますが、残念ながら文字数を指定することは出来ません。タイトルと説明はみたまんまですね。
イメージのURLを指定できますが、なんというか…デフォルト値が相対パスです。必要なら絶対パスに書き換えましょう。
リストに存在する列を指定して、フィードに追加することができます。タイトル、作成者、作成日時は自動的にフィードに含まれるので、選択する意味はありません。また * がついている項目も、別に必須ではありません。
ちなみに * について、説明にはこう書いてあるのですが…
─嘘です(笑)
マークアップされるのは、タイトル、作成者、作成日時 です。
また、添付ファイルは選択できませんが、自動的に絶対パスがフィードに含まれます。(逆に、含まないことは出来ません)
更に、ちょっとアレなのが、ここで選択された列は、全て <description></description> の中に放り込まれる、というやや乱暴な仕様です。独自のタグを設定できたりとか、せめて <category></category>くらいは使わせて欲しかったところです。
最後に、「最大アイテム数」と「最大日数」を指定します。デフォルトでは 25件、7日です。設定内容は文字通りなのですが…。どうも、「最大日数」の設定が正しく動いている気がしません。昨年作成したリストアイテムのフィードが残っていたり。と思えばその1月前のフィードが消えていたり。正直、どういう法則というか動作をしているのかよく判りません。
更に、この RSS フィードは、更新日時の降順でソートされます。しかし、フィード内に表示されるは作成日時と作成者、というイマイチな仕様。※IE8 で見ると作成日時でソートされているように見えますが、ソースを見ると、しっかり更新日時順になっています。
このせいか、アイテムに更新があった場合の解釈が、RSSリーダにより異なります。
a. 更新を「新しいアイテム」として認識する
b. 何事もなかったかのように過去のアイテムを更新する。
─どちらが正しい挙動なのかは、よく判りません。
ドキュメントライブラリの場合も、基本はリストと同様です。しかし、フォルダの作成・更新までフィードに登録されてしまう点がイマイチ。
また、ライブラリの RSS には、リストには無い設定項目があります。
「アイテムの添付ファイルをフィードに含める 」
「RSS アイテムとファイルを直接リンクさせる 」
どちらもデフォルト値は「いいえ」です。
…っていうか、アイテムじゃなくてファイルなんですけどね。それを言い始めると、この設定画面自体がなんかオカシイんですが。
で、この二つの設定ですが、「RSS アイテムとファイルを直接リンクさせる 」は「はい」を推奨。フィードのリンク先が、ファイルの絶対URLになります。「いいえ」の場合、DispForm.aspx?ID=x にリンクされます。ファイルのプロパティ表示画面です。結局、ここからファイルを開く訳で、ひと手間増えます。
しかし、この設定を「はい」にしていると、何故かフォルダのリンク先が、http://defaulturi/ という謎の URL に置き換わります…。これは、何かの仕様ミスとしか思えません。
「アイテムの添付ファイルをフィードに含める 」もよく判らない設定です。このオプションを「はい」にすると、フィードに
ディスカッションリストの場合、返答アイテムにはタイトルが無い訳ですが、フィード上では親アイテムのタイトルを自動でひきつぐ仕様になっています。
予定表リストでも RSS機能は有効ですが、フィードに <enclosure url=””> タグで、 owssvr.dll という謎のファイルへのリンクが貼られます。
あと、RSS フィード上でも、ACL(アクセス権限設定)は有効です。閲覧以上の権限が無い、アイテムやファイルについては、フィードにも含まれません。
続きます。
SharePoint 2007 の RSS 機能(2)
AGENT: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)
こんにちわ
先日、運用管理ノウハウの本購入して熟読中です。
わかりやすくて助かってます…。
このエントリは次回に続いて…はまだないのですねw
AGENT: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; YTB720; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; CIBA)
こんにちわ。
お恥ずかしい。少しでもお役に立てれば嬉しいです。
このRSSの件、すっかり失念しておりました(汗)
折角ご指摘いただきましたので、頑張って思い出します(笑)