Reference
Comparisons
10 side-by-side answers to the questions people actually arrive with — with 25 of the differences demonstrated by running both sides rather than described.
Every one says where the other side wins
Which format to pick is a judgement, and a comparison that recommends the same thing every time is a landing page rather than an answer. Each of these lists the cases for both, and a test requires both lists to be there. The differences underneath are not judgement at all — they are run, and what you see is what came back.- XML vs JSONJSON won the API era and XML still runs the documents. The difference that decides it is not verbosity — it is text interleaved with structure.7 dimensions · 3 run
- RSS vs AtomAtom is the better-specified format and RSS is the one everything reads. The real difference is strictness: Atom requires what RSS merely permits.8 dimensions · 2 run
- XSD vs RELAX NGXSD has the type system and RELAX NG has the grammar. Which matters more depends on whether your documents are records or prose.7 dimensions · 4 run
- XSD vs DTDDTDs came with XML and are still the only way to declare an entity. For everything else XSD replaced them — and this is the one comparison we cannot run.7 dimensions · nothing we can run
- Canonical XML vs minified XMLBoth rewrite a document without changing what it says. One makes equivalent documents byte-identical; the other just makes them smaller.7 dimensions · 3 run
- XML vs HTMLThey look alike and behave in opposite ways: HTML forgives everything, XML forgives nothing. Feeding one to the other's parser is how this bites.7 dimensions · 3 run
- Attributes vs child elementsThe oldest argument in XML, and the only parts of it that are not taste: attributes cannot repeat, cannot nest, and cannot be extended later.7 dimensions · 3 run
- CDATA vs escaped textBoth produce the same character data. CDATA changes how the source is written, not what the tree contains — and its terminator has a limit escaping does not.6 dimensions · 3 run
- XPath vs CSS selectorsCSS selectors are concise for elements and attributes in an HTML-like tree. XPath moves in every direction, compares values, and returns text and attributes.6 dimensions · nothing we can run
- XSD vs SchematronA grammar says which elements may appear. Schematron says what they must add up to. Almost every regulated format needs both, layered.8 dimensions · 4 run
Already decided, and looking for the details? The format reference covers each one on its own terms.
Get started
Bring order to the XML your team can't afford to ignore.
Create a free account and get a private workspace to search, validate, diff, and monitor your XML feeds, sitemaps, schemas, and vendor integrations.