古い記事
ランダムジャンプ
新しい記事
私が最近「くっつき手法」(JavaScript feed) と呼んでいるものは、どう
やら Client Side Include (CSI) というものだそうな。早速調査。
画像
(↑くっつき手法とは?:Shibuya.pm[2003-10-18-3]で使った資料より)
(ref. くっつきシリーズ <http://ta2o.net/tools/#kuttuki>)

■Client Side Includes - GHP
<http://ghp.dwakn.com/content/csi/>
Describes a solution to implement client side includes using
JavaScript. This is intended for servers that do not support
server side scripting.
SSI との比較から始まって、短く簡単にまとまっています。最初に読みま
しょう。

■CLIENT-SIDE INCLUDES
<http://www.moock.org/webdesign/javascript/client-side-include/>
フォームに HTML を入力すると、それを CSI 用の JavaScript に変換し
てくれます。

■Client-Side Includes: Faster Access to Dynamic Web Content
<http://www.research.att.com/~xiao/csi/>
Client-Side Inclusion (CSI) is a technology developed at AT&T
Research, which allows dynamic Web page assembly from individual
fragments at the Web browser. By reusing cached copies of
unchanged fragments, CSI reduces the amount of data sent from
the Web site to the browser and thereby lowers the download time
of the page, especially for narrowband clients.
これが CSI の本家・元祖かな?論文・資料が置いてあったのでざっと読
んでみました。

Michael Rabinovich, Zhen Xiao, Fred Douglis, and Chuck
Kalmanek. Moving Edge Side Includes to the Real Edge -- the
Clients. In Proceedings of the 4th USENIX Symposium on Internet
Technologies and Systems, March 2003.

Client-Side Includes: Faster Access to Dynamic Web Content. Chuck
Kalmanek, Michael Rabinovich, and Zhen Xiao. AT&T Innovation
Forum, October 2002.

私の理解 (以下、大幅に書き換えられる可能性があります):
Edge-Side Includes (ESI) <http://www.w3.org/TR/esi-lang> という規
格が W3C に提案されている。 Web ページに他のファイルを取り込むため
のもの。
記述例: <esi:include src="http://www.example.com/hee.xml">
ESI は (サーバとクライアントの間にある) edge server が esi 要素で
指定された他のファイルを取ってきて、最終的なページを組み立てる、と
いう流れを仮定。ブラウザはこの組み立て済みページを取ってきて表示す
る。一方、CSI は組み立て作業をブラウザ自身が行う。つまり、CSI =
「複数のページ構成要素をばらばらに取ってきてクライアント側で組み立
てて表示する」。

これらの資料で紹介されている方法は以下のようなもの。

- ブラウザが JavaScript/ActiveX を使って以下の全て行なう。
  1. まず Web ページを取ってくる
  2. それをパーズしてそこに含まれている ESI 要素を個別に取ってくる
  3. ページを組み立てて表示する

「CSI で ESI をより効率的に!」というのが目的のようだ。よって、
「コンテンツ自体を document.write で記述した JavaScript ファイル」
を取ってくる、という例は出てこない。