XML信息集

XML訊息集XML Information Set,縮寫XML Infoset)是W3C規範(specification),該規範使用一套訊息項(information item)來描述XML文檔的一個抽象的資料模型。[1] XML訊息集這個規範意圖用於其他規範中以引用良好建構的XML文檔英語Well-formed XML document中的訊息。

一個XML文檔,只要是良好建構的並且滿足XML命名空間的約束,就存在有訊息集。一個XML文檔存在訊息集並不需要該XML文檔有效。

訊息集可以包含的總共11種不同類型的訊息項。

  1. 文檔訊息項 (總是存在)Document Information Item
  2. 元素訊息項(Element Information Item)
  3. 屬性訊息項(Attribute Information Item)
  4. PI訊息項(Processing Instruction Information Item)
  5. 未擴展實體引用訊息項(Unexpanded Entity Reference Information Item)
  6. 字元訊息項(Character Information Item)
  7. 註釋訊息項(Comment Information Item)
  8. 文檔型別宣告訊息項(The Document Type Declaration Information Item)
  9. 非解析實體訊息項(Unparsed Entity Information Item)
  10. 格式訊息項(Notation Information Item)
  11. 命名空間訊息項(Namespace Information Item)

訊息集推薦標準第二版於2004年2月4日被採納。

信息集補充(Infoset Augmentation)

信息集補充或信息集修改是指在Schema合法性檢查期間對信息集的修改的過程,例如,添加缺省的屬性。補充後的信息集被稱為post-schema-validation infoset(簡稱PSVI)。[2]

信息集補充是存在爭議的,有人認為它破壞了模塊化,並容易導致互操作性問題。這是由於是否進行了信息集補充,會使應用程式得到不同的信息。 [3]

XML Schema支持信息集補充,而RELAX NG並不支持信息集補充。

參見

XML信息集的實例包括:

參考文獻

外部連結