※ ChatGPTを利用し、要約された質問です(原文:XMLから、次の変換結果を得るようなXSLスタイルシートを作る)
XMLから変換結果を得るXSLスタイルシートの作り方
このQ&Aのポイント
XMLからXSLスタイルシートを使用して変換結果を得る方法について解説します。
XSLスタイルシートを作成する際には、試験番号を抜き出す、合格基準が70より大きい試験を抜き出す、試験番号のリストを出題数が多い順にソートするという具体的な方法を使用します。
これらの方法を使用することで、XMLから求める変換結果を得ることができます。
XMLから、次の変換結果を得るようなXSLスタイルシートを作る
<?xml version="1.0" encoding="Shift_JIS" ?>
<試験>
<タイトル>テスト</タイトル>
<情報>
<試験名 試験番号="01">国語</試験名>
<試験時間>60</試験時間>
<出題数>50</出題数>
<合格基準>80</合格基準>
</情報>
<情報>
<試験名 試験番号="02">数学</試験名>
<試験時間>80</試験時間>
<出題数>40</出題数>
<合格基準>75</合格基準>
</情報>
<情報>
<試験名 試験番号="03">英語</試験名>
<試験時間>100</試験時間>
<出題数>45</出題数>
<合格基準>70</合格基準>
</情報>
</試験>
上のXMLから、次の変換結果を得るようなXSLスタイルシートを作るにはどうすればいいんでしょうか。
1. 試験番号だけを抜き出して次のように列挙する。
<試験>
<試験番号>01</試験番号>
<試験番号>02</試験番号>
<試験番号>03</試験番号>
</試験>
2. 合格基準が70より大きい
試験を抜き出して、次のように列挙する
(「難易度」属性を追加)
※xsl:ifまたはxsl:chooseを用いよ
<試験 難易度="やや難">
<試験名>01</試験名>
<試験名>02</試験名>
</試験>
3. 1の試験番号のリストを出題数が多い順にソートして次のように列挙する
(「出題数」を属性として追加)
<試験>
<試験番号 出題数="50">01</試験番号>
<試験番号 出題数="45">03</試験番号>
<試験番号 出題数="40">02</試験番号>
</試験>
お礼
変換することができました。 ご丁寧にありがとうございました。