http://www.sw.it.aoyama.ac.jp/2006/PB2/lecture7.html
O 棟 529号室
© 2006 Martin J. Dürst 青山学院大学
and (かつ)、or
(又は)、not() (ではない)+, -, *,
div) などの計算ができる<、>、<=、>=、=、!=
が使えるposition()
で現在のものの番号、last()
で最後のものの番号が取れるxsl:apply-templates@select と
xsl:template@match で使える提出: 11月19日 (日曜日) 22:00 までに Moodle に
.xsl のファイルを投稿
先週の演習で作った出力 (もしくは今日出された正解) を色々な条件によって分かりやすくする。
例えば:
mode が使える)XML の構造を分かりやすいように HTML として出力する
例: Root:
<books>
<book>
<book>XPath 内で次のようにノードの種類を選別できる:
*: 要素 (ノードテスト)comment(): コメントノード (ノードテスト)processing-instruction(): 処理命令のノード
(ノードテスト)text(): テキストノード (ノードテスト)namespace::*: 名前空間ノード
(軸とノードテスト)@*: 属性 (軸とノードテスト)| で条件を結ぶselect='authors/person|translators/person'select='(authors|translators)/person'xsl:apply-templates@select でも
xsl:template@match でも使える<xsl:value-of>
要素で出力xsl:value-of@select
の値によって出力されるもの:| ノードの種類 | name() |
. |
|---|---|---|
| 要素 | 要素名 | - |
| 属性 | 属性名 | 属性値 |
| テキスト | - | テキスト |
| コメント | - | コメント |
| 処理命令 | 命令の「名前」 | 残り |
| 名前空間 | 接頭辞 | URI |
<div><ul>、<li>)<xsl:transform>)
から始まる<xsl:template match='/'><html>、<head>、<title>、<style>、<body>、<h1>
など) を書く<xsl:apply-templates> を使う30分程度のミニテスト
提出不要であるが、ミニテストの練習にもなる
一般の XML ファイルを分かりやすいように (X)HTML などに変換する。全てのノードの種類 (ルートを含め7種) に対応させる。
ヒント:
@class を使うsomeXML.xml、
作りかけの変換ファイルの例: showXMLsimple.xsl,
その出力: showXMLsimple.html、完成の出力の一例:
showXML.html