Bio::SeqIO and XML::DOM

InterProScan is an excellent tool to query the InterPro database with a protein sequence and return annotated features. It also returns XML which is useful in many ways, not least of which is that Bioperl’s can process it.


Can't locate object method "findnodes" via package "XML::DOM::Document" at /usr/local/share/perl/5.8.7/Bio/SeqIO/ line 136,  line 57.

After a thorough investigation of the many Perl XML modules, it turns out that the findnodes() method is part of XML::DOM::XPath. I installed this from CPAN but the error persisted, even though contains “use XML::DOM”. Finally I added “use XML::DOM::XPath” to my script, which does the trick.

Not sure whether this classes as a bug or is a consequence of the horror that is most peoples Perl XML module installation.

Update: a clean install of bioperl-1.5.2_102 seems to fix this problem; no requirement for XML::DOM::XPath

2 thoughts on “Bio::SeqIO and XML::DOM

  1. This seems to be fixed in the latest developer 1.5.2 release; the one that extracts to a directory with a “102” suffix. Previously I was using the “101”.

Comments are closed.