Как проверить файл DTD?
В чем проблема файла DTD этих двоих. Я не понял следующую ошибку:
:Character ',' is grammatically unexpected.(line on **,**)
Есть ли действительный экземпляр XML-документа из DTD этих двух?
Первый DTD
<!ELEMENT nom (#PCDATA , (nomp | prenom)*)>
<!ELEMENT nomp (#PCDATA)>
<!ELEMENT prenom (#PCDATA)
Второе DTD
<!ELEMENT nom ((#PCDATA | nomp) , prenom)*>
<!ELEMENT nomp (#PCDATA)>
<!ELEMENT prenom (#PCDATA)>
ошибка :Character '(' is grammatically unexpected. (line 1 second "**(**")
1 ответ
Если у вас смешанный контент (то есть, когда элемент может содержать как символьные данные, так и необязательно перемежающиеся дочерние элементы), вы должны объявить элемент определенным образом. Порядок и количество вхождений не могут быть ограничены.
См. Спецификацию для получения дополнительной информации: http://www.w3.org/TR/xml/
Таким образом, ваше объявление элемента должно быть:
<!ELEMENT nom (#PCDATA|nomp|prenom)*>