gpt4 book ai didi

javascript - XML文件和dtd关联

转载 作者:行者123 更新时间:2023-11-28 06:39:11 25 4
gpt4 key购买 nike

我在进行简单的 xml 文件练习时遇到问题。这是名为“Newfile.xml”的 XML 文件

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="students.xsl"?>
<!DOCTYPE students SYSTEM "student.dtd">
<student id="100026">
<name>Joe Average</name>
<age>21</age>
<major>Biology</major>
<results>
<result course="Math 101" grade="C-"/>
<result course="Biology 101" grade="C+"/>
<result course="Statistics 101" grade="D"/>
</results>
</student>
<student id="100078">
<name>Jack Doe</name>
<age>18</age>
<major>Physics</major>
<major>XML Science</major>
<results>
<result course="Math 101" grade="A"/>
<result course="XML 101" grade="A-"/>
<result course="Physics 101" grade="B+"/>
<result course="XML 102" grade="A"/>
</results>
</student>
</students>

这是名为“student.dtd”的相对 dtd 文件,并放置在同一目录中

<?xml version="1.0" encoding="UTF-8"?>

<!ELEMENT students (student+)>

<!ELEMENT student (name,age,major,results)>
<!ATTLIST student id CDATA #REQUIRED>

<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT major (#PCDATA)>
<!ELEMENT results (result+)>


<!-- <!ELEMENT result (grade,course)> -->
<!ELEMENT result (#PCDATA)>
<!ATTLIST result grade CDATA #REQUIRED>
<!ATTLIST result course CDATA #REQUIRED>

当我尝试使用 Eclipse 运行 Newfile.xml 时,它显示:“错误第 14 行:文档中根元素后面的标记必须格式正确。”

哪里出错了?你能帮我吗?

最佳答案

我认为这是因为您的 XML 格式不正确 - 您有一个 student 元素的开始和结束标记,然后另一个 student 元素也有相同的开始和结束标记,并且那么您就有了 students 元素的结束标记

但是您没有 students 元素的开始标记。

顺便说一句,您在第二个 student 元素中也有 2 个 major 元素,但您的 DTD 指定只允许有 1 个 major 元素。

尝试以下操作,根据您的 DTD,它是有效的:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="students.xsl"?>
<!DOCTYPE students SYSTEM "student.dtd">
<students>
<student id="100026">
<name>Joe Average</name>
<age>21</age>
<major>Biology</major>
<results>
<result course="Math 101" grade="C-"/>
<result course="Biology 101" grade="C+"/>
<result course="Statistics 101" grade="D"/>
</results>
</student>
<student id="100078">
<name>Jack Doe</name>
<age>18</age>
<major>Physics</major>
<results>
<result course="Math 101" grade="A"/>
<result course="XML 101" grade="A-"/>
<result course="Physics 101" grade="B+"/>
<result course="XML 102" grade="A"/>
</results>
</student>
</students>

关于javascript - XML文件和dtd关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34001596/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com