I have been playing around with this Class and was wondering why you chose the specific array key value pair arrangement that you did.
I can understand that your method has arranged the array to have as much information as possible and accessible if you knew the information. But for simpler xml files a simple structure like this would be perfect
Manuel Lemos - 2012-01-22 02:45:59 - In reply to message 1 from eli orellana
Well, this approach was chosen because you can have a single index for all XML elements. There is no need for nested array structures.
You can obtain the index of an element by joining the path of the parent element a comma and the number of the child element among all elements of the parent. So the index of the root element is always "0" and the first child element is "0,0" and so on.
As for caching, I did not do any benchmarks but it is a matter of common sense to expect that parsing XML files is always slower than loading a cache file and unserialize it.