W3C home > Mailing lists > Public > public-qa-dev@w3.org > August 2004

SGML::Parser::OpenSP 0.02-pre

From: Bjoern Hoehrmann <derhoermi@gmx.net>
Date: Wed, 25 Aug 2004 11:23:37 +0200
To: link@pobox.com
Cc: spo-devel@lists.sourceforge.net, public-qa-dev@w3.org
Message-ID: <41325575.774080629@smtp.bjoern.hoehrmann.de>

Hi Terje,

  http://qa-dev.w3.org/~bjoern/temp/SGML-Parser-OpenSP-0.02.tgz is the
latest version of SGML::Parser::OpenSP, I'd appreciate if you could put
that into http://sf.net/project/spo CVS as you see fit ASAP and tell me
where you put it. I am not sure whether t/SGML-Parser-OpenSP.t should be
there, feel free to leave it off.

To use it, you will most likely have to tweak the Makefile.PL to set CC
and LD to g++ and LIBS to \qw[-losp]. Let me know if that's not enough.
We should find a way to make this more friendly before we release this
version on CPAN.

The typemap file is crap, OpenSP.xs does not care about threaded Perl
and there is no interface to halt() the current parse, but other than
that it should be pretty complete. Could benefit from some more POD, but
it should suffice for our users. There will be another module that
builds on top of it, e.g. SGML::Parser::OpenSP::SAX that makes it more
compatible with PerlSAX 2.0 <http://perl-xml.sourceforge.net/sax/> which
would include a number of convenience features.

Using the current module should be straightforward though,

  sub ExampleHandler::new           { bless {}, shift }
  sub ExampleHandler::start_element { print $_[1]->{Name}, "\n" }

  use SGML::Parser::OpenSP;

  my $p = SGML::Parser::OpenSP->new;

  $p->catalogs(qw(xhtml.soc));
  $p->warnings(qw(xml valid));
  $p->handler(ExampleHandler->new);

  $p->parse_file("example.xhtml");

This would print

  html
  head
  title
  meta
  link
  style
  body
  h1
  ...

depending on the document. It's quite similar to both SAX and the
generic OpenSP interface, <http://openjade.sf.net/doc-1.5.1/generic.htm>
the documentation contains more details.

It does not yet mess with %ENV to deal with encoding issues, etc., we'll
need to figure out what to do in this regard. After that, we should make
a new release to CPAN. For this I need either co-maintainer or primary-
maintainer status for the module, maybe I should be the new primary-mtn
for it? Via https://pause.perl.org/pause/authenquery?ACTION=share_perms
you can change the permissions for the module.

A basic test suite would be good...

We should also work towards a OpenSP 1.5.2 release to have a release
version for use with this module, OpenSP 1.5.1 is quite unusable for it
due to the memory leaks as we discussed. I'll see whether I can commit
my remaining patches today.

Comments welcome.

regards.
Received on Wednesday, 25 August 2004 09:24:29 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Thursday, 19 August 2010 18:12:44 GMT