タグ

XPathに関するhatehate331000のブックマーク (7)

  • 名前空間で区別したノードを、XPath式一発で取得する - おくち、くわんくわん

    ちょっと前に仕事で考えることがあったので、 忘れないうちに書いておく //*[local-name()='hoge' and namespace-uri()='fuga'] これで <?xml version='1.0'?> <root> : <ns:hoge xmlns:ns='fuga'> : </ns:hoge> : </root> とかってXMLから真ん中のノードが取れる(ハズ) 詳細は、気が向いたら週末にでも追記する。 (追記) 何が問題だったか たいていのXPathライブラリは、実際のXPath実行の前に、 “これから使うXPath式では、名前空間fugaを表すプレフィックスとして「fugapx」を使いますよ”みたいな準備をする。 で、そのあと //fugapx:hoge みたいな式を実行してノードを取得する。なのでプログラム的には1行でとりにくい。 しかもこの中の「fugap

    名前空間で区別したノードを、XPath式一発で取得する - おくち、くわんくわん
  • 名前空間を指定してXPathを実行する。(XmlNamespaceManager, XmlReader, XPathDocument, XPathNavigator, Evaluate) - いろいろ備忘録日記

    XPathを用いたデータの操作方法については、以前 http://d.hatena.ne.jp/gsf_zero1/20070117/p2 や http://d.hatena.ne.jp/gsf_zero1/20060830/p1 にて、記述しましたが この時記述したのは、該当のXMLデータがデフォルトの名前空間に属している場合の処理の方法です。 実際のXMLデータは、xmlnsに特定の名前空間を指定しているパターンも結構多いです。 この場合は、XPathを使用する際に、名前空間をマッピングする作業が発生します。 名前空間のマッピングに使用するクラスは、以下のクラスとなります。 System.Xml.XmlNamespaceManager 以下のようにして利用します。 // // XmlNamespaceManagerを作成。 // コンストラクタに渡すのは、XmlReaderやXPath

    名前空間を指定してXPathを実行する。(XmlNamespaceManager, XmlReader, XPathDocument, XPathNavigator, Evaluate) - いろいろ備忘録日記
  • XPathの書き方の基本

    XSLTでXMLデータの構造変換を記述するためには、XMLデータ中の特定の要素や属性を指定するための言語が必要になります。その用途のためXSLTとともにW3C勧告となったのが、XPath(XML Path Language)です。XSLTのスタイルシートを作成するうえでXPathは必須の知識ですので、今回はXPathによる初歩的な指定方法を述べることにします。

    XPathの書き方の基本
  • XML XPath

    XPathとは、XML文章の中の要素や属性の位置を指定するための言語です。(XPath= XML Path Language) XPathは、XML文章をツリーとしてモデル化し、各ノード(要素や属性)への位置を指定できるようにします。また、指定したノードに対して、条件判定を行ったり、文字列計算をしたり、計算結果を使用したりすることも可能です。 XPathは、XMLのツリー構造をモデル化し、その中で属性や要素の位置を特定します。 例えば、以下のようなXMLのツリー構造があったとします。 このツリーを、XPathは以下のノードに分類し管理します。(ノードとは扱うデータというような意味) ルートノード 要素ノード 属性ノード 詳しくは後述しますが、name要素を特定したい場合は、"/members/member/name"というような形で特定します。これは、ルートノード+要素ノード+要素ノード+

  • 第3回 XPathの応用-PostgreSQLのXPath機能を利用したデータ照会の実際 | Let's POSTGRES

    これをcsv形式のデータとすると以下のようになります(1行分だけ記します)。 1076,石川順子,開発一課,23,ishikawa@abcd.com,"<work-record> <career> <period> <start>2008-09-01</start> <end/> </period> <content>亀ロジスティクス様社内ネットワーク運用保守</content> <role>運用メンバー</role> </career> </work-record>" ところで、データの格納の際、これまではINSERT文の中に直接データとなる文字列を埋め込んでいましたが、今回は数が多いので、csv形式で用意しておいたファイルから一括挿入できるCOPYコマンドを使ってみましょう。ここで読み込むファイルはPostgreSQLデータベースのユーザーがアクセス許可されている必要があります。Win

  • XPath (XML Path Language) とは

    XPath(XML Path Language)とは、XMLで記述されたデータの問い合わせ言語です。SQLのSELECTのように、条件を指定してXMLデータを取得することができます。この記事では、XPathの使い方をご紹介します。 XPathとは XMLデータはツリーとしてモデル化でき、また、要素や属性などXMLデータを構成する各パーツは、ツリーを構成するノードとしてモデル化できます。XPathのデータモデルでは、XMLデータを以下の7種類のノードから構成されるツリーと考えます。 ルートノード(最上位ノード) 要素ノード(XMLの要素を表すノード) テキストノード(開始タグと終了タグで挟まれた文字列データ) 属性ノード(要素内で指定された属性をあらわすノード) 名前空間ノード(名前空間を表すノード) 処理命令ノード(処理命令を表すノード) コメントノード(コメントを表すノード) XMLの取

  • XPath Cheat Sheet

    配列は0からではなく1から始まる([1]から) 先頭が / から始まれば絶対パス、そうでなければ相対パス、//なら全要素が対象。 ()で評価順序を考慮する

  • 1