Смысл xml в том что если тег даже один и тот же но в разных иерархиях, то он разным считается.
То же самое что реквизит регион в Контрагента и реквизит регион у Банка. И мы бы считали сколько реквизитов "Регион" упоминается в каком то списке Банки+контрагенты. Но это ведь разные реквизиты. Они даже типа могут быть разного.
Чтение XML есть потоковая весчь.
В этом то ее и смысл, ибо XML избыточен по своей сути и никаких 2 гектар памяти не хватит засосать обычную выгрузку обмена за пару суток между базами (к примеру).
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.