That all sounds very strange. You'd probably be better off keeping your data in the browser as Ext.data.Nodes and only serializing it to XML when you absolutely have to. By keeping the data unserialized it'd make things like creating your tree much simpler.

Using XmlStore doesn't make sense either. Stores are flat, trees are not.

If you have an XML string then you could parse it using something like this: