4 ms·
XML manages to be difficult and complex for both computers and people to read. That's why it fell out of favor.
by twblalock 7y ago
XML manages to be difficult and complex for both computers and people to read. That's why it fell out of favor.
- dwaite 7y agoTo be fair, there were a lot of very good ideas for a 2.x XML that solved a lot of the complexity. The problem was that none of the tools would be upgraded to support it. You'd basically have to create a new independent format to have proper compatibility once you introduce breaking changes.
- dwaite 7y agoFWIW, the common changes were to - remove DTDs completely. - by removing DTDs, remove non-standard entities - by removing DTDs, remove the concepts of notations and all external resource resolution from the core spec. Also, no possibility of entity-expansion attacks. - by removing DTDs, remove validation from the core spec. - merge namespaces into the core specification. At the same time, make them mandatory - merge the concept of qualified names into the core specification - by making namespaces mandatory, all the variations of how namespaces get exposed can be eliminated - merge the info-set definition into the core specification - by describing XML items and how they relate, implementations can understand what data is relevant at a particular point while parsing the document. - Merge xml:id into the core specification. You also had some other fun outlier concepts: - Eliminate prefixes from infoset. This is mostly a breaking change for XPath and XML Schema. - Add an explicit qualified name token (possibly recycling the entity declaration). This would allow the above specs to have their functionality restored, although likely with a new format. - Accept qualified names without prefixes, such as via a {uri}:{localName} syntax.