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