这两个DTD文件的问题在哪里。我不明白以下错误:
:Character ',' is grammatically unexpected.(line on **,**)
这两个DTD中是否有一个有效的XML实例文档?
第一次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 "**(**")
答案 0 :(得分:0)
如果您有混合内容(即元素可能包含字符数据和可选的散布子元素),则必须以特定方式声明元素。订单和发生次数不能受到限制。
有关详细信息,请参阅规范:http://www.w3.org/TR/xml/#sec-mixed-content
所以你的元素声明需要是:
<!ELEMENT nom (#PCDATA|nomp|prenom)*>