Nachodzi era nieczytelnego dla człowieka XML-a

Opracowany przez World Wide Web Consortium (W3C) język XML łączy w sobie zalety prostej bazy danych oraz języka HTML: jest łatwy w obsłudze, wygodny w przetwarzaniu i posługuje się językiem czytelnych dla człowieka znaczników. To jednak może doprowadzić go do zguby.

Zastosowanie XML jest bardzo szerokie: ze standardu korzysta zarówno projekt Gnome (graficznego środowiska dla systemów uniksowych) przy definiowaniu zawartości menu startowego, jak i handel elektroniczny - do przesyłania list zakupów.

Wygodny, ale obszerny

Od pewnego czasu pojawiają się jednak głosy krytyczne. Warto bowiem wiedzieć, że wygoda stosowania XML-a ma swoją cenę - plik zawierający informacje o zaledwie jednym kupionym przedmiocie jest zwykłym plikiem tekstowym i może mieć 1 kB lub więcej!

Najwięcej powodów do narzekania mają producenci urządzeń mobilnych, w których każdy bajt jest na wagę złota, a dodatkowa sekunda intensywnego przetwarzania danych oznacza szybsze zużycie baterii.

Robin Berjon z W3C przyznaje, że XML padł ofiarą własnego sukcesu - stosowano go nawet tam, gdzie niezbyt pasuje.

Binarny XML

Aby zaradzić problemom z objętością W3C rozpoczęło prace nad binarną wersją XML-a. Zainteresowanie nią już wyraziły Siły Powietrzne USA (XML w urządzeniach stosowanych w samolotach) oraz producenci telefonów komórkowych.

Pojawiły się jednak głosy sprzeciwu mówiące, że wprowadzenie nowego, niekompatybilnego z istniejącym standardu powoduje spore zamieszanie na rynku. Już teraz istnieje kilka opracowanych przez różne firmy (i niezależnie od W3C) metod zmniejszania objętości plików XML: Epway opracował swój własny binarny standard, AgileDelta sprzedaje oprogramowanie kompresujące pliki XML w locie a Sun uruchomił projekt o nazwie Fast InfoSet, dzięki któremu - według danych firmy - można przyspieszyć aplikacje korzystające z XML-a od 2 do 10 razy.

Trudna decyzja

W3C musi teraz zdecydować, czy opracuje jeden, pasujący do wszystkich zastosowań (a zatem mogący powtórzyć historię klasycznego XML-a) standard, czy może uruchomić kilka równoległych projektów. Ostateczna decyzja dotycząca kontynuowania prac nad nowym formatem ma zapaść latem.

Więcej informacji: ZDNet

Aktualizacja: 30 marca 2005 17:49

Jako że sprawa binarnego XML-a jest czymś, co na pewno zaważy na możliwościach urządzeń konstruowanych przynajmniej przez najbliższe kilka lat, postanowiliśmy zapytać Robina Berjona, czego możemy się spodziewać po tym formacie. Oto, co nam odpowiedział:

PC World Komputer: Jak będzie wyglądał binarny XML? Czy będzie to po prostu potraktowana bzipem, gzipem czy innym kompresorem forma XML-a? Czy może coś innego?

Robin Berjon: Celem XML Binary Characterization Working Group nie było zdefiniowanie binarnego formatu XML-a, lecz raczej analiza potrzeb przemysłu w celu sprawdzenia, czy binarna forma XML-a jest rzeczywiście potrzebna - i jeśli tak, to czy możliwe jest wykorzystanie jednego formatu we wszystkich zastosowaniach. Udało nam się dowieść, że na obydwa pytania odpowiedź brzmi "tak".

Zdajemy sobie sprawę, że format powinien być prosty, ale nie oznacza to - skompresowany gzipem czy bzipem. Metody te nie dają choćby zbliżonego do wystarczającego poziomu kompresji i powodują, że czas przetwarzania danych zwiększa się zamiast zmniejszać.

Plotki głoszą, że na rynku potrzebny jest więcej niż jeden format binarnego XML-a (jeden dla telefonów komórkowych, jeden dla set-top boksów itd.) Czy to prawda?

Ogólnie rzecz ujmując: nie. Po wnikliwej analizie wiemy na pewno, że przynajmniej w 80 procentach przypadków jeden format w zupełności wystarczy. Co więcej, jeden format jest wręcz niezbędny, ponieważ potrzebujące go urządzenia są ze sobą powiązane (branie ich pod uwagę jako należących do oddzielnych gałęzi przemysłu jest prowadzącą donikąd abstrakcją, która rozpada się w drobny mak, gdy tylko przyjrzeć się jej dokładniej). Ostatecznie mogą istnieć jeden czy dwa działy przemysłu, które różnią się nieco bardziej od innych i mają bardzo dziwne zapotrzebowanie (np. set-top boksy) - te będą miały inne formaty, ale stanowią rzadkie wyjątki. Zresztą nawet w tym wypadku nie jestem przekonany, że to wydarzy się w ten właśnie sposób, ponieważ wykorzystanie ustanowionego, obowiązującego standardu jest niesamowicie ważne.

Czy W3C zamierza użyć Fast InfoSet? Lub jakiegokolwiek innego istniejącego rozwiązania?

Jest zbyt wcześnie, żeby o tym mówić, ale wątpię, żebyśmy wykorzystali FI jako takie. Wkrótce zaczniemy przyglądać się kandydującym formatom i wtedy będę mógł powiedzieć nieco więcej na ten temat.