Hi Jens, What I basically want is to transform the xml structure into an object structure. xml: <map id="gemRegioIndeling"> <subTitle></subTitle> <classes> <class1> <areaColor>0xEBDBAA</areaColor> <keyText><![CDATA[Noord-Nederland]]></keyText> <value>RA01</value> </class1> <class2> <areaColor>0xEBDBAA</areaColor> <keyText><![CDATA[Noord-Nederland]]></keyText> <value>RA01</value> </class2> <layers> <gemeenteNaam> <visible>false</visible> <title> <nl><![CDATA[gemeentenamen]]></nl> </title> </gemeenteNaam> </layers> </map>
flash object: map map.classes map.classes,class1 map.classes,class1.areaColor map.classes,class1.value ... map.classes,class2 map.classes,class2.areaColor map.classes,class2.value ... ... ... map.layers ... ... ... Things seem to work, but I want to traverse the properties tree of the flash object and can't get that part working. Thanks, Willem van den Goorbergh On 16 feb 2011, at 13:10, Jens Struwe wrote: > Having an example XML could be pretty useful. > > And, actually, I don't understand the problem. What should be the output? > Please hand over all necessary info required to be able to help you. > > Am 16.02.2011 12:43, schrieb Geografiek: >> Hi list, >> I posted this question a week ago on flash tiger, but never got an answer. >> So I try my luck here. >> >> I create an object and dynamically assign properties to it, values from >> xml-nodes. >> If an xml-node has child nodes the property assigned is an object and the >> values of the child nodes are assigned as properties to that object: >> >> private function createProperties(node:XML, container:*):void { >> for each (var childNode:XML in node.*) { >> if(childNode.children().length() == 0) { >> container[childNode.localName()] = null; >> } else if(childNode.children().length() == 1) { >> container[childNode.localName()] = childNode.*; >> } else { >> container[childNode.localName()] = new Object(); >> createProperties(childNode, container[childNode.localName()]); >> } >> } >> } >> >> Now I want to trace what properties are created with the following function: >> private function traceProperties(object:Object):void { >> for (var prop:* in object) { >> trace(prop + " is: " + object[prop]); >> traceProperties(prop); >> } >> if(object.hasOwnProperty("layers")) { >> trace("this.layers.gemeenteNaam.title is: " + >> this.layers.gemeenteNaam.title); >> trace("this.classes.class1.keyText is: " + >> this.classes.class1.keyText); >> } >> } >> >> This traces: >> source is: null >> note is: null >> subTitle is: null >> copyright is: Geografiek, 2011 >> mapType is: chorochromaat >> classes is: [object Object] >> key is: [object Object] >> layers is: [object Object] >> this.layers.gemeenteNaam.title is: gemeentenamen >> this.classes.class1.keyText is: Noord-Nederland >> >>> From this I gather that all properties are actually created on their >>> desired level (last 2 traced lines). >> But the function traceProperties() does not automatically catch all >> properties. At least not the properies inside the objects >> How do I check if an object has properties at all and how do I trace them? >> TIA >> Willem van den Goorbergh >> >> =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+= >> Geografiek is a Dutch, Utrecht-based map and chart design company. >> Willem van den Goorbergh can be contacted by telephone: (+31)30-2719512 or >> cell phone: (+31)6-26372378 >> or by fax: (+31)302719687 >> snail mail: Hooghiemstraplein 89 3514 AX UTRECHT >> Visit our website at: www.geografiek.nl >> twitter: @wvdgoorbergh >> =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+= >> >> >> >> >> >> _______________________________________________ >> Flashcoders mailing list >> Flashcoders@chattyfig.figleaf.com >> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders >> > > _______________________________________________ > Flashcoders mailing list > Flashcoders@chattyfig.figleaf.com > http://chattyfig.figleaf.com/mailman/listinfo/flashcoders =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+= Geografiek is a Dutch, Utrecht-based map and chart design company. Willem van den Goorbergh can be contacted by telephone: (+31)30-2719512 or cell phone: (+31)6-26372378 or by fax: (+31)302719687 snail mail: Hooghiemstraplein 89 3514 AX UTRECHT Visit our website at: www.geografiek.nl twitter: @wvdgoorbergh =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+= _______________________________________________ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders