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?
> >   > > > >
> >   > > >
> >   > >
> >   >
> >
>


Reply via email to