【发布时间】:2014-10-07 20:39:48
【问题描述】:
我应该为一个 xml 文档编写一个 DTD,但是有一个特定的部分让我陷入了循环。在 EnrolledIn 元素中有字符数据,然后是课程元素。我尝试使用下面的 DTD 进行验证,但我不断收到错误
"ERROR: Element EnrolledIn 内容不遵循 DTD,期望 (CDATA , Course+),得到 (CDATA Course Course Course )
错误:EnrolledIn 元素内容不遵循 DTD,期望 (CDATA , Course+),得到 (CDATA Course )”。
课程结束后我尝试使用 * 和 + 但没有成功。我正在使用 Notepad++ xml 工具进行验证。
<!DOCTYPE Students [
<!ELEMENT Students (Student*)>
<!ELEMENT Student (LastName, MiddleInitial?, FirstName, EnrolledIn?)>
<!ELEMENT LastName (#PCDATA)>
<!ELEMENT FirstName (#PCDATA)>
<!ELEMENT MiddleInitial (#PCDATA)>
<!ELEMENT EnrolledIn (CDATA, Course+)>
<!ELEMENT Course (#PCDATA)>
]>
<Students>
<Student>
<LastName> Doe </LastName>
<MiddleInitial>K.</MiddleInitial>
<FirstName>John</FirstName>
<EnrolledIn>
Courses enrolled in:
<Course>
TCSS 445 – Database Systems Design
</Course>
<Course>
TCSS 422 – Operating Systems
</Course>
<Course>
TCSS 422 – Operating Systems
</Course>
<Course>
TBUS 301 Quantitative Analysis for Business
</Course>
</EnrolledIn>
</Student>
<Student>
<LastName> Smith </LastName>
<FirstName>Amy</FirstName>
<EnrolledIn>
Courses enrolled in:
<Course>
TBUS 100 Introduction to Business
</Course>
</EnrolledIn>
</Student>
<Student>
<LastName> Doe </LastName>
<MiddleInitial> L. </MiddleInitial>
<FirstName>Jane</FirstName>
</Student>
</Students>
【问题讨论】: