Nov 21, 2004

Why XML Infoset? and What is XML Infoset?

There is a little bit confusion in understanding "Why XML Infoset" exists and what is the difference between XML Infoset and XML Schema. Let me try to explain in simple words...

Let's a take a XML 1.0 and XML Schema.
XML 1.0 just defines syntax with no data model. XML Schema validates the XML .

Let's say that, i have these 2 tags:
[1] <data></data>
[2]</data>



Who defines both are same ? It's not XML but it's XML Infoset.
XML says the document is well formed but it doesn't say they are equivalent.

Let's say you want to use 1st one to indicate that there is no data and 2nd one to indicate "NULL".

Again,who defines. It's not XML but its XML Infoset.

XML defines syntax and XML Infoset defines the data model.

For application, it's datamodel that comes first and followed by syntax.

XML Infoset is for 'well formedness' and XML schema is for "validation".

XPath1.0,SOAP1.1 are all based on XML 1.0 with their own datamodel.
The latest specs XPath2.0,SOAP1.2 are all based on XML Infoset.( a common data model).

One more example, let's say that i have a parser which supports XML Infoset and my application can continue to work even if the parser takes input as XML binary.

HTH,
-Uday.