
xml文書1
<?xml version="1.0">
<customer0>
<name>aaaa</name>
<tel>1234</tel>
</customer0>
<customer1>
<name>bbbb</name>
<tel>2345</tel>
</customer1>
xml文書2
<?xml version="1.0">
<customer>
<name>aaaa</name>
<tel>1234</tel>
</customer>
<customer>
<name>bbbb</name>
<tel>2345</tel>
</customer>
xml文書1のcustomerの子要素(name,tel)を全て取得したいです。
ルートノードから辿って行くのではなく、ダイレクトにアクセスしたいです。
xPath式で子要素を全て取り出すことはできますでしょうか?
xml文書2であれば「//customer」で可能だと思うんですが。
宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
ルートノードがない地点でXML文書として認められない。
何かの書き間違いであると信じて要望を予測してみる。少なくとも何かのヒントにはなるはず
==============Q4374721-1.xml================
<?xml version="1.0" encoding="UTF-8"?>
<customers>
<customer0>
<name>aaaa</name>
<tel>1234</tel>
</customer0>
<customer1>
<name>bbbb</name>
<tel>2345</tel>
</customer1>
</customers>
==============Q4374721-1.xsl================
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes" /> <!-- お好みで -->
<!--
templateは後から書いたものが優先されるので,
ルート要素のcustomers要素は下のテンプレートに引っかかる
数字をチェックしているわけではなく単にcustomerで始まる要素をマッチさせているだけなので
customersABCのような要素でもヒットする。
まぁその辺はXPathのsubstring関数とか,number関数に通してNaNかチェックしたり
andで条件つなげればどうにでもなるでしょ?
-->
<xsl:template match="//*[starts-with(local-name(),'customer') and namespace-uri()='']">
<item>
<xsl:value-of select="name" />
</item>
</xsl:template>
<xsl:template match="/*">
<list>
<xsl:apply-templates />
</list>
</xsl:template>
</xsl:stylesheet>
==============Q4374721-2.xml(結果)================
<?xml version="1.0" encoding="UTF-16"?>
<list>
<item>aaaa</item>
<item>bbbb</item>
</list>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
XMLを作成してもタグしか表示さ...
-
論文に載せるグラフを作成したい
-
PCでSteamのサイト内で検索する...
-
ChatGPT excel
-
iPhoneでXMLファイルを開くには...
-
reaper音声ファイルについて
-
XMLからcsvへの変換
-
XMLサイトマップの登録方法がわ...
-
タモリさんを信じられますか?
-
自分のHTMLサイトでRSSを読み込...
-
ゲーミングPCに入っているAlris...
-
【BAT(バッチ)ファイル】Web...
-
XMLとは何ですか?
-
特殊文字の検索方法
-
フォルダー内検索
-
公文書のxmlファイルの開き方が...
-
Webページに関するさまざまな情...
-
head要素
-
ヤフー知恵袋みたいなサイトを...
-
メールアドレスについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Listからのnull要素を削除方法は?
-
ホームページ作成でのリンクの...
-
getElementsByNameの要素数が取...
-
どうあがいてもIE6のエンコード...
-
XPathでできるか確認
-
2つの行動の違い
-
element of surprise
-
VB2005でXMLデータから複数ある...
-
hana no namae osiete kudasai.
-
head要素
-
Webページに関するさまざまな情...
-
MFCでのタブコントロールに...
-
wikipediaに記述されている関係...
-
【C# LINQ】 MAX値と一緒に・・・
-
双方向リストで…、
-
ASP.NETでツリービューを作成し...
-
atom エディタについて
-
XMLSchemaの記述法で質問です。
-
XML:連番要素の全ての子要素にx...
-
親子関係にない要素を限定して...
おすすめ情報