2015-12-01 5 views
0

Где проблема эти два-х DTD file.i не понял следующее сообщение об ошибке:Как проверить DTD-файл?

:Character ',' is grammatically unexpected.(line on **,**) 

Есть ли действительный экземпляр XML документ из этих двух в DTD?

Первый ОТД

<!ELEMENT nom (#PCDATA , (nomp | prenom)*)> 
<!ELEMENT nomp (#PCDATA)> 
<!ELEMENT prenom (#PCDATA) 

Второй ОТД

<!ELEMENT nom ((#PCDATA | nomp) , prenom)*> 
<!ELEMENT nomp (#PCDATA)> 
<!ELEMENT prenom (#PCDATA)> 

Ошибка:Character '(' is grammatically unexpected. (line 1 second "**(**")

+0

Будет ли это работать для вас: '<ЭЛЕМЕНТ ном #PCDATA (nomp *, Prénom *)> ' – Risadinha

ответ

0

Когда вы смешали содержание (что, когда элемент может содержать и символьные данные и opti наследуемые дочерние элементы), вы должны объявить элемент определенным образом. Порядок и количество вхождений не могут быть ограничены.

Смотрите спецификации для получения дополнительной информации: http://www.w3.org/TR/xml/#sec-mixed-content

Так что ваша декларация элемент должен был бы быть:

<!ELEMENT nom (#PCDATA|nomp|prenom)*> 
Смежные вопросы