対象読者
その前にいくつかの注意点があります。
この記事を理解するにあたってSVGを知っておくのは当然として、XMLの仕様についてもある程度知っておく必要があります。
使い方
では、具体的に何に何をするのかを実際のコードを例にしながら解説します。例となるファイルは/example以下のディレクトリにあります。
ハローワールド /example/helloworld
名前がtemplate.xhtmlのテンプレートとして使うXHTMLファイルと、名前がcontent.xhtmlのコンテンツデータとして使うXHTMLファイルがあり、また、リポジトリのトップに名前がframexs.xslのframexsフレームワークとしての処理を記述したXSLファイルがあります。
XHTMLについて実際のコード見ていきます。まずはコンテンツデータを見てみましょう。
]]>
基本的にはSVG1.2ですが普通とは違うところもあります。
]]>
この部分はProcessing Instruction(処理命令)です。コードの意味はこの記述があるXMLにスタイルシートを設定するというものです。XHTMLもXMLなのでlink要素の代わりにこの記述方法でスタイルシートを指定することもできます。この指定方法ではスタイルシートの種類にはCSSとXSLのどちらかを指定できます。またこの場合はXMLプロローグにコードを記述しておく必要があります。 ここではframexsのXSLファイルをスタイルシートとして指定しています。 そのために、このファイルをウェブサーバーを通してブラウザで読み込むと、そのままパースしてレンダリングを行うのではなく、その前にまずXSLT処理を行おうとします。 XMLの仕様のうちの一つである処理命令に関してはframexsを使う上である程度知っておく必要があります。
]]>
この処理命令はframexsが解釈する記述がされています。このframexs.skeletonという記述はテンプレートXHTMLを使うという宣言であり、そのためのファイルの場所としてtemplate.xhtmlを指定しています。framexsはXSLT処理時にこのファイルをXSLTプロセッサーにロードさせます。このコードのようにプロローグ部の処理命令で先頭にframexs.がついたものをframexsコマンドと呼びます。
次にテンプレートを見ていきます。]]>
]]>