Hi,

> -----Original Message-----
> From: Rob Richards [mailto:[EMAIL PROTECTED] 
> 
> Buchcik, Kasimier wrote:
> > Hi Rob, 
> >
> >   
> >> -----Original Message-----
> >> From: Rob Richards [mailto:[EMAIL PROTECTED] 
> >>
> >> Sorry I didn't catch this change earlier, but I think the 
> >> change made to 
> >> not add an attribute with a : in its name when no namespace 
> >> is found is 
> >> incorrect. The change I am referring to is rev 1.366 of tree.c:
> >>     /*
> >>     * If we get a QName and the prefix has no namespace-
> >>     * binding in scope, then this is an error.
> >>     * TODO: Previously this falled-back to non-ns handling.
> >>     *   Should we revert this?
> >>     */
> >>     return(NULL);
> >>
> >> A colon is a legal character for an attribute name. Although 
> >> not where 
> >> this issue cropped up and why I didn't catch it before, 
> take DOM for 
> >> example. For DOM level 1 where there is no namespace support, the 
> >> attribute should be added to the document with the colon 
> in its name.
> >>
> >> I think this should be reverted.
> >>     
> >
> > Yes, agreed.
> >
> > The general problem with xmlSetProp() is that it tries to work for
> > both DOM levels, without actual control over it from the 
> caller's side.
> > If I want to put in a Level 1 attribute, then I might get a Level 2
> > attribute back, since I happened to use a colon in my name and was
> > unlucky
> > that there was a ns-decl in scope with a prefix matching 
> the left side
> > of
> > the colon :-)
> > Maybe we should document very explicitely that this function should
> > simply
> > not be used. If someone wants a pure Level 1 
> attribute-setting function
> > than we need yet to invent one.
> >   
> That might be a good idea (i.e. xmlSetNoNSProp).
> 
> Now, I was wondering about the ramifications of this 
> breakage. The DOM 
> example I gave was just something I thought of. The bug was actually 
> caught by a PHP users trying to use ext/soap, which adds 
> attributes in a 
> bit of an interesting fashion, while using the latest libxml2 
> release. I 
> should have caught this sooner as the PHP test suite did pick up the 
> failure, but I missed checking the nature of the failure.
> 
> How common do you think using a : in an attribute name without a 
> matching namespace would be in apps (since this does break 
> apps wether 
> using the library directly or via bindings that are expecting the 
> original behavior)? This is not a critical bug, but wonder if a new 
> release should be made with this reverted - when Daniel gets 
> back from 
> holiday of course :).

Ah, a new release. Well, I broke that one, so I'm +1 for a new release
:-)
Additionally a tiny specific part of XPath (sorting) has been enhanced
recently, so the PHP user-base would be a wellcome test-team for this
enhancement ;-)

Regards,

Kasimier
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
[email protected]
http://mail.gnome.org/mailman/listinfo/xml

Reply via email to