次のような大きな XML ファイルがいくつかあります。
<Listings>
<Listing>
<Location>
<StreetAddress>123 Main St</StreetAddress>
<UnitNumber>2F</UnitNumber>
<City>Anytown</City>
<State>NY</State>
<Zip>10000</Zip>
</Location>
</Listing>
<!-- a bajillion more Listing nodes -->
</Listings>
異なるフレーバー間の主な違いは、<Listing>
ノードがあり、別のフレーバーがそれを呼び出すこと<property/>
です。子要素の入れ子もさまざまです。
似たようなエントリを含むがタグ名が異なる一連の大きな XML ファイルを解析するには、どのような方法がよいでしょうか? タグ名のマッピング テーブルを維持することは理にかなっていると思いますが、Ruby でこれらを効率的に反復するにはどうすればよいでしょうか?
<Listing>
要素を取得し、 などの子要素を解析して、StreetAddress
別の場所に書き出したいと思います。各ファイルには数千のリストが含まれており、100 MB 以上のものもあります。