|
PHOTO:
茅ヶ崎の波 surf |
海の写真 ocean |
携帯 待ち受け画像 |
レストラン shop |
色々 etc
TEXT: ネット技術 net | 自然,エネルギー,写真,旅 Eco | 映画 movie | 本 book |
G-ToolsはAmazonのWEBサービス、XSLT機能を活用しているのですが、G-Toolsを作る過程で、XSLの書き方などを試行錯誤したので、何回かに分けてまとめてみます。
まずは何はともあれ、AmazonのWEBサービスを使えるようにするために、下記の記事を参考にしてください。
AmazonのXML Webサービス(REST)はXSLを書くだけでもかなり使える
RESTってなに?と興味をもった方はこちらの記事に概要が書いてあります。
ザックリ言ってしまうと、AmazonのWEBサービスのURLにパラメーターをつけてHTTPアクセスすると、XMLで答えを返してくれる、という程度の理解でもよいのかと。SOAPなどに比べると、答えをもらうまでの手続きがはるかに簡単ということですね。
ただし答えをAmazonからもらって、XMLをそのまま表示しても、見に来た人は「なんじゃこれ?」ということになるので、普通のホームページとして表示するためにHTMLフォーマットに変換してあげる必要があるわけです。そのXMLをHTMLに変換するために使うのが、XSLT機能です。
XSLとXSLTの用語の違いが分かりにくいのですが、@ITのXML用語辞典を読むと理解できます。XML文章のスタイルを定義する目的で、XSL (Extensible Stylesheet Language) という名前ではじまった仕様が、その中でもスタイル変換部分が重要だったのでXSLT (XSL Transformations) というかたちで分離独立した、とのことです。
XSLT機能を利用するけれども、元々はXSLという一つの仕様の一部であるために、XSLT文章も拡張子は .xsl のまま、区別せず扱うことになっているのでしょうか。
というわけで、Amazonのドキュメントにも書いてある通り、REST/XSLT機能というのが正しい表現のようです(僕も今までXSLとXSLTを、いい加減に混同して書いていましたが)。
XMLファイル内の「<item>というタグ要素は、○○のように変換したい」というように”パターン”と”テンプレート”を組み合わせた、複数のテンプレート・ルールが記述されてXSLT文章となります。
自分の表示したいHTMLを得るためには、変換ルールを記述したXSLT文章と、Amazonの商品情報が書かれたXMLを一緒に、XSLプロセッサーという、実際に変換をしてくれるプログラムに渡す必要があります。Amazonは親切にも、このXSLプロセッサーも用意してくれているので、WEBサービスを使う側の僕らは「ここ(XSLT文章)に書かれている通りにやっといて」と文章を渡すだけでいいわけです(下の図を参照)。自分オリジナルなサービスっぽく見せるためには、ちょこっとスクリプトを付け足す必要はあるのですが、XSLT文章を書くだけで、色々と試すことができる手軽さをAmazonは提供してくれているのですね。
次回は、具体的なXSLTの書き方をちょっとまとめてみたいと思います。
Amazon アソシエイト解説 2:WEBサービスからXSLTで簡単なHTMLを作成へ続く
AmazonのWEBサービス概要図

何時も丁寧な解説をありがとうございます。しかし未だ60%位しか理解していないようです。また読み返させていただきます。
ありがとうございました。