xml = %{
<aquarium>
<fish color="blue" size="small" />
<fish color="orange" size="large">
<fish color="green" size="small">
<fish color="red" size="tiny" />
</fish>
</fish>
<decoration type="castle" style="gaudy">
<algae color="green" />
</decoration>
</aquarium>}
require 'rexml/document'
doc = REXML::Document.new xml
p REXML::XPath.first(doc, "count(//fish[@size='large'][1]//*fish)")
|