use Data::Dump; my $price; while($reader->read) { next unless $reader->nodeType==XML_READER_TYPE_ELEMENT; dd $reader->localName, $reader->readInnerXml; $price = $reader->readInnerXml if $reader->localName eq 'price'; } dd "price", $price; #### ( "product", "\n5 Spoke Wheel\nReconditioned OEM\n123.45\nhttp://www.foo.com\nhttp://www.foo.com/foo.jpg]\n", ) ("name", "5 Spoke Wheel") ("description", "Reconditioned OEM") ("price", 123.45) ("url", "http://www.foo.com") ("imageurl", "http://www.foo.com/foo.jpg") ("price", 123.45)