It seems like there is memory leak in this piece of code.I am using this to parse XML data.
- (void) parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI  qualifiedName:(NSString *)qualifiedName 
 attributes:(NSDictionary *)attributeDict
 {
 currentElement = [[elementName copy]autorelease];
if ([elementName isEqualToString:@"value1"]) {
    self.currentString =[NSMutableString string];
}
else if ([elementName isEqualToString:@"value2"]) {
    self.currentStringName =[NSMutableString string];
}
}   
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
if ([currentElement isEqualToString:@"value1"]) {
    [currentString appendString:string];
}
else if ([currentElement isEqualToString:@"value2"]) {
    [currentStringName appendString:string];
}
}
 - (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName 
  namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
 {
if ([elementName isEqualToString:@"value1"]) {
    }
   else if ([elementName isEqualToString:@"value2"])
   {
   }