Ok, thanks, but dont think i explained my self very well Basically, i have a properties list which stores a object with a name and a value, which are both strings. name is the attribute name, so in ur example it will be 'id' and the value will be '1'. so knowing that information i should be able to filter the xml using them values.
var itemList : XMLList = <items> <item id='1' quantity='2' type='fruit'> <item id='2' quantity='5' type='veg'> <item id='3' quantity='6' type='veg'> <item id='4' quantity='7' type='fruit'> </items>; var propertyList : ArrayCollection = new ArrayCollection(); propertyList.addItem({name:'type' , value:'fruit'}); var filterList : XMLList = itemList.item; for each(var property : Object in propertyList) { filterList = filterList.(attribute(property.name) == property.value); } //Output of filterList <item id='1' quantity='2' type='fruit'> <item id='4' quantity='7' type='fruit'> So thats the basic idea but always get that error, looking in the API it suggests it is possible to filter like that. Well hope this gives a better idea of what the problem is. Thank You Stephen Chan --- In flexcoders@yahoogroups.com, Preetham Hegde <preethamheg...@...> wrote: > > what are name and value to _propertiesList ? Is it elements or attributes? > If it is element then accessing is correct, there is some other problem. > If it is attribute then should access like this > pr...@name or pr...@value > > To understand difference between element and attribute here is a example > > > * public function callFunc():void{ > > var total2:Number = 0; > for each (var prop:XML in myXML.item) > { > total2 += pr...@quantity * prop.price; > } > > Alert.show(total2.toString()); > > > } > > > public var myXML:XML = > <order> > <item id='1' quantity='2'> > <menuName>burger</menuName> > <price>3.95</price> > </item> > <item id='2' quantity='2'> > <menuName>fries</menuName> > <price>1.45</price> > </item> > </order>;* > > > > On Mon, Aug 17, 2009 at 4:57 PM, fatmanchan2009 <fatmanchan2...@...>wrote: > > > > > > > Hello > > > > Can anyone figure out this problem im currently having, and explain the > > reasons and cause of this proplem. > > > > I have an XML file of track data with a bunch of attributes > > > > <track> > > <item uniqueTrackId="1000000" albumId="12" trackId="1" genreId="13" > > artistId="6584"> > > ... > > </track> > > > > i use this code to execute the filtering on the data, the name is artistId > > and the value is 6584, so the data should come back with all the artists > > with artistId 6584. > > > > var filterData : XMLList = _trackData.item; > > > > for each (var prop : Object in _propertiesList) > > { > > filterData = filterData.(attribute(prop.name) == prop.value); > > } > > > > but i keep getting this exception, when its applyin the filter, so within > > the for loop > > > > TypeError: Error #1006: value is not a function. > > > > So anyone that can figure what the problem is, would be a big help Thank > > You > > > > Stephen Chan > > > > > > > > > > -- > Regards, > Preetham Hegde > > > _______________________________________________ > If you only have a hammer, you tend to see every problem as a nail. >