Warm tip: This article is reproduced from serverfault.com, please click

Understanding Various XML-related specs

发布于 2020-11-29 22:30:41

I am evaluating using a low-level XML parser in a library. The first one I looked at was expat, which says it supports "XML 1.0", or at least its Wikipedia does. Then, when I go to the W3 page to look up what "XML 1.0" is, it breaks things down into a few different sections:

enter image description here

So, my question is, could someone give me a high-level overview of where the various items fit into the XML standard? For example, if something says it supports "XML 1.0", does that mean it also supports XPath version X (1? 2? 3?), or how does "XML" translate to the support in all of its different components? Specifically, I was curious as to what version of XPath/XQuery various libraries support. Also, why is the query language defined separately from the 'storage' structure?

Questioner
David542
Viewed
11
kjhughes 2020-11-30 07:19:54

To support XML 1.0 is to be compliant with W3C's Extensible Markup Language (XML) 1.0

  • currently in its fifth edition

To support XML 1.1 is to be compliant with W3C's Extensible Markup Language (XML) 1.1

  • currently in its second edition
  • Changes include allowing additional Unicode characters in component names and additional Unicode characters in document content, adding NEL (#x85) to the list of EOL chars for IBM mainframe's benefit, a definition of normalized XML, etc. See Rationale and list of changes for XML 1.1.

Supporting XML 1.0 or 1.1 does not also imply support for XSLT, XPath, XQuery, XSD, or any other related XML standard. If a library purports to support one of those related standards, it should specifically state which version of those standards it supports.