プログラミング基礎
II
第一回 (2006年
9月25日)
授業の目的と構成、XSLT の概要
http://www.sw.it.aoyama.ac.jp/2006/PB2/lecture1.html
Martin J. Dürst
duerst@it.aoyama.ac.jp
O 棟 529号室
テュールスト マーティン
ヤコブ
© 2006 Martin
J. Dürst 青山学院大学
目次
- プログラミング基礎 II (Dürst) について
- XSLT の概要と歴史
- XSLT の単純な例
- 演習
自己紹介
授業の位置づけ
青山スタンダード => テーマ別科目 => 領域H
(情報の技能)
- プログラミング基礎 I (前期; 馬渡先生): HTML,
ウェブページ
- プログラミング基礎 II (後期; 馬渡先生): Java
プログラム言語
- プログラミング基礎 I (前期; Dürst): XML
(文書・データ記録言語)
- プログラミング基礎 II (後期; Dürst): XSLT (XML
変換言語)
履修登録
履修登録の制限がありますが、まだ一部空きがある
原則として前期のプログラミング基礎 I (XML)
の履修が前提であるが
積極的な学生 (特に情報テクノロジーや理工学部) は
プログラミング基礎 II だけでも可能 (要復習)
成績評価方法
授業中のミニテストと演習課題: 50%-
レポート課題: 30%-
期末試験: 20%+
授業の進め方
- 資料配付とウェブ公開
- 資料は完全なものではない: 書き込みが必要
- 授業の後半は演習
- 宿題 (演習の延長) とミニテストがある
- 定期試験がある
授業の目的
前期:
- プログラミングで非常に大切なデータから入る
- XML を中心にデータの構造、扱え方を勉強する
後期:
- XSLT によってさらにデータの扱え方で強くなる
- 宣言型プログラミングで幅広い処理のプログラムが書ける
なぜ XSLT
- 宣言型プログラミング:
入力と出力だけ宣言して、やり方は計算機に任せる
(手続き型プログラミング:
計算機にやることを細かく指示する)
- XML のデータの処理にぴったり
- 幅広い使用 (XSLT 専用ハードウェアまである)
XSLT の応用例
- XML データから XML データへの変換
(企業間のデータ変換、集計、組み合わせなど)
- XML データから (X)HTML への変換
(サーバでの変換、ブラウザでの変換)
- XML データから XSL-FO への変換
(印刷業界)
- XML データから SVG 等への変換
- XSLT の変換
XSLT の単純な例
- XML データ入力ファイル: hello.xml
- 変換指定ファイル (XSLT): hello.xsl
- XSLT プロセサ:
msxsl
- 出力 (ファイルなど)
授業の日程
プログラミング基礎 II の日程
XSLT の歴史
- XML の開発の初期段階から XML
用のスタイルシート言語が必要と考えられた
- A Proposal for XSL
(1997年 Microsoft, Inso, ArborText からの W3C への提案) で XSLT
の原型
- XSL WG によって大幅な充実と変更、1999 年に勧告として完成
- 現在 Version 2.0 が XQuery とともに開発中
(勧告は来年ぐらいになりそう)
XSLT の仕様書
XSLT の製品
- Saxon (Michael Kay, Java)
- Xalan (Apache project,
Java/C++)
- Xt (James Clark,
Java)
- Microsoft 製品: msxsl, IE 内蔵機能
- Oracle など
今日の XSLT 要素: xsl:output
- 目的: 出力の細かい指定
- 場所: <xsl:transform> の直下、頭の方
- 内容: 空 (
EMPTY
)
- 主な属性:
method
: 出力の主な種類: xml
,
html
, text
encoding
: 出力の符号化: UTF-8
,
UTF-16
, Shift_JIS
など
doctype-public
: 外部 DTD
指定の「パブリック」部分
doctype-system
: 外部 DTD
指定の「システム」部分 (URI/IRI)
indent
: 出力の字下げ:
yes
/no
演習 1: msxsl のインストール
msxsl によって、 IE 内部機能の XSLT
プロセサがコマンドプロンプトから使用可能
msxsl ダウンロードページ
から msxsl.exe (25KB) をダウンロード
置く場所:
- 学校での演習: 演習用のフォルダ (今日だけ)
- 家のパソコン: C:\WINDOWS や C:\WINDOWS\system32
で、パスが通っている場所
そのほかに必要なソフト:
notepad2
みたいなテキストエディタ
- Opera, Firefox, IE などのブラウザ
演習 2: 出力の修正
hello.xsl
に <xsl:output>
を付けて、様々な文字符号化を使ってみる。コマンドプロンプトへの出力と
notepad2 で見る場合にはどの文字符号化がいいか。
- スタイルシートの修正で出力を HTML から XHTML
に変えてみる (前期の資料参照)。
演習 3: データの変更
- データファイル
hello.xml
内のデータを変更する。再度 XSLT で処理する。
- 新しいデータファイルを用意し、それも変換する。
次回のための準備
- 自分のパソコンに msxsl をインストールする
- 自分の周りに XSLT が使える例を見つける