Re: [xml] Potential wrong usage of xmlIsID() in tree.c
- From: Daniel Veillard <veillard redhat com>
- To: Rob Richards <rrichards ctindustries net>
- Cc: xml gnome org
- Subject: Re: [xml] Potential wrong usage of xmlIsID() in tree.c
- Date: Thu, 23 Feb 2006 17:50:19 -0500
On Thu, Feb 23, 2006 at 05:44:26PM -0500, Rob Richards wrote:
Daniel Veillard wrote:
This works for me as well. I think we are on the same wavelength here as
this was my third option when I had mentioned a lot of refactoring. I
don't like the single entry point either (confusing to use). As long as
we re-use existing code where possible I don't have a problem with the
additional functions.
okay
Daniel, from a non-DOM perspective, what's your view on adding auto
ID-ness detection to functions like addchild, addsibling, etc... In the
I'm undecided. On one side the fact of adding an attribute to a document
may potentially make the parent an ID for that document. On the other side
you have the XML Infoset spec which state that IDness is a property of the
attribute (set at parse time or creation time)
http://www.w3.org/TR/xml-infoset/#infoitem.attribute
[attribute type] == ID
and well when you copy this attribute you copy its infoset and hence its
properties.
patch I'm working on I removed my original code for those and only fixed
up some other issues, but do you want the ID stuff added there as well
for consistency with the newprop, setprop functions or should detection
just be left in the state it is in now? If you do think it should go in,
the last question I have is creating a xml:id attribute without a parent
element. Right now it marks it as an ID, but I think xmlNewPropInternal
should be changed to check for a parent element first.
To me creating a new attribute should definitely make the lookup and
set the attribute type, but if you copy an existing one I think the existing
type should be maintained, it may differ if you reserialize and reparse
but that's a different document.
Daniel
--
Daniel Veillard | Red Hat http://redhat.com/
veillard redhat com | libxml GNOME XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]