IE7 では RSS フィードの購読ができるようになり、IE8 では Web ページの一部を購読することができるようになったらしい。購読されているページ断片は Web スライスと呼ばれる。
フィードは新着情報がどんどんたまっていくので、ブラウザ UI 上での表示にはいろいろ課題があった。Web スライスでは最新の状態をひとつしか扱わないかわりに、ブックマークバー上でクリックするとスライスの最新の状態がすぐに表示される。とにかく自分のコンテンツを見てほしいコンテンツ提供者からすれば、地味に嬉しい機能なんじゃないだろうか。
以下、はてなダイアリー上でも使えるか、ちょっと試してみる。
仕様
- Web Slice Format Specification - Version 0.9
- http://msdn.microsoft.com/en-us/library/cc304073(VS.85).aspx
仕様上の最小構成
まずは最小構成で。
<div class="hslice" id="slice-simple"> <p class="entry-title">最小構成の Web スライス</p> </div>
最小構成の Web スライス
↑にマウスをポイントすると、緑の枠線で囲まれて、左端に Web スライスのアイコンが表示される。または、ツールバーにも同じアイコンが表示されているはず。どちらもクリックして購読することができる。
最小構成だとタイトルしかない。一応購読はできるけど、ブックマーク上でクリックした場合も元のページが直接開かれる。一応、entry-title の中身を変更すれば、更新されたものとして表示してくれる。
以下の条件を満たせば、仕様上最小構成の Web スライスができあがる。要素は別に div や p でなくてもいい。
- Web スライス全体を表す要素の class 属性に hslice が含まれる
- その要素には id 属性も指定されている
- 子要素の class 属性に entry-title が含まれる
事実上の最小構成
<div class="hslice" id="slice-simple2"> <p class="entry-title">最小構成の Web スライス 2</p> <div class="entry-content"> 本文 </div> </div>
最小構成の Web スライス 2
本文
本文を追加した。ブックマークバーに登録すると、クリックしたときに本文の内容がドロップダウン表示される。
はてなダイアリーでは、動的生成される内容を日記本文に含めることができないので、この日記左下のページビュー表示も Web スライスにしてみた。
本文を追加するには、hslice な要素の下に子要素を追加して、class 属性に entry-content を含めればいい。
更新間隔の指定
<div class="hslice" id="slice-simple-ttl"> <p class="entry-title">1 分置きにチェックしてほしい Web スライス</p> <div class="entry-content"> 本文 </div> この Web スライスは <span class="ttl">1</span> 分置きに更新されちゃうよ! </div>
1 分置きにチェックしてほしい Web スライス
本文!
スライスの内容が更新される間隔を指定してみた。分単位で指定することができる。
ただし、ここで 1 分を指定したからといって、1 分ごとにチェックしてくれるわけではない。IE8 で見ると、
- IE 全体での更新チェック間隔 ([インターネット オプション]→[コンテンツ]→[フィードと Web スライス] の [設定]→[既定のスケジュール])
- Web スライスごとの更新チェック間隔 (ブックマークバーで Web スライスを右クリックして [プロパティ]→[更新スケジュール])
という 2 箇所をどう設定したかで更新間隔が決まるようだ。最小でも 15 分なので、短い間隔で更新チェックしてもらうためには使えない。逆にある程度長い時間を指定して、「どうせ週に 1 回しか更新しないから、15 分置きとかでチェックされても困る」というような場合に使うことになりそう。
ユーザ側でも 15 分より短い時間を指定できないので、一定以上の即時性が必要な場合には Web スライスを使うのは難しそうだ。
その他のオプション
仕様書を見ると、他にもいくつかオプションがあって、有効期間とか別のソースを指定したりとかできるみたいだ。
何に使えるか
ダイアリーを使っている本人に対しては、あまりメリットがなさそう。日記本文なら自分が更新しているわけだし、その他に起きる変化 (トラックバックをもらったとか、コメントが書き込まれたとか) は、メールで通知してくれる機能が既にある。
閲覧者に対するサービスとしては、
- イベント告知をダイアリーで行ったときに、告知の文章を Web スライスにする
- 自分が運営している Web サービス等の情報をサイドバーに置いている場合に、その部分を Web スライスにする
- ダイアリーのコメント欄で閲覧者同士がやり取りしているのであれば、サイドバーに comment モジュール (最新のコメントを表示) を置き、その部分を Web スライスにする
とかかな?