プログラミング基礎 II

第九回 (2007年12月17日)

事前計算: 変数の使い方

http://www.sw.it.aoyama.ac.jp/2007/PB2/lecture9.html

Martin J. Dürst

duerst@it.aoyama.ac.jp

O 棟 529号室

AGU

© 2006-7 Martin J. Dürst 青山学院大学

今日の予定

これからの予定

(全体の予定)

先回の演習・宿題

一般の XML ファイルを分かりやすいように (X)HTML などに変換する。全てのノードの種類 (ルートを含め7種) に対応させる。

ヒント:

複数の文書の組み合わせ

XSLT での複数の文書の取り扱い

document() 関数

名前空間 (復習)

名前空間の例

order.xml (接頭辞無し):

<order xmlns='http://www.sw.it.aoyama.ac.jp/2006/PB2/order'> ...
  <books>
    <book isbn='4-641-16210-7' number='1'/> ...

books.xml (接頭辞無し):

<books>
  <book><data><title>...

orders.xsl (少なくとも片方は接頭辞つき):

<xsl:transform xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
   xmlns:o='http://www.sw.it.aoyama.ac.jp/2006/PB2/order' version='1.0'>
  ... <xsl:apply-templates select='o:order'/>
  ... <xsl:template match='title'>

変数の作り方

変数の使い方

XSLT のデータ型

(data types)

XSLT の変数、XPath の式などに数種類がある:

データ型の間の変換はある程度自動的

<xsl:value-of> 要素

演習

提出: 12月23日 (日曜日) 22:00 までに Moodle に投稿

order.xml の注文を (X)HTML で分かりやすいように変更する。注文票に本の題名、著者、値段などをbooks.xml から引用し、本ごとの小計 (冊の数 * 単価) を計算し、表で出力する。

条件: 同じ処理を繰り返さないように、そして XSLT が読みやすいように、変数を一つだけではなく三つぐらい使ってください。

ヒント: 途中までの変換ファイル: myorders.xsl