Re: [xml] Potential wrong usage of xmlIsID() in tree.c
- From: Rob Richards <rrichards ctindustries net>
- To: veillard redhat com
- Cc: xml gnome org
- Subject: Re: [xml] Potential wrong usage of xmlIsID() in tree.c
- Date: Fri, 24 Feb 2006 08:56:49 -0500
Daniel Veillard wrote:
On Fri, Feb 24, 2006 at 07:04:46AM -0500, Rob Richards wrote:
Daniel Veillard wrote:
On Fri, Feb 24, 2006 at 06:33:54AM -0500, Rob Richards wrote:
Based on a DTD or the xml:id spec, an attribute must have an element to
be considered an ID.
True for DTD as far as I know, but I don't see where you get this
>from the xml:id spec, both the processing section and the section
about application interface drop any requirement at the containing
element level:
http://www.w3.org/TR/xml-id/#inform
Doesn't http://www.w3.org/TR/xml-id/#infoset mean that the element must
be present?
The following information items must be present in the input infosets to
enable correct processing:
* Element Information Items with attributes property.
True, but it's a generic requirement from xml:id to Infoset, i.e.
that the toolkit must be able to provide element informations to
garantee that xml:id can work on top of it.
It doesn't mean that if an attribute is standalone at some point
then it's idness should be asserted, but that for the spec as a whole
to function (i.e. being able to use xml:id in a framework) then
the infoset framwork must support element informations. I still
think the property of the attribute in that case is not dependant
of the element presence, but we can't garantee it will work in all
frameworks, and for example an xpath id() query won't ve able to find
it.
okay I understand that point now. Any reason it just wasn't explicitly
stated in the spec that an element is not required (it would have made
it much clearer) because after reading the following I still would have
expected one to be:
"It has been a guiding principle in the design of this specification
that the result of xml:id processing should be the same as if an
appropriate declaration has been seen and used by the processor."
Reading that I know an element is required for an attribute to be an ID
type, so assumed that it would be required for xml:id.
Thanks for the explanations though. Does this mean then that in the
unlink and replace functions it should never remove idness for any
attribute or should only remove it from non xml:id ones?
Rob
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]