【问题标题】:XML DTD error message: element type is required in the declaration of element typeXML DTD 错误消息:元素类型的声明中需要元素类型
【发布时间】:2017-05-05 12:39:12
【问题描述】:

我搜索了互联网和这个网站,试图找到我的问题的答案。尽管我发现了类似的问题,但建议的解决方案并没有解决我的问题。

原来如此。我正在处理类的 xml 和关联的 DTD,当我在 Exchanger XML 编辑器中检查它时,我收到以下错误:“Ln 5 Col 37 - 元素类型“发布”的声明中需要元素类型。”

下面是我的 DTD 和 XML 文档。

<!ELEMENT Bibliography      (document*)>
<!ELEMENT document          (author+, title, publication, media)>
<!ELEMENT author            (#PCDATA)>
<!ELEMENT title             (#PCDATA)>
<!ELEMENT publication       (#PCDATA,(city?|year?))>
<!ELEMENT city              (#PCDATA)>
<!ELEMENT year              (#PCDATA)>
<!ELEMENT media             (#PCDATA)>



<Bibliography>
  <document>
    <author>Brennan, Niamh M., and John P. Conroy. </author>
    <title>"Executive Hubris: The Case of a Bank CEO. "</title>
    <publication>Accounting, Auditing and Accountability Journal 26.2 
    (<year>2013</year>): 175–95. </publication>
    <media> Print. </media>
  </document>
</Bibliography>

感谢您查看我的问题。

【问题讨论】:

    标签: validation dtd xml


    【解决方案1】:

    我从朋友那里得到了答案。这真的很简单。 XML 不会处理 PCDATA 和标签,所以我将“publication”元素从第一行修改为第二行:

    <!ELEMENT publication       (#PCDATA,(city?|year?))> 
    
    <!ELEMENT publication       ANY>
    

    现在可以了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-19
      • 1970-01-01
      • 2012-07-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多