【问题标题】:Why doesn't the XML validate to the DTD为什么 XML 不对 DTD 进行验证
【发布时间】:2013-07-11 12:11:19
【问题描述】:

DTD:

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

<!ELEMENT language (definition, tu, tuv, seg) >
<!ELEMENT definition ANY >
<!ELEMENT tu ANY >
<!ELEMENT tuv ANY >
<!ELEMENT seg (#PCDATA) >
<!ATTLIST tu id CDATA #REQUIRED >
<!ATTLIST tuv lang CDATA #REQUIRED >

XML:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">

<definition> # This is the line that seems to be the problem
    <tu id="webpage-title-text">
        <tuv lang="en">
            <seg>Demo CMS</seg>
        </tuv>
    </tu>
</definition>

我得到的错误信息是:

文档根元素“定义”,必须匹配 DOCTYPE 根 “语言”。 [4]

我的问题:

  1. XML 被认为无效的原因是什么? 当前的DTD?
  2. 我在 DTD 中遗漏了什么?
  3. 任何人都可以 推荐一个好地方作为学习如何使用的资源 DTD、模式等。

【问题讨论】:

    标签: xml validation dtd


    【解决方案1】:

    改变

    <!DOCTYPE language SYSTEM "language.dtd">
    

    <!DOCTYPE definition SYSTEM "language.dtd">
    

    【讨论】:

    猜你喜欢
    • 2011-01-30
    • 1970-01-01
    • 2011-09-30
    • 2012-08-21
    • 2011-06-14
    • 2010-11-22
    • 1970-01-01
    • 2012-10-29
    • 2010-11-13
    相关资源
    最近更新 更多