Nevermind. [EMAIL PROTECTED] = "jason"; does the trick.
However what I learned was you can also ADD attributes this way. [EMAIL PROTECTED] = "just added"; yields... <node attribute="jason" attributeNEW="just added"/> :) --- In [email protected], "phipzkillah" <[EMAIL PROTECTED]> wrote: > > You saved my day! Thanks. > > Do you know if it's possible to edit attributes of any given xml node? > > <node attribute="phil"/> change to <node attribute="jason"/> > > > > --- In [email protected], "Jason Hawryluk" <jh@> wrote: > > > > I had mentioned it was un tested :) > > > > try the below (its tested), should get your on the right track, and > i'm sure > > it can be improved just a quick sample. > > > > <?xml version="1.0" encoding="utf-8"?> > > <mx:Application creationComplete="stripoutlevel()" > > xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> > > > > > > <mx:Script> > > <![CDATA[ > > > > public var myXML:XML = new XML("<root>" + > > "<level1>" + > > "<level2><level3></level3><level3></level3></level2>" + > > "<level2></level2>" + > > "</level1>" + > > "<level1>" + > > "<level2><level3></level3><level3></level3></level2>" + > > "</level1>" + > > "</root>"); > > > > > > public function stripoutlevel():void{ > > > > var tempLevel1:XML; > > for each (var item:XML in myXML..level2) { > > if (item.children().length() !=0){ > > tempLevel1 = item.parent(); > > tempLevel1.appendChild(item..level3.copy()); > > } > > delete myXML..level2[item.childIndex()]; > > } > > > > trace(myXML); > > > > > > } > > > > ]]> > > </mx:Script> > > > > > > > > </mx:Application> > > > > > > -----Message d'origine----- > > De : [email protected] > [mailto:[EMAIL PROTECTED] la > > part de phipzkillah > > Envoyé : mercredi 10 janvier 2007 23:01 > > À : [email protected] > > Objet : [flexcoders] Re: XML manipulation > > > > > > I can't seem to get that to work... > > > > --- In [email protected], "Jason Hawryluk" <jh@> wrote: > > > > > > Yes in that case you would, and before deleting the level 2 append > > level3 to > > > level 2's parent. > > > > > > > > > > > > Kind of (not at all tested) like this.. > > > > > > > > > > > > for each (var item:XML in myxml..level2) { > > > item.parent.append(item..level3); > > > > > > delete item; > > > > > > } > > > > > > > > > > > > you may actually need 2 loops one for the delete. If the above > technique > > > doesn't work try the copy() > > > > > > > > > > > > item.parent.append(item..level3.copy()); > > > > > > > > > > > > sorry no time to actually test anything here. > > > > > > > > > > > > jason > > > > > > > > > > > > > > > -----Message d'origine----- > > > De : [email protected] > > [mailto:[EMAIL PROTECTED] la > > > part de phipzkillah > > > Envoyé : mercredi 10 janvier 2007 21:58 > > > À : [email protected] > > > Objet : [flexcoders] Re: XML manipulation > > > > > > > > > That makes sense and I guess I should have rephrased my question. I > > > have multiple levels of level1 and I need to preserve the hierarchy. > > > I would assume you would need a for loop to do this. Any ideas? > > > > > > <level1> > > > <level2> > > > > > > <level3/> > > > <level3/> > > > <level3/> > > > > > > </level2> > > > </level1> > > > > > > <level1> > > > <level2> > > > > > > <level3/> > > > <level3/> > > > > > > </level2> > > > </level1> > > > > > > Transformed to... > > > > > > <level1> > > > > > > <level3/> > > > <level3/> > > > <level3/> > > > > > > </level1> > > > > > > <level1> > > > > > > <level3/> > > > <level3/> > > > > > > </level1> > > > --- In [email protected], "Jason Hawryluk" <jh@> wrote: > > > > > > > > Yes; basically > > > > > > > > Grab level3 into an xmllist var > > > > > > > > delete level 2 append level 3 to level 1. > > > > > > > > var tempxml:XMLList = myxml..level3; > > > > delete myxml.level2; > > > > myxml.append(tempxml); > > > > > > > > the above code is off the top of my head. May and may not work :) > > > > > > > > jason > > > > > > > > > > > > -----Message d'origine----- > > > > De : [email protected] > > [mailto:[EMAIL PROTECTED] la > > > > part de phipzkillah > > > > Envoyé : mercredi 10 janvier 2007 21:28 > > > > À : [email protected] > > > > Objet : [flexcoders] Re: XML manipulation > > > > > > > > > > > > Ben, > > > > > > > > Thanks for your help. It works great! > > > > > > > > I have another question that I'm not sure if you will be able to > > > > answer or not. If I have 3 levels of hierarchy in my XML and I > want > > > > to remove level 2 (but not its children - level 3) how would > you go > > > > about doing that? Eliminate level 2 while promoting level 3. > > > > > > > > <level1> > > > > <level2> > > > > > > > > <level3/> > > > > <level3/> > > > > <level3/> > > > > > > > > </level2> > > > > </level1> > > > > > > > > Transformed to... > > > > > > > > <level1> > > > > > > > > <level3/> > > > > <level3/> > > > > <level3/> > > > > > > > > </level1> > > > > > > > > --- In [email protected], "ben.clinkinbeard" > > > > <ben.clinkinbeard@> wrote: > > > > > > > > > > Wow, I had no idea deleting a set of nodes would be this hard. > > > > > Apparently this is how its done: > > > > > > > > > > for each(var node:XML in myXML..remove) > > > > > { > > > > > delete(myXML..remove[node.childIndex()]); > > > > > } > > > > > > > > > > HTH, > > > > > Ben > > > > > > > > > > > > > > > --- In [email protected], "phipzkillah" <pkrasko@> > wrote: > > > > > > > > > > > > How can I remove a selection of children from an xml tree. > > > > > > > > > > > > var myXML:XML = > > > > > > <root> > > > > > > <cluster> > > > > > > <remove> > > > > > > <garbage/> > > > > > > <garbage/> > > > > > > <garbage> > > > > > > <garbage1/> > > > > > > <garbage2/> > > > > > > <garbage3/> > > > > > > </garbage> > > > > > > </remove> > > > > > > <remove> > > > > > > <garbage> > > > > > > <garbage1/> > > > > > > <garbage2/> > > > > > > </garbage> > > > > > > <garbage/> > > > > > > </remove> > > > > > > > > > > > > <keep> > > > > > > <info/> > > > > > > <info/> > > > > > > <info> > > > > > > <goodStuff/> > > > > > > <goodStuff/> > > > > > > <goodStuff> > > > > > > <good1/> > > > > > > <good2/> > > > > > > </goodStuff> > > > > > > </info> > > > > > > </keep> > > > > > > </cluster> > > > > > > </root> > > > > > > > > > > > > ...................... > > > > > > > > > > > > Now I want to keep all the good stuff. > > > > > > > > > > > > I want the final xml tree to look like this: > > > > > > <root> > > > > > > <cluster> > > > > > > <keep> > > > > > > <info/> > > > > > > <info/> > > > > > > <info> > > > > > > <goodStuff/> > > > > > > <goodStuff/> > > > > > > <goodStuff> > > > > > > <good1/> > > > > > > <good2/> > > > > > > </goodStuff> > > > > > > </info> > > > > > > </keep> > > > > > > </cluster> > > > > > > </root> > > > > > > > > > > > > I tried doing this with no luck: > > > > > > > > > > > > myXML = delete myXML..remove; > > > > > > > > > > > > Any ideas why that doesn't work? > > > > > > > > > > > > > > > > > > > > >

