If all you are interested in is the value of a single attribute then you might be better off using XPath:
(BTW, Your XML is not well formed - you need to render the ampersand in the URI as the entity &)use XML::XPath + $/ = undef; + my $foo = <DATA>; my $xp = XML::XPath->new(xml => $foo); + my $nodes = $xp->find('/RESEARCH/LINK/@PUBID'); + foreach my $node ($nodes->get_nodelist()) { print $node->getData(),"\n"; } __END__ <RESEARCH> <xslobject name="research.xsl" /> <PGFROM>12/30/04</PGFROM> <PGOFFSET>0</PGOFFSET> <PGCOUNT>1</PGCOUNT> <LINK PUBID="584557" DOCID="100386419" CLIENT="0" HIDDEN="1" DELETED=" +0"> <SCORE>1.00</SCORE> <PUBDATE>01/06/05</PUBDATE> <DOCDATE>01/06/05</DOCDATE> <EXPDATE>NEVER</EXPDATE> <TITLE>SC 4 DOC AND IMAGE</TITLE> <URI>/DDL/servlets/dv.search?docID=100386419&searchType=INTRANET +</URI> <FILETYPE>doc</FILETYPE> </LINK> </RESEARCH>
/J\
In reply to Re: Parsing XML - SAX events
by gellyfish
in thread Parsing XML - SAX events
by ghouse
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |