neděle 4. ledna 2004

Poznáváme DOM I.

DOM neboli Document Object Model představuje zaklínadlo, které je ověnčeno mnoha nepřesnostmi a mýty, které se kolem něj objevily. Rád bych poodhalil skutečnou tvář a možnosti, které specifikace DOM nabízí.

Co je Document Object Model

Proto aby bylo možné dobře pochopit souvislosti, které vedly k vzniku specifikace DOM si musíme vysvětlit co to vlastně DOM je a co představuje.

DOM je ve své podstatě pouze sada rozhraní tj. API určených pro prácí s validními HTML a XML dokumenty. Definuje logickou strukturu dokumentu a prostředky zprostředkující práci s dokumentem.

DOM standardizuje přístup a manipulaci s dokumentem a umožňuje programátorovi transparentním způsobem pracovat při tvorbě, procházení a modifikaci dokumentu. Specifikace DOM je popsána sadou programových rozhraní, kterou jsou z hlediska programovacího jazyku nezávislé.

Za specifikací DOM stojí konsorcium W3C a myšlenka na jednotné a jazykově či platformově nezávislé rozhraní pro práci s dokumentem byla hlavním důvodem vzniku specifikace. K popisu jednotlivých rozhraní specifikace byl použit jazyk IDL(Interface Definition Language).

Transparentnost na straně jedné a ochota sjednotit přístup pro práci s dokumentem na straně druhé umožnily brzkou implementaci DOMu v Jave a především v internetových prohlížečích, kde s jazyky(JavaScript a JScript) ECMAScriptu vytvořil standard pro práci s HTML dokumenty.

Omezení proprietárních DHTML rozšíření určených pro práci s dokumentem u jednotlivých prohlížečů bylo rovněž jedním z faktorů, které přispěly k specifikaci DOM. Bohužel určité zbytky těchto proprietárních rozšíření se z důvodů zpětné kompatibility nepodařilo úplně odstranit. Stejně jako se nepovedlo vymýtit mýtus DOMu jako prostředku určeného pouze pro internetové prohlížeče.

Nejdůležitějším poznatkem by měla být pochopení, že DOM představuje transparentní, platformově a jazykově nezávislé rozhraní, které umožňuje jednotným způsobem práci s XML a HTML dokumentem.

Příště se podíváme na strukturu dokumentu rozloženou do stromu uzlů abychom viděli logickou strukturu, která umožňuje definovat rozhraní určená pro práci s dokumentem. V další části bychom mohli nakouknout do samotného rozdělení specifikace na jednotlivé moduly. Specifikaci DOM lze nalézt v dokumentu Document Object Model (DOM) Level 1 Specification (Second Edition) a z tohoto dokumentu bych i nadále rád vycházel.

Související články