I'm probably doing something stupid here, but I have the following problem:
I am trying to parse this simple XML: <?xml version="1.0" encoding="UTF-8"?> <vxml xmlns="http://www.w3.org/2001/vxml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2001/vxml http://www.w3.org/TR/voicexml20/vxml.xsd" version="2.0" > <meta name="author" content="Toby Corkindale"/> </vxml> I am using XML::LibXML, like so: use strict; use warnings; use XML::LibXML; our $parser = new XML::LibXML; my $filename = 'example.xml'; my $xml = $parser->parse_file($filename) or die("parse xml error on $filename\n"); my @nodelist = $xml->findnodes('/vxml/meta'); foreach my $node (@nodelist) { my $name = $node->getAttribute('name'); my $content = $node->getAttribute('content'); print "META: [$name] = [$content]\n"; } The problem is that although the XML document parses fine, and i can manually trawl through child nodes OK, the findnodes() function doesn't work. It *does* work if I remove the xmlns="...." line from the <vxml> declaration. (I can leave the schema stuff in there) Am I doing something wrong here, or is XML::LibXML, or is the VoiceXML standard? tia, Toby -- Turning and turning in the widening gyre The falcon cannot hear the falconer; Things fall apart, the centre cannot hold; Mere anarchy is loosed upon the world.