iphone ios xpath xml-parsing gdata

iphone - GDataXMLDocument nodesForXPath devuelve un error



ios xml-parsing (1)

Finalmente obtuve la solución relacionada con mi pregunta ... y aquí está la respuesta para eso.

GDataXMLDocument * doc = [[GDataXMLDocument alloc] initWithData: [NSData dataWithContentsOfFile: path] codificación: NSUTF8StringEncoding error: NULL];

NSDictionary *myNS = [NSDictionary dictionaryWithObjectsAndKeys: @"urn:schemas-microsoft-com:xml-analysis:rowset", @"xmlns", @"http://www.w3.org/2001/XMLSchema", @"xsd", @"urn:saw-sql",@"saw-sql", nil]; NSArray *tempArray = [doc nodesForXPath:@"//xmlns:RS/xsd:schema/xsd:complexType/xsd:sequence/xsd:element" namespaces:myNS error:nil]; NSMutableArray *keyArray = [[NSMutableArray alloc]initWithCapacity:0]; for(GDataXMLElement *columns in tempArray) { GDataXMLNode *xmlElement = [columns attributeForName:@"saw-sql:columnHeading"]; // GDataXMLNode* xmlElement = [[[element2 elementsForName:@"xsd:element"]objectAtIndex:0]attributeForName:@"saw-sql:columnHeading"]; [keyArray addObject:xmlElement.stringValue]; // NSLog(@"%@",xmlElement.stringValue); }

Necesito tu ayuda, quiero analizar un archivo XML usando GDataXMLDocument y quiero buscar todos los atributos de la etiqueta en particular, pero cuando estoy usando o simplemente proporcionarme el valor de XPath para obtener el valor de columnHeading

GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithData:[NSData dataWithContentsOfFile:path] encoding:NSUTF8StringEncoding error:NULL]; NSArray *tempArray = [doc nodesForXPath:@"//root/xsd:schema" namespaces:nil error:nil];

regresa debajo del error.

Error de XPath: prefijo de espacio de nombre no definido xmlXPathEval: evaluación fallida

Y aquí está mi contenido XML.

<?xml version="1.0" encoding="utf-8"?> <SH xmlns="urn:schemas-microsoft-com:xml-analysis:rowset"> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:saw-sql="urn:saw-sql" targetNamespace="urn:schemas-microsoft-com:xml-analysis:rowset"> <xsd:complexType name="R"> <xsd:sequence> <xsd:element name="S0" saw-sql:columnHeading="SID" saw-sql:columnID="0"/> <xsd:element name="S1" saw-sql:columnHeading="SNAME" saw-sql:columnID="1"/> <xsd:element name="S2" saw-sql:columnHeading="CLASS" saw-sql:columnID="2"/> <xsd:element name="S3" saw-sql:columnHeading="ADD" saw-sql:columnID="3"/> <xsd:element name="S4" saw-sql:columnHeading="CITY" saw-sql:columnID="4"/> </xsd:sequence> </xsd:complexType> </xsd:schema>

Atascado aquí de los últimos 3 días. necesitamos su ayuda.

Gracias por adelantado.