PDA

View Full Version : Vad felar i DTD:n?


sabbacus
2003-01-16, 10:43
Tja. Sitter här och försöker lära mig XML & DTD och får sådana här smaskiga felmeddelanden utan att direkt förstå vad som menas med själva felmeddelandet. Koden nedan är en modifierad variant av den som finns på w3schools.com:s DTD-exempel (bifogar inte hela koden).
Det jag inte hajar är felmeddelandet
"ERROR line 12 , column 25 :reference to parameter entity in parameter separator in internal subset"
Raden i fråga är
"<!ELEMENT PROGRAMSLOT %TTD;>"

Vad innebär detta i praktiken? Vad har jag gjort för lamt fel?
/M

<!DOCTYPE TVSHEDULE [
<!--Parameterentitet-->
<!--Time, Title, description, används i "ProgramSlot"-->
<!ENTITY % TTD "(TIME,TITLE,DESCRIPTION?)" >

<!ELEMENT TVSCHEDULE (CHANNEL+)>
<!ELEMENT CHANNEL (BANNER,DAY+)>
<!ELEMENT BANNER (#PCDATA)>
<!ELEMENT DAY (DATE,(HOLIDAY|PROGRAMSLOT+))+>
<!ELEMENT DATE (#PCDATA)>
<!ELEMENT HOLIDAY (#PCDATA)>
<!ELEMENT PROGRAMSLOT %TTD;>
<!ELEMENT TIME (#PCDATA)>
<!ELEMENT TITLE EMPTY>
<!ELEMENT DESCRIPTION (#PCDATA)>

---------------------------------------------------------------
Opening XML file: "z:\kurser\daa715\lab1\tvschedule.dtd"
ERROR line 12 , column 25 :reference to parameter entity in parameter separator in internal subset
ERROR line 65 , column 69 :no system id specified
WARNING line 65 , column 69 :cannot generate system identifier for public text "ISO 8879-1986//ENTITIES Added Latin 1//EN"
ERROR line 75 , column 0 :DTD did not contain element declaration for document type name
File read unsuccessfully.

RGB
2003-01-16, 12:22
Felmeddelandet säger att du inte kan använda paramerter enheter typ
<!ENTITY % TTD "(TIME,TITLE,DESCRIPTION?)" > i en dtd om det är inbäddad i en xmlfil.