čtvrtek 19. srpna 2004

ECMAScript for XML (E4X) kladivo na nedokonalost DOMu

Ač považuji specifikaci DOM za velice přínosnou, tak jsem byl v praxi mnohokrát vystaven její nedokonalosti či nedokonalosti její implementace. DOM je navržen tak obecně, aby s ním šla zpracovat jakákoliv obecná struktura dokumentu.

Snad nejvíce se s "nedokonalostí" DOM setkávám při práci s částí HTML dokumentu. Pokud nemají elementy jednoznačné identifikátory (atribut id), je iterování přes kolekce uzlů noční můrou. K tomu musíme připočíst, že Mozilla a Internet Explorer jinak nakládá s bílými znaky. Psát v takové situaci přenosné skripty je spíše dílem testování než efektivní práce.

Jak často jsem žehral, na absenci jazyku XPath nebo jeho obdoby. Příjemnou novinkou byl pro mě článek Petra Cimpricha Akta X 0407, ve kterém je řeč o rozšíření specifikace ECMAScriptu o podporu XML. Cílem tohoto rozšíření je usnadnit práci v oblastech kde DOM a XSLT nepostačuje.

Rozšíření je koncipováno především s ohledem na současné "javascriptové pisálky" tedy programátory. Tvůrci nás nechtěli evidentně zatěžovat novými technologiemi, ale vsadili na přímou integraci, která by měla usnadnit vstřebání tohoto rozšíření. E4X vypadá opravdu velice zajímavě, pokud se povedejeho integrace do jinak nepodajného Internet Exploreru, můžeme se těšit na efektivnější práci.