XML/XSLについて質問です。
XMLのデータをmsxlsプログラムを使ってXSLフォーマットに合わせてCSVファイルに変更しようと思っています。
XMLファイルは以下の通りです。
<?xml version="1.0" encoding="UTF-8"?>
<Items>
<Item Type="Car" CommandType="Add">
<No>1</No>
<Title>WAGON R </Title>
<Car>
<option1>6</option1>
<option2>1</option2>
</Car>
<Year>2012</Year>
<Images>
<Image>i2.jpg</Image>
<Image>i3.jpg</Image>
<Image>i4.jpg</Image>
</Images>
</Item>
<Item Type="Car" CommandType="Add">
<No>2</ReferenceNo>
<Title>WAGON R </Title>
<Car>
<option1>4</option1>
<option2>5</option2>
</Car>
<Year>2008</Year>
<Images>
<Image>i5.jpg</Image>
<Image>i6.jpg</Image>
</Images>
</Item>
<No>, <Title>などグループ化していないものや、 <Car>の <option1>や <option2>は、フィールド名が違うのでCSVファイルに変更できるのですが、<Images>のようにグループ化してあり、<Image>のようにフィールド名が全て同じの場合、CSVファイルにしたときに横に並べることが出来ません。
これを以下のCSVに出来るXLSコマンドをお教え頂けますでしょうか。
当方まったくの素人ですので、ご理解ください。
No,Title,option1,option2,Year,Image,Image,Image,
宜しくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
exclude-result-prefixes="xsl">
<xsl:output
method="text"
media-type="text/comma-separated-values"
/>
<xsl:template match="/">
<xsl:apply-templates select="Items/Item"/>
</xsl:template>
<xsl:template match="Item">
<xsl:value-of select="No"/>
<xsl:text>,</xsl:text><xsl:value-of select="Title"/>
<xsl:text>,</xsl:text><xsl:value-of select="Car/option1"/>
<xsl:text>,</xsl:text><xsl:value-of select="Car/option2"/>
<xsl:text>,</xsl:text><xsl:value-of select="Year"/>
<xsl:apply-templates select="Images/Image"/>
<xsl:text>
</xsl:text>
</xsl:template>
<xsl:template match="Image">
<xsl:text>,</xsl:text><xsl:value-of select="."/>
</xsl:template>
</xsl:stylesheet>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP imageフォルダに、画像をリサイズして保存する時のファイル名を変更したい 1 2023/05/30 11:39
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- Perl RSSにdiv,ul classを付けたいのですがどのようにつけるのかわからないです 2 2022/03/28 01:53
- 英語 どうか教えてください。 1 2022/08/28 15:05
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS 【HTML】【CSS】【Swiper】 元の画像は横1200×縦600なのですが、実際のサイト上に反 5 2022/07/16 13:57
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- 哲学 マスクごっこ+同調圧力=精神病 2 2022/07/25 09:15
関連するカテゴリから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で直下のテキストのみ取得...
おすすめ情報