On Tue, Feb 26, 2008 at 01:40:08PM +0100, massimo morara wrote:
> 
> On Tue, Feb 26, 2008 at 04:15:28AM -0500, Daniel Veillard wrote:
> >   Not a bug. When you do things like Post validation, you give it a
> > preparsed DTD. in that case the DTD was parsed without the context
> > of the document, while the internal subset changes the behaviour.
> > [...]
> 
>       Sorry Daniel, 
>       a different example about validation and post validation.
[...]
> --- begin "b.xml" ---
> <?xml version="1.0"?>
> <root ns:attr="1"/>
> --- end "b.xml" ---
> 
> --- begin "a.dtd" ---
> <!ELEMENT root EMPTY>
> <!ATTLIST root
>           xmlns:ns CDATA #FIXED "http://foo-dtd.org";
>           ns:attr CDATA #IMPLIED>
> --- end "a.dtd" ---
[...]
>       But when i verify the validity of "b.xml" explicitly against
> "a.dtd" ("--dtdvalid a.dtd"), i obtain the following error:
> 
> --- begin output ---
> <root ns:attr="1"/>
>                  ^
> b.xml:2: element root: validity error : No declaration for attribute 
> attr of element root
> Document b.xml does not validate against a.dtd
> --- end output ---
> 
> 
>       I suppose this is a bug (i'm wrong?) so i have inserted bug
> 445790 in bugzilla.

  You forgot to mention the full set of errors

paphio:~/XML -> ./xmllint --noout --dtdvalid a.dtd b.xml 
b.xml:2: namespace error : Namespace prefix ns for attr on root is not defined
<root ns:attr="1"/>
                 ^
b.xml:2: element root: validity error : No declaration for attribute attr of 
element root
Document b.xml does not validate against a.dtd
paphio:~/XML -> 

  when you first parsed the document, it uses a namespace, which is undeclared.
So the document is not okay w.r.t. namespaces. The problem is that the prefix
is dropped from the document:

paphio:~/XML -> ./xmllint   b.xml 
b.xml:2: namespace error : Namespace prefix ns for attr on root is not defined
<root ns:attr="1"/>
                 ^
<?xml version="1.0"?>
<root attr="1"/>
paphio:~/XML -> 

  Which sounds like a bug but completely unrelated to what you're trying to
link to , it's not at all related to validation (nor postvalidation)

Daniel

-- 
Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard      | virtualization library  http://libvirt.org/
[EMAIL PROTECTED]  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine  http://rpmfind.net/
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
xml@gnome.org
http://mail.gnome.org/mailman/listinfo/xml

Reply via email to