【问题标题】:XML/DTD The content of element type "Movie" must match "(Title,Price)". [7]XML/DTD 元素类型“Movie”的内容必须匹配“(Title,Price)”。 [7]
【发布时间】:2013-04-25 14:35:15
【问题描述】:

希望有人能指出这里的错误——这只是我正在尝试的一个示例,但我就是无法解析 XML .....

DTD 看起来像这样

<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT Movies (Movie*)>
<!ELEMENT Movie (Title, Price)>
<!ATTLIST Movie year CDATA #REQUIRED>
<!ELEMENT Title (#PCDATA)>
<!ELEMENT Price (#PCDATA)>

示例 XML 如下所示 (我无法阻止预览解释 XML!)

<?xml version="1.1"?>
<!DOCTYPE Movies SYSTEM "movies.dtd">
<Movies>
    <Movie year="1946">
        <Title>It’s a Wonderful Life</Title>
        <Price>14.95</Price>
    </Movie>
    <Movie year="1965">
        <Title>The Great Race</Title>
        <Price>12.95</Price>
    </Movie>
    <Movie year="1974">
        <Title>Young Frankenstein</Title>
        <Price>16.95</Price>
    </Movie>
    <Movie year="1975">
        <Title>The Return of the Pink Panther</Title>
        <Price>11.95</Price>
    </Movie>
</Movies>

我得到的错误是......

元素类型“Movie”的内容必须匹配“(Title,Price)”。

对于数据库中的每个“电影”条目,我希望它是愚蠢的 - “因为我看不到它!

谢谢

【问题讨论】:

  • 我看到的唯一问题是 DTD 文件中存在 XML 声明。祝你好运。

标签: xml dtd


【解决方案1】:

XML 版本应该是 1.0-:

<?xml version="1.0"?>

最后一个结束标签 &lt;/Movies&gt; 丢失 - 可能只是错过了将其粘贴到帖子上。

【讨论】:

  • 是的 - 它在原版中,只是没有出现在帖子中 - 抱歉。我会试试 1.0
【解决方案2】:

好的 - 没有其他响应,但我发现了问题。

这取决于 XML 文件的格式。我有点惊讶,但我去掉了所有的行尾等,一切都很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多