あるXMLファイルをXSLスタイルシートを適用させて表示させることを考えています。
要素・属性の指定がいまいち上手くいかないため、
ご教授ください。
元データ(test.xml)と表示後の理想は下記になります。
test.xml
ーーーーーーーーーーーーーーーーー
<?xml version="1.0" encoding="Shift_JIS"?>
<report lang="ja">
<head>
<title>あああ</title>
<dateTime>1111111111111111</dateTime>
<type>いいい</type>
<editorialOffice>ううう</editorialOffice>
<publishingOffice>えええ</publishingOffice>
<additionalInfo>
<v k="おおお">222222222222222222</v>
</additionalInfo>
</head>
<body>
<warningHead>
<area code="3333" name="かかか">
<kind code="44" level="ききき" name="くくく" />
<kind code="55" level="けけけ" name="こここ" />
</area>
<area code="6666" name="さささ">
<kind code="77" level="ししし" name="すすす" />
</area>
<area code="8888" name="せせせせ">
<kind code="99" level="そそそ" name="たたた" />
</area>
<area code="aaaa" name="ちちち">
<kind code="bb" level="つつつ" name="ててて" />
</area>
<headline>とととととととととととととととと</headline>
</warningHead>
</body>
</report>
ーーーーーーーーーーーーーーーーー
出力後
===================
ううう
222222222222222222 いいい
かかか
くくく ききき
こここ けけけ
さささ
すすす ししし
せせせせ
たたた そそそ
ちちち
ててて つつつ
===================
No.2ベストアンサー
- 回答日時:
(書き方は色々あるけど)とりあえずこんな感じ?
細部微調整されたい
----------------------------------------------------------------
<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/report">
<html>
<head>
<title>タイトル</title>
</head>
<body>
<p align="center">適当なコメント</p>
<p>
<xsl:value-of select="head/editorialOffice" />
</p>
<p>
<xsl:value-of select="head/additionalInfo/v" />
<xsl:value-of select="head/type" />
</p>
<div>
<xsl:for-each select="body/warningHead/area">
<p>
<xsl:value-of select="@name" />
</p>
<p>
<xsl:for-each select="kind">
<xsl:value-of select="@name" /> <xsl:value-of select="@level" /><br />
</xsl:for-each>
</p>
</xsl:for-each>
</div>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
No.1
- 回答日時:
それで、なにがわからないんでしょうか?
この回答への補足
質問で記載しました中の、要素に該当する文字列“いいい”や“ううう”は下記のように記載すれば理想どおりに表示できます(※配置は調整が必要ですが)。わからないのは属性の文字列(例で記載している“222222222222222222”や“かかか”など)をどうやって『表示後』のように表示させるかです。
=============
<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="head">
<html>
<head>
<title>タイトル</title>
</head>
<body>
<p align="center">適当なコメント</p>
<p>
<xsl:value-of select="editorialOffice" />
</p>
<p>
<xsl:value-of select="publishingOffice" />
</p>
<p>
<xsl:value-of select="warningHead" />
</p>
<p>
<xsl:value-of select="additionalInfo" />
</p>
</xsl:template>
</body>
</html>
</xsl:stylesheet>
=============
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- PHP $_SESSIONについて教えて下さい。 2 2023/03/02 09:18
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP php ログイン 1 2022/11/01 00:24
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
XSLで、XMLの空タグを制御したい。
-
ノードの並び替え
-
タグの有無の判定
-
xslでの最小値、最大値の取得
-
xmlのテキストにリンクを張りた...
-
XMLのHTMLへの変換 (初心者)
-
CPUの考え方を教えてください ...
-
XMLで要素が記述された順番に意...
-
バッチファイルでテキストファ...
-
昔Winnyってありましたけど、あ...
-
あせんうぶり言語
-
VB6でXMLを作成しているのです...
-
SNMP リンクダウンとノードダ...
-
あるノードリストに、特定の名...
-
HTTPステータス 404 - There is...
-
コンテキストメニュークリック...
-
Listからのnull要素を削除方法は?
-
ルート要素ノードが2個ある場合?
-
ノードとは
-
このエラー、何とかなりません...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
XSLで、XMLの空タグを制御したい。
-
タグの有無の判定
-
XSLでXMLデータをタブ区切りデ...
-
XSLTで固定長データファイルを...
-
XSL中の改行、タブを無効にした...
-
xmlのテキストにリンクを張りた...
-
重複するものを消したい
-
XSLTがブラウザで表示されません。
-
うまく表示されない
-
文字列の取得
-
xsl:param要素をxsl:templateの...
-
value-ofの値を属性値とするには
-
XMLをXSLを使いHTMLに変換した...
-
XMLから指定テキストのみを抜き...
-
ある文字列を含むノードが存在...
-
VBAからxml・スタイルシートを...
-
xsl、xpath式の書き方について
-
XSLで特定のタグだけを出力する...
-
XSL内でJavaScriptを記述し、Ja...
-
XSLTで直下のテキストのみ取得...
おすすめ情報