Problema con XML Parser

Estoy usando el XML Parser disponible aquí: http://www.saygoodnight.com/2009/08/a-simple-quick-reusable-xml-parser-for-the-iphone/

Lo elegí porque simplemente no pude conseguir el habitual para trabajar con mi página web. Sin embargo, esto funciona, ya que en la console obtengo un resultado como:

Elemento: x-position Datos: 136 Parent: somepoint

Esto viene de un código como este en mi file de implementación principal:

[thisParser dumpRoot]; 

Mi pregunta es, ¿cómo puedo acceder al valor 136 de alguna manera? Sería genial si pudiera hacer object.x-position o algo así, pero no estoy seguro de cómo funcionaría con esta class. La class completa está disponible para download en el enlace mencionado anteriormente, y parece ser una buena alternativa.

Realmente agradecería cualquier ayuda, gracias.

La premisa del analizador parece muy directa. Cuando se hace el análisis, le proporcionará un NSArray de NSDictionaries.

Solo tienes que escribir otro método que lo use.

Algo como —

 -(NSString*) getElement:(NSString*)element fromArray:(NSArray *)array { for ( int i = 0 ; i < [array count] ; i++ ) { NSDictionary* thisDict = [array objectAtIndex:i]; if ( [element isEqualToString:[thisDict objectForKey:@"element"]] ) return [thisDict objectForKey:@"data"]; else { NSString *ret = [self getElement:element fromArray:[thisDict objectForKey:@"children"]]; if ( ret == nil ) continue; else return ret; } } return nil; } 

Pon un método de contenedor en tu SimpleParser.h

 -(NSString*)getParsedElement:(NSString *)elementName; 

Implemente en su .m así que–

 -(NSString *)getParsedElement:(NSString *)elementName { return [self getElement:elementName fromArray:theMainStack]; } 

Entonces puedes llamarlo así –

 [thisParser getParsedElement:@"x-position";