[Python-Dev] minidom -> new-style classes?

Guido van Rossum guido at python.org
Wed Apr 18 05:40:00 CEST 2007

Perhaps a rewrite could target 3.0 and 2.6 could use a backported
version of this *if* py3k compatibility mode is enabled? I'd love to
see at least the 3.0 version cleaned up.


On 4/17/07, Fred L. Drake, Jr. <fdrake at acm.org> wrote:
> On Tuesday 17 April 2007 22:37, Jason Orendorff wrote:
>  > The right way to implement these quirks is using new-style classes and
>  > properties.  Right now minidom uses old-style classes and lots of
>  > hackery, and it's pretty broken.  (Another example--there is an
>  > Attr._set_prefix method, but it is *not* called from __setattr__.)
> Yes, it's truly vile.  Better than it used to be, but....
> There's also some vague attempt at supporting the Python CORBA IDL mapping,
> since the W3C DOM specifications use that.  I expect the support is
> incomplete at best.
>  > Surely nobody is subclassing these classes.  You don't subclass DOM
>  > interfaces--the DOM doesn't work that way.  So this change should be
>  > OK.  Right?
> There are people who've tried building new DOM implementations by subclassing
> the minidom classes to get most of the behavior.  I'm don't know the status
> of any of these implementations, but changes to these classes have proved
> difficult due to this and the possibility of breaking pickles (amazed me,
> that one did!).
> I'd love to see a sane implementation, using new-style classes and properties,
> but as long as we've got to support existing applications, we're pretty well
> hosed as far as xml.dom.minidom is concerned.
> A new DOM implementation conforming to the W3C recommendations would be nice,
> but I'd really rather see an XML object model that doesn't suck, but that
> supports as much of the information found in the W3C DOM as possible.
> Something based more on the ElementTree API, perhaps.  The value of the
> W3C-approved API has certainly turned out to be more decoy than anything.
>   -Fred
> --
> Fred L. Drake, Jr.   <fdrake at acm.org>
> _______________________________________________
> Python-Dev mailing list
> Python-Dev at python.org
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe: http://mail.python.org/mailman/options/python-dev/guido%40python.org

--Guido van Rossum (home page: http://www.python.org/~guido/)

More information about the Python-Dev mailing list