XML::Simple will use XML::SAX if it is installed.  If it does not find that, it will use XML::Parser.
If you uninstall p5-xml-sax, before you install p5-xml-simple, it should install without any issues.

Any suggestions on how to handle this better for people that have p5-xml-sax installed?

Some ideas:
1) Patch Makefile.PL to use XML::Parser first by default.
2) Depend on p5-xml-sax-expat instead. Should the p5-xml-sax-expat port chage/create the SAX.ini file?

For more info:
http://search.cpan.org/src/GRANTM/XML-Simple-2.16/README
http://search.cpan.org/src/GRANTM/XML-Simple-2.16/Makefile.PL

On Jan 10, 2007, at 2:46 PM, Brian Hirt wrote:

The latest version of XML::Simple won't build with a pure perl implementation of XML::Simple::PurePerl.  This is the error I'm getting:

=============================================================================

  Fatal error: Your default XML parser (XML::SAX::PurePerl) is broken.

  There are known bugs in the PurePerl parser included with version 0.13 
  and 0.14 of XML::SAX.  The XML::Simple tests will fail with this parser.

  One way to avoid the problem is to install XML::SAX::Expat - it will
  install itself as the system default XML parser and then you will be able 
  to install XML::Simple successfully.  XML::SAX::Expat is also much faster
  than XML::SAX::PurePerl so you probably want it anyway.

=============================================================================

It seems there should be a dependency for p5-xml-sax-expat,

Even with the expat version installed, it wouldn't build because it seems like when installed via port doesn't it doesn't set itself up as the default parser.

I ended up creating a SAX.ini with the following line:
ParserPackage = XML::SAX::Expat (0.37)

Then I installed p5-xml-sax-expat and then installed p5-xml-simple