Splynou XML 1.0 a 1.1?

23. 11. 2007 13:47 (aktualizováno) Petr Cimprich

Lidé z pracovní skupiny XML Core přišli s originálním návrhem. Protože XML 1.1 nikdo nepoužívá, chtěli by změny, které přinesla verze 1.1, zahrnout do XML 1.0 jako erratum a XML 1.1 poté zrušit. Argumentují tím, že XML 1.1 je v mrtvém bodě. Parsery novou verzi nepodporují, protože neexistují skoro žádné dokumenty. A uživatelé netvoří dokumenty, protože by je neměli čím zpracovat. A když nikdo nechce používat novou lepší verzi po dobrém, je třeba přitvrdit a nařídit to povinně.

Celé to zní trochu šíleně. První moje výhrada je procedurální. Bylo by to zcela zřejmé zneužití errata. Erratum je prostředek, který umožňuje opravovat chyby ve specifikacích. Dále může upřesňovat nejasné formulace a doplňovat podspecifikované vlastnosti, ale vždy podle většinově přijímané interpretace. Provést erratem jasnou změnu významu by mělo být nepřípustné, a to i v případě změny zpětně kompatibilní. Účelová změna pravidel se nevyplácí, dobrý úmysl k tomu není dostatečným důvodem.

Druhá výhrada je věcná. XML 1.1 je opravdu v mrtvém bodě, ale nikoli shodou nešťastných okolností. Běžnému uživateli totiž XML 1.1 nepřináší prakticky žádný prospěch, tudíž nemá důvod opouštět zavedené XML 1.0. Kdyby zde byl prospěch, vznikla by poptávka po nové verzi a dodavatelé parserů by na ni rádi odpověděli. Zakopaný pes je tedy v tom, že XML 1.1 nevzniklo na základě poptávky, ale jako teoretická konstrukce svých autorů.

XML 1.1 má jednu důležitou výhodu. Zatímco XML 1.0 reflektuje stav Unicodu v době svého vzniku a nepočítá s dalším vývojem, verze 1.1 je v tomto ohledu otevřená. To je potenciálně užitečná vlastnost, jen ji v tuto chvíli málokdo umí docenit. Až význam této výhody vzroste, až starý Unicode 2.0 přestane stačit, až Mongolové, Khmérové, Etiopané a další začnou toužit po dokumentech XML ve svých jazycích, všechno se rozběhne samo a přirozeně. Do té doby bych nic nelámal přes koleno. Má-li XML 1.1 v budoucnu uspět, stane se tak i bez zbytečných triků.

Sdílet