Ну в принципе это резонно, ЧтениеXML умеет только последовательно читать. Нужно завести еще ЗаписьXML и написать цикл, записывая всё, что вычитал. Или покурить ДокументDOM (кажется, так это называется) - вот там реально создается копия документа в памяти, как объекта. Правда, для больших XMLей это бо-бо.