[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [xml] Potential wrong usage of xmlIsID() in tree.c
- From: Daniel Veillard <veillard redhat com>
- To: Kasimier Buchcik <K Buchcik 4commerce de>
- Cc: Rob Richards <rrichards ctindustries net>, ML-libxml2 <xml gnome org>
- Subject: Re: [xml] Potential wrong usage of xmlIsID() in tree.c
- Date: Thu, 23 Feb 2006 07:29:49 -0500
On Thu, Feb 23, 2006 at 01:03:24PM +0100, Kasimier Buchcik wrote:
> The problem occurs regardless of a validation being performed or not.
>
> Example:
>
> <!DOCTYPE foo [
> <!ELEMENT foo (bar)>
> <!ELEMENT bar>
> <!ATTLIST bar myId ID #IMPLIED>
> ]>
>
> Assume we parse and validate the following XML:
> <foo>
> <bar myID="1"/>
> </foo>
>
> The API wouldn't prevent us to add a <bar> to the <bar>:
> <foo>
> <bar myID="1">
> <bar/>
> </bar>
> </foo>
>
> If we now add @myID to the newly created <bar>, then the current
> ID-autodetection would mark it as of type ID:
> <foo>
> <bar myID="1">
> <bar myID="2"/>
> </bar>
> </foo>
>
> The problem I see here, is that the second <bar> is not valid according
> to the DTD, and thus its @myID shouldn't become an ID; that's why
I think this is wrong. Even if the element raised a validity error, the
IDNESS property of the attribute would still be there.
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]