I'm trying to parse a document with a namespace declared on a non-root element:
<root><example:foo xmlns:example="http://example.com/foo">This is an exemplary foo!</example:foo></root> I can read this xml into an NSXMLDocument just fine, but the following XPath query on root returns a non-nil, but empty NSArray: NSXMLNode *rootNode = ...// create my root node somehow NSArray *exampleFooElements = [rootNode nodesForXPath:@"/root/example:foo" error:nil]; // exampleFooElements != nil && [exampleFooElements count] == 0 However, if I add the namespace declaration to the root element, everything is fine: <root xmlns:example="http://example.com/foo"><example:foo>This is an exemplary foo!</example:foo></root> NSXMLNode *rootNode = ...// create my root node somehow NSArray *exampleFooElements = [rootNode nodesForXPath:@"/root/example:foo" error:nil]; // exampleFooElements != nil && [exampleFooElements count] == 1 I can do this change programmatically, but I'd rather not have to modify the document. This namespace usage should be legal. Am I doing something wrong? Thanks! -Heath Borders [email protected] Twitter: heathborders http://heath-tech.blogspot.com _______________________________________________ Cocoa-dev mailing list ([email protected]) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [email protected]
