私は XML を扱うのは初めてですが、ひざに落とした必要がありました。(私にとっては) 通常の XML 形式が与えられています。タグ内にコロンがあります。
<THING1:things type="Container">
<PART1:Id type="Property">1234</PART1:Id>
<PART1:Name type="Property">The Name</PART1:Name>
</THING1:things>
これは大きなファイルで、これだけではありませんが、この形式が誰かに親しまれていることを願っています。この種の XML ドキュメントにアプローチする方法を知っている人はいますか?
テキストを解析する力ずくの方法を書きたいだけではありませんが、REXML や Hpricot を使用して前進することができないようで、これらの異常なタグが原因であると思われます。
私のルビーコード:
require 'hpricot'
xml = File.open( "myfile.xml" )
doc = Hpricot::XML( xml )
(doc/:things).each do |thg|
[ 'Id', 'Name' ].each do |el|
puts "#{el}: #{thg.at(el).innerHTML}"
end
end
...から持ち上げたばかりです:http://railstips.org/blog/archives/2006/12/09/parsing-xml-with-hpricot/
そして、ここからいくつかのことを理解できると思いましたが、このコードは何も返しません。エラーになりません。戻るだけです。