XML Information Set

XML Information Set (Infoset) is a W3C specification describing an abstract data model of an XML document in terms of a set of information items. The definitions in the XML Information Set specification are meant to be used in other specifications that need to refer to the information in a well-formed XML document.

An XML document has an information set if it is well-formed and satisfies the namespace constraints. There is no requirement for an XML document to be valid in order to have an information set.

An information set can contain up to eleven different types of information items:

  1. The Document Information Item
  2. Element Information Items
  3. Attribute Information Items
  4. Processing Instruction Information Items
  5. Unexpanded Entity Reference Information Items
  6. Character Information Items
  7. Comment Information Items
  8. The Document Type Declaration Information Item
  9. Unparsed Entity Information Items
  10. Notation Information Items
  11. Namespace Information Items

Infoset recommendation Second Edition was adopted on February 4, 2004.


Infoset Augmentation

Infoset augmentation or infoset modification refers to the process of modifying the infoset during schema validation, for example by adding default attributes. The augmented infoset is called the post-schema-validation infoset, or PSVI.
XML Schema 1.1 Part 1: Structures

Infoset augmentation is somewhat controversial, with claims that it is a violation of modularity and tends to cause interoperability problems, since applications get different information depending on whether or not validation has been performed.
RELAX NG and W3C XML Schema, James Clark, 4 Jun 2002

Infoset augmentation is supported by XML Schema but not RelaxNG.


References


External links

  • W3C XML Information set recommendation (Second Edition)
  • fastinfoset (for binary encoding of the Infoset)

Comments are closed.