Tree Arrays: putting XML in nested arrays

Trevor DeVore lists at mangomultimedia.com
Thu Jan 1 09:45:58 EST 2009


On Dec 31, 2008, at 11:59 AM, David Bovill wrote:

>  One question about the data structure:
>
> [root]
>>   [@attributes]
>>       [attr1]
>>   [node]
>>       [node] = value
>
> This would mean that to extract the plain tree structure you would  
> have to:
>
> filter keys(someArray) without "@*"
>
> Isn't this unnecessarily slow?
> What do you think about:
>
>   - put treeArray ["_tree"]["root"]["node"][1] into nodeContents
>   - put treeArray ["_attribute"]["root"]["node"][1]["style"] into  
> nodeStyle
>   - put keys(treeArray ["_tree"]["root"]) into level1
>
> Out of interest what do you use them for?

I've never timed the overhead of filter but in my case I don't notice  
a speed hit and the structure isn't unnecessary. I use these  
conversion routines to facilitate interfacing with web services. As  
soon as I receive a response from the server I convert it to a  
Revolution array. If I need to send a request then I create an array,  
convert to XML and send it. Often I need to be able to extract an  
entire node and send it to a function for further processing. If the  
attributes were stored in a different branch in the array then it  
would complicate the code for doing this.

In general I've found I can code much more quickly and end up with  
more readable code when working with the new MD arrays as opposed to  
the revXML calls.

Regards,

-- 
Trevor DeVore
Blue Mango Learning Systems
www.bluemangolearning.com    -    www.screensteps.com



More information about the use-livecode mailing list