Ta cena je rozpuštěná v celkové nešikovnosti a ukecanosti xml.
Jak už bylo napsáno, XML není ukecané.
A taky třeba ve velikosti knihoven, které jsou na to xml potřeba.
Nikoli. Pro transformace nebo dotazování jsou jiné knihovny, než pro parsování XML. Složitost XML parserů je způsobená DTD a uživatelskými entitami, které stejně nikdo nepoužívá. Takže by úplně stačilo vydat standard XML 1.2, který tohle vyhodí, kodifikovalo by se tak to, jak se XML reálně používá, a nemuseli se vymýšlet hlouposti jako JSON.
Jak jsem psal, záleží na kontextu. V práci nedělám školní příklady, ale nic ze zmíněného jsem za poslední roky nepotřeboval. I kdyby to bylo úplně zadarmo, tak je mi to k ničemu.
Já to potřebuji tak v polovině případů práce s JSON. Spíš bych řekl, že vás ani nenapadlo, že byste mohl něco takového potřebovat. Že byste třeba informace z JSON souboru mohl získat jednoduchým dotazem, než abyste něco zjišťoval ručně.
Ono to není "XML znovu a hůře".
Bohužel je. Opravdu špatně je na XML jen zmiňované DTD spolu s uživatelskými entitami, a odpůrci XML ani netuší, že něco takového existuje, takže to nemohou kritizovat. Jinak se do JSONu postupně doplňuje vše, co už XML dávno má – pokud je to možné. A když to není možné, jako ty komentáře, začne se vymýšlet nějaký JSON5.
Ono je to "něco jako XML s dost odlišnými kompromisy".
Mohl byste nějaký z těch odlišných kompromisů popsat? Zajímala by mne jediná výhoda JSONu oproti XML. Jaká je výhoda absence komentářů? Jaká je výhoda toho, že se teprve po letech doplňují jazyky pro schémata nebo dotazování, přičemž stále nejsou běžnou součástí nástrojů pro JSON? Jaká je výhoda absence jmenných prostorů?
A ujalo se právě proto, že ve spoustě případů jsou výhody xml bezcenné a zůstává jen lehký ale všudypřítomný opruz.
Pokaždé, když dělám s JSONem, připadám si, jak kdyby mi chyběly obě ruce. Pro někoho, kdo se narodil už bez rukou, mohou opravdu ruce připadat bezcenné. Ale není to tak. A ten „lehký ale všudypřítomný opruz“ je co přesně? Že vám editor musí doplnit název koncového tagu, a XML se pak mnohem lépe čte?
A že se občas ukáže, že byly počáteční analýzy mimo, je bohužel smutná realita vývoje.
Smutná realita v tomto případě je, že jsme tu měli docela dobře fungující XML s ekosystémem, který se dále zlepšoval, a místo toho, aby se odpárala ta jedna nepoužívaná ošklivá vlastnost XML, přišlo se s novým formátem, který měl být údajně jednodušší, ale ve skutečnosti je až tak jednoduchý, až je hloupý. A teď se u tohoto nového formátu s patnáctiletým zpožděním opakuje vynalézání toho, co se vynalezlo u XML. Se stejnými chybami jako u XML a navíc na horším podvozku.
Mimochodem, je zajímavé, že přesně to, co JSON vytýká XML, začali někteří vytýkat JSONu a vytvořili YAML. Nadějné je akorát to, že ty formáty jako JSON a YAML vznikají stále častěji a vzájemně se tlučou, zatímco XML vedle nich stabilně trvá. A má slušné XSD na definici schémat, výborné XSLT 3.0 na transformace, zatím nedoceněné XQuery na dotazování…