- 締切済み
XMLの解析に関して
XMLの解析を行いたいのですが、 ちょっと困っています。 最初はSelectNodesメソッドを利用し 複数情報を取り出そうと考えていたのですが、 下記の様な場合に対応出来なくなってしまいました。 <A1> <A2><A2> </A1> <B1> <B2></B2> <B2></B2> <B2></B2> <B2></B2> </B1> <A1> <A2><A2> </A1> <B1> <B2></B2> <B2></B2> <B2></B2> <B2></B2> </B1> A1とB1がセットにて2件の情報が返ってきているのですが、 同じタグ名な為、 SelectNodes("B1")で取り出した際に、 どれが1個目のA1の情報で どれが2個目のA1の情報か判断付きませんでした。 (*B1の数は常に変動します) 何かうまい方法ないでしょうか。 詳しい方いましたらどうぞよろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
関連するQ&A
- CGIでXML解析したいです
この質問はCGIで投稿したのですがこちらの方が適切ですかね? XML形式のクエリーを送信させてそれをPERLで解析したいのですがうまくいきません。 <LOGIN USERNAME="hanako" PASSWORD="875" /> 上記形式のXML(将来的には情報を付加)なんですがFLASHから生成させています。 環境変数など調べてみたのですがメソッドはPOST,CONTENT_LENGTHもしっかり入っています。 どこに送られてきたデータがあるのでしょうか、またXMLを解析するモジュールでもあるのでしょうか(XML::DOM,PARSER?使用方法が乏しいです)、よろしくお願いします。
- 締切済み
- Perl
- VB2005でXMLデータから複数ある要素の数を読み取る方法
VB2005、XMLの初心者です。 VB2005でXMLデータを読み取って、DBに登録するプログラムを作っています。 XMLデータから項目を読み取るのは、下記のようにパスを指定してできることが分りました。 CreatorInfodNode = xmlDoc.SelectNodes("/Mml/Body/Module", nsmgr1) ID = CreatorInfodNode(0).InnerText.Trim しかし、下記のような同じ要素が複数あるXMLデータの場合、全ての要素を解析してDBに登録したいのですが、要素の数はどうやって読み取れば良いのでしょうか。ちなみに、要素の数は可変です。 上記のパスを指定する場合、要素のタグが同じなら全てパスは同じになり、最初の要素を取ってくるようですが、複数ある場合は全てを解析したいです。 <Mml> <Body> <Module>A</Module> <Module>B</Module> <Module>C</Module> </Body> </Mml> 何かヒントになるようなことでも良いので、皆様の知恵をお借りできれば幸いです。 よろしくお願い致します。
- ベストアンサー
- Visual Basic
- VB.NETでテキストファイルの解析についてヒントをいただけないでしょ
VB.NETでテキストファイルの解析についてヒントをいただけないでしょうか? 通常のテキストファイルなのですが中身は 「<div class=・・・」といったようなタグが記述されています。 特定のクラス名を見つけたらそのデータをテキストボックスに反映させたいのですがテキストファイルのタグを解析するメソッドなどが見つかりません。xmlではないのでその解析は使えないと思うのですが・・・どのようにやるのがいいものでしょうか?
- ベストアンサー
- Visual Basic
- XMLからXML
こんにちわ。 以下のやり方がわからなく、困っています。 XSLTを使って以下のようなXML→XMLを行いたいのですが。 変更前: <a> <b> <c>abc</c> <d>def</d> </b> </a> 変更後: <b> <c>abc</c> <d>def</d> </b> ようするに、指定したタグ以下のXML構造をそのまま取り出したいのです。 <xsl:template match="/a"> <xsl:apply-templates select="b"/> </xsl:template> だと中身のabc defしか取れません。 <c>とか<d>は、時によって変わる場合、どのようなXSLT を書けばよいのでしょうか? 申し訳ありませんが、わかる方がいれば教えてください。
- 締切済み
- XML
- XMLでの表示について
XML初心者です。 XMLに下記のような並びでタグが構成されているときに XSLで上から順に読み込み前回と重複する内容の時は その値を表示しないようにしたいのです。XSLにどう書いて制御すれば よいか途方にくれています。ご存知の方ご教授頂きたく思います。 よろしくお願いします。 XMLでのタグ構成 IE上で表示させたい結果 <a1>001</a1> 001 <a1>002</a1> 002 <a1>002</a1> <a1>002</a1> <a1>001</a1>
- 締切済み
- XML
- 2つのxmlファイルを利用したリレーションシップ(?)に関して
2つのxmlファイルを使用し、リレーションシップ(?)を作成してDataGridViewに表示させようとしているのですがうまくいきません。ご教授お願いいたします。 xmlファイル1: <タグ1> <タグ2 属性21="a1" 属性22="a2"></タグ2> <タグ2 属性21="b1" 属性22="b2"></タグ2> <タグ2 属性21="c1" 属性22="c2"></タグ2> </タグ1> xmlファイル2: <タグ1> <タグ2 属性21="a1" 属性22="d2"></タグ2> <タグ2 属性21="b1" 属性22="e2"></タグ2> <タグ2 属性21="c1" 属性22="f2"></タグ2> </タグ1> 表示させたい内容: | d2 | a2 | | e2 | b2 | | f2 | c2 |
- 締切済み
- Visual Basic
- XMLタグ情報取得
PHPにxmlファイルのタグ情報を利用するシステムを構築したいのですが、調べてもよく解らなかったため質問させて頂きます。 PHPは勉強経験があるため解るのですがXMLはまったくの初心者です。 システムは以下の流れです。 システムA(PHP) <?php $i; if($iがシステムBで使用されているか確認){ 使用されている場合$iで処理 }else{ 使用されていない場合xmlファイルからタグ情報取得 for($iの親タグ<B>を取得){ if(<$i><$j><$k>のどれかがシステムBで使用されていないか?){ $jが使用されていた場合、システムAの$iと、システムBの$jは同じ使用用途のデータと判断し処理 } } } xmlファイル <?xml version="1.0" encoding="EUC-JP"?> <A> <B> <$i></$i><$j></$j><$k></$k> </B> </A> このようなシステムを構築したいのでご教授お願いします。 違うシステム同士でデータを利用する際、同じ使用用途でもシステムによって名称が異なる場合にも対応できるシステムを課題としています。 また、DOM方式を利用した方法だと助かります。 環境はXP、PHP5、Apache2.0です
- ベストアンサー
- PHP
- XMLを動的に読む
ワードプレスなどで行われているPHP⇔MYSQLのような動きを、javascript⇔XMLでやりたいです。 具体的に言うと、 index.htmlでボタンAを押されるとdata.xmlのA情報がindex.htmlに表示される index.htmlでボタンBを押されるとdata.xmlのB情報がindex.htmlに表示される というものです。 Ajaxなど調べているのですが、なかなかいい情報が見つかりません。 てってきたいのはテキスト情報だけですので、なるべくシンプルで簡単なコードが知りたいのですが、複雑な部分が多くて困っています。 簡単なやり方が紹介されているサイトや簡単なサンプルを見せてもらえるととても助かります。
- ベストアンサー
- JavaScript
- XMLとかで出来ますか?
XMLもXSLもXSLTも何も知らないので出来るのかわかりませんが。 Aに1・2という情報?属性?を付けて Bに2・3を付けて Cに1を付けて 1が付いているのはA・C 2が付いているのはA・B 3が付いているのはB というように表示するにはどうすればいいでしょう?
- 締切済み
- XML
- VB2005でXMLから複数ある要素の項目を取得する方法
VB2005、XMLの初心者です。 下記XMLの「ヤマダタロウ」を抽出するのがうまくいきません。 <Module> <Body> <Item Code= A TableId=001> <Name>ヤマダタロウ</Name> </Item> <Item Code= B TableId=001> <Name>山田太郎</Name> </Item> </Body> </Module> 上記XMLがmsxmlDocとして引数で下記プロシージャに渡されるのですが、selectNodesではなぜか取得できません。 どこか間違っているでしょうか。 Private Sub prvParseXML(Byval msxmlDoc As MSXML2.DOMDocument) Dim NodeList As MSXML2.IXMLDOMNodeList NodeList = msxmlDoc.selectNodes("/Module/Body/Item[@Code='A'][@tableId='001']/Name") End Sub 何かヒントになるようなことでも良いので、皆様の知恵をお借りできれば幸いです。 よろしくお願い致します。
- ベストアンサー
- Visual Basic
お礼
御回答ありがとうございます。 SelectNodes("A1|B1")でList作成して for文で回しタグ名確認しながら情報取り出そうと思ったのですが、 >preceding-sibling::A1[position()=1]/A2/text() 今回のケースに合うか調べてみます。 サンプルありがとうございます。 自分も激しく同意です・・・ ありがとうございました。