>Why was these design chosen?
I'm always a bit cautious about answering questions of historical fact, I'm not a historian and it's very easy for conjectures to turn into urban myths.
There have been attempts to design transformation languages that process a document sequentially, for example STX and XStream. Generally they are harder to use or have more limited functionality. Doing something like building an index or a table of contents when you haven't got the ability to navigate anywhere you like in the source tree isn't easy.
Some people also argue that a good optimizer should be able to detect those XSLT stylesheets where serial processing is possible and avoid building the tree. Personally, I'm sceptical.
Michael Kay
http://www.saxonica.com/
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference