2014-02-06 34 views
0

據我瞭解,良好的XML使用DTD來:獨立的XML和良好性

  1. 提供內部參考替換文本。
  2. 提供默認的屬性值。如果一個文件被宣佈爲獨立
  3. 規範化屬性值(好像1的特殊情況)

,確實丟失屬性表聲明或缺少實體聲明有任何相關性爲了良好的形式檢查?

更簡潔地說,一個格式良好的檢查器是否關心standalone = yes?

回答

1

規範性約束:聲明實體

在文檔沒有任何DTD,只有內部DTD 子集的文件,其中不包含參數實體引用,或一個「standalone ='文件 是'「,對於在外部子集或參數實體內未出現 的實體引用, 中給出的名稱實體引用必須與實體聲明中的名稱匹配, 不在外部子集或參數實體內出現, 除了格式良好的文檔不需要聲明任何 以下實體:amp,lt,gt,apos,quot。一般實體的聲明必須在任何引用它的引用之前出現在屬性列表聲明中的缺省值 中。

請注意,非驗證處理器不必強制讀取參數實體或外部子集中的 過程實體聲明;對於這樣的文件,只有在standalone ='yes'的情況下,聲明實體必須是 的規則纔是良構的約束。

請參閱http://www.w3.org/TR/xml11/#sec-references