Mike, Thanks so much for taking the time for writing this tutorial. I see how this is effective. I attempted to do similar things with the XML however...
The Data Objects for JSON are much more simplistic structurally, and a little obtuse for reading visually. As I mentioned this simply is a model that I am working on to traverse XML. The content is not important. That I am able to traverse it is important. In a real world application of this I would be working from an XML delivery. It does not really make too much sense to convert the XML into JSON, though it may make sense to have JSON be an output method for the mechanism delivering the info (something to consider).... I will look into using an array for building the output, since I am passing the parent=>child variables I should be able to appendTo ("div") when I am done now. In a more complex layout I would worry about ID, but for now since there is only one I do not need to worry about it. The Location node was created to add a level of relationship to be traversed. You could look at it as a product with variations, there are Product attributes and Variant attributes all wrapped up in one little bundle. Definitely not a mapping app that I am working on, just the structure lent itself to my test, and also a number of tutorials seems to use locational info. I think that this XML parser could be more efficient in two ways. First in traverse methodology, there has to be some way to declare objects at the top and then process them. Additionally abstracting the process for setting attributes as variables is a place this could get better.