|
I hate to be a curmudgeon, but one of the sample DTD fragments here is illegal:
<!ELEMENT fruit_basket (banana*)>
<!ELEMENT banana EMPTY>
<!ATTLIST banana banana_number (1 | 2 | 3) "1" >
The enumerated values for an attribute MUST conform to the NMToken production - this means that "1", "2", etc are forbidden.
Here's a legal version of the DTD:
<!ELEMENT fruit_basket (banana*)>
<!ELEMENT banana EMPTY>
<!ATTLIST banana banana_number (_1 | _2 | _3) "_1" >
There's another annoying DTD limitation for you.
-Wayne Steele
|