内部DTD的一个空格小错误

时间:2022-07-30 10:01:30
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!-- 内部DTD -->
 3 <!DOCTYPE scores [
 4     <!ELEMENT scores (student +)>
 5     <!ELEMENT student (name, class, score)>
 6     <!ATTLIST student id CDATA #REQUIRED>
 7 ]>
 8 <scores>
 9     <student id = "1">
10         <name>张三</name>
11         <class>Java</class>
12         <score>89</score>
13     </student>
14     <student id = "2">
15         <name>李四</name>
16         <class>sql</class>
17         <score>89</score>
18     </student>
19 </scores>

以上代码是在eclipse中写的,但是在第3行有一个错误,错误提示为:“A ')' is required in the declaration of element type "scores".”。

错误原因很简单:

  第4行代码  <!ELEMENT scores (student +)>  中(student +)应为 (student+),多了一个空格。

  个人的代码风格是将运算符号与字母用空格隔开,但这里的+代表至少有一个student,是不能用空格隔开的。