Используя средство проверки DTD здесь, я узнаю, что следующее DTD недействительно.
<!ENTITY % text "(#PCDATA|L)*">
<!ELEMENT H (%text;)+>
<!ELEMENT L (#PCDATA)>
Сообщение об ошибке: "В объявлении типа элемента "H" требуется символ '(' или тип элемента" в строке 2, столбце 22.
Может ли кто-нибудь указать, почему это недействительно? И как я могу сделать его действительным? Сообщение об ошибке не совсем дружелюбно ко мне. Спасибо.
%text;
у вас есть две вложенные скобки. - person Boldewyn   schedule 10.05.2010#PCDATA
из объявления объекта%text;
, чтобы он стал<!ENTITY % text "(L)*">
, DTD станет действительным. - person His   schedule 10.05.2010