XML DTD validation

Bradley Slavik <[email protected]>
Newsgroups gmane.comp.lang.perl.xml
Message-ID <[email protected]>
Dear Perl XML list,

I have been working with XML::Checker::Parser (part of libxml-enno)
and found that many of the tests are broken, and it probably could
use to be upgraded to using Test::More. I have fixed most of it, but
maybe I should be expending my efforts on a different perl package?

Is there a better package in Perl to validate XML files against DTDs or Schemas?
I currently only have DTDs for these XML files.

It was interesting to see this project as well: http://vtd-xml.sourceforge.net/
but I did not see how to use it for validating DTDs or Schemas.

This project also looked promising: http://www.textuality.com/Lark/

And there is always the faithful libxml and Xerces to fall back on.

I just want to get a little feedback, so if I do this, it is done
right and benefits the perl/xml community as a whole, not just me.

It would be nice if someone who has submitted CPAN modules previously
could look over the code before I submit it. I feel confident there are some
nice perl idioms for packages that might make the package more standard.

I just learned the perl Test packages today. I think if the libxml-enno
is still in favor then I should clean up the test suite and go over the
code. Here is an example of a simple question that I just don't know the
answer to:

Lines 223 and 249 of t/chk_batch.t:

local *XML::DOM::warning = \&append_str;

which produces this error during testing:

Subroutine XML::DOM::warning redefined at t/chk_batch.t line 223.
Subroutine XML::DOM::warning redefined at t/chk_batch.t line 249.

It is pretty lame, and there is probably a better way to do it, but if it
is better to overwrite it, how to avoid the warning? I now know that I
can use no warnings to get around this, but is this the BEST perl practice?

Here is the subroutine (so you don't have to look it up)

sub append_str
{
$error_str .= shift() . "\n";
}

Probably there is an accepted idiom to use for this purpose when
writing tests, and I would rather go with the flow than create my own
wheel. I am not trying to get someone else to do the work here, just
hoping to get a modicum of support.

Thanks for your assistance.


Bradley Slavik
[email protected]



_______________________________________________
Perl-XML mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.