Michael Koehne <[EMAIL PROTECTED]> writes:

>   So the question we have :
> 
>   The Java implementation of SAX 2.0 is out, and it improve in some
>   important concepts as the namespace thing, filters, and document
>   order. Ken had mad XML::Parser::PerlSAX as a part of his
>   libxmlperl, providing a look like SAX programming style to the
>   CPAN comunity.  Unfortunately those PerlSAX modules had wild
>   grown, and distributed anywhere in the XML namespace.
> 
>   This may be the point to call for either the XML::SAX namespace or
>   to ask [EMAIL PROTECTED] for a toplevel SAX namespace ? The benefit
>   would be, that the necessary work on the existing modules, that
>   are using PerlSAX, would also clean the namespace.

Michael and I, and others on occasion, have been discussing SAX module
naming for quite a while, mostly so we can present a pretty clear
picture when we're close to needing them.  That time is coming up with
SAX2.  SAX2 is not backwards compatible with SAX1 so this would be a
really good time to start using a SAX::* or SAX*:: namespace, to
indicate those modules that are SAX2 compliant, and without breaking
any SAX1 modules.

We have two basic differences of opinion that we'd like to get input
on.

A little background first.  SAX modules come in three basic flavors,
"drivers" which generate SAX events (parsers are drivers), "handlers"
which consume SAX events (writers and tree builders are handlers), and
"filters" which are both handlers and drivers.

The first question is: do we want to have one top-level namespace
called "SAX::" with multiple namespaces under it (SAX::Driver::*,
SAX::Handler::*, and SAX::Filter::*) and use three-level naming; or
have multiple top-level namespaces (SAXDriver::*, SAXHandler::*, and
SAXFilter::*) and use two-level namespaces.  For reference, Tim Bunce
mentioned during the last round that the module list maintainers
prefer two-level naming.

The second question is: should unique namespaces be used for
specialized types of drivers, handlers, or filters.  Specifically,
Parser (SAX::Parser::* or SAXParser::*), Writer, Builder [for trees],
etc.

Although there are four combinations of these, I've taken all the
existing SAX modules and shown a SAX::* without sub-types and a SAX*::
with sub-types for each module at
<http://bitsko.slc.ut.us/~ken/perl-xml/sax-modules.txt>.

So please indicate your preference:

1)  SAX::*::*     or  SAX*::*

2)  no-sub-types  or  sub-types

Thanks,

  -- Ken

Reply via email to