After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 170489 - Ignored attribute declaration in DTD
Ignored attribute declaration in DTD
Status: VERIFIED FIXED
Product: libxml2
Classification: Platform
Component: general
2.6.12
Other All
: Normal normal
: ---
Assigned To: Daniel Veillard
libxml QA maintainers
Depends on:
Blocks:
 
 
Reported: 2005-03-15 19:57 UTC by jirka
Modified: 2009-08-15 18:40 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
File that demonstrates problem (1.37 KB, text/xml)
2005-08-23 17:11 UTC, jirka
Details
DTD where some attribute declarations are ignored by xmllint (990 bytes, application/octet-stream)
2005-08-23 17:11 UTC, jirka
Details

Description jirka 2005-03-15 19:57:34 UTC
xmllint --valid --noout objednavka.xml

gives

objednavka.xml:24: element Po─Źet: validity error : No declaration for attribute
 jednotka of element Po─Źet
            <Po─Źet  jednotka="ks">1</Po─Źet>
                                  ^
objednavka.xml:31: element Po─Źet: validity error : No declaration for attribute
 jednotka of element Po─Źet
            <Po─Źet  jednotka="kg">2.5</Po─Źet>

But it should pass without errors because attribute "jednotka" is declared in 
DTD. Other parsers (I tried Xerces-J, MSXML3) validate this document without 
problems.

It seems that Bugzilla doesn't allow to attach test files. So I'm placing them 
here inlime:

objednavka.dtd:

<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT objednavka (AdDoručeni, AdÚčtovací, ZpůsobDopravy, ZpůsobPlatby, 
DatumPřijetí, DatumDoručení, ObsahObjednávky, Komentář?)>
<!ELEMENT  AdDoručeni (Jméno,  Ulice, Město, PSČ)>
<!ELEMENT  AdÚčtovací (Jméno,  Ulice, Město, PSČ)>
<!ELEMENT  Jméno     (#PCDATA)>
<!ELEMENT  Ulice        (#PCDATA)>
<!ELEMENT  Město      (#PCDATA)>
<!ELEMENT  PSČ        (#PCDATA)>
<!ELEMENT ZpůsobDopravy (#PCDATA) >
<!ELEMENT ZpůsobPlatby (#PCDATA) >
<!ELEMENT  DatumPřijetí (#PCDATA)>
<!ELEMENT  DatumDoručení (#PCDATA)>
<!ELEMENT ObsahObjednávky (Zboží+) >
<!ELEMENT Zboží (Kód, Název, Počet, Cena, Popis?) >
<!ELEMENT  Kód (#PCDATA)>
<!ELEMENT Název (#PCDATA) >
<!ELEMENT  Počet (#PCDATA)>
<!ELEMENT Cena (#PCDATA) >
<!ELEMENT Popis (#PCDATA) >
<!ELEMENT Komentář (Řádka*) >
<!ELEMENT  Řádka (#PCDATA)>
<!ATTLIST Počet
                    jednotka      (ks | kg | m2 | m)      #IMPLIED>


objednavka.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE objednavka SYSTEM "objednavka.dtd">
<objednavka>
    <AdDoručeni>
        <Jméno>Jan Novák</Jméno>
        <Ulice>Bělehradská 147</Ulice>
        <Město>Praha 2</Město>
        <PSČ>12000</PSČ>
    </AdDoručeni>
    <AdÚčtovací>
        <Jméno>Petra Nováková</Jméno>
        <Ulice>Anglická 15</Ulice>
        <Město>Praha 2</Město>
        <PSČ>12000</PSČ>
    </AdÚčtovací>
    <ZpůsobDopravy>DPD</ZpůsobDopravy>
    <ZpůsobPlatby>dobírka</ZpůsobPlatby>
    <DatumPřijetí>2004-11-14</DatumPřijetí>
    <DatumDoručení>2004-11-19</DatumDoručení>
    <ObsahObjednávky>
        <Zboží>
            <Kód>2N7-516</Kód>
            <Název>Sekačka na trávu</Název>
            <Počet  jednotka="ks">1</Počet>
            <Cena>2999</Cena>
            <Popis>http://example.org/sekacka.html</Popis>
        </Zboží>
        <Zboží>
            <Kód>Q3Y-116</Kód>
            <Název>Travní semeno</Název>
            <Počet  jednotka="kg">2.5</Počet>
            <Cena>127.50</Cena>
        </Zboží>
    </ObsahObjednávky>
    <Komentář>
        <Řádka>O dodávku mám zájem pouze v případě, že se jedná o trávu v odrůdě 
konopí.</Řádka>
        <Řádka>Dále jsem se chtěl zeptat, zda je doprava zdarma.</Řádka>
    </Komentář>
</objednavka>
Comment 1 William M. Brack 2005-03-16 02:13:37 UTC
This problem doesn't seem to occur on the latest (2.6.18) release.  Could you 
update your libxml2 and see if that fixes it for you? 
 
Bill 
Comment 2 jirka 2005-03-16 16:19:14 UTC
I'm on the Windows and the latest version available here is  20617CVS2313. I get 
the same error message with it.
Comment 3 Daniel Veillard 2005-08-23 16:14:56 UTC
Severity back to normal by lack of information.
Jirka, bugzilla *do* allow to attach files and we *need* a pristine file for
any debug.

Daniel
Comment 4 jirka 2005-08-23 17:11:08 UTC
Created attachment 51203 [details]
File that demonstrates problem

File that demonstrates problem
Comment 5 jirka 2005-08-23 17:11:43 UTC
Created attachment 51204 [details]
DTD where some attribute declarations are ignored by xmllint
Comment 6 jirka 2005-08-23 17:12:43 UTC
OK, files are attached. I didn't spot link for attaching files previously. Sorry 
for that.
Comment 7 Daniel Veillard 2005-08-23 18:13:38 UTC
Dohh, a real parser bug, congratulation !
Bad combination of characters, CR/LF line ending in a DTD :-\

paphio:~/XML -> xmllint --noout --valid test/valid/objednavka.xml
paphio:~/XML ->

  This is fixed in CVS, I added your example to the test suite too,

   thanks a lot,

sorry for the delay but that bug had no chance to be caught with a cut and paste
from a web page :-)

Daniel
Comment 8 Daniel Veillard 2005-09-05 09:02:10 UTC
This should be closed by release of libxml2-2.6.21,

  thanks,

Daniel