DHTML ou le Html dynamique
Le Document Objet Model
Home

La notion d'objet.

Conçu dans les années 1980, le Html (HyperText Markup Langage) n'est finalement qu'un long fichier de texte auquel on a ajouté des balises (Markups) - prédéfinies et statiques - afin que les navigateurs puissent afficher ce texte dans une mise en forme ou une mise en page identique sous différentes plates-formes.
Html n'a par essence aucune structuration et encore moins d'hiérarchisation de ses composants.

La perception d'une page Html comme un ensemble d'éléments et qui plus est hiérarchisés, est une véritable révolution dans le domaine de la publication Html. Ces éléments sont aussi repris sous le vocable d'objets au sens des langages de programmation comme C ou C++.

A la mi-97, Netscape a entamé le sujet avec sa version 4.0 en créant une balise propriétaire <LAYER>. Explorer 4.0, qui est apparu quelques mois plus tard, a pu aller plus avant dans le concept objet en exploitant quant à lui, le concept des feuilles de style repris et développé par Microsoft.

Il devenait alors évident que ce concept d'objets devait être standardisé par le World Wide Web Consortium (W3C) avec comme objectif de dégager un modèle commun pour la définition des objets dans un document Html. Ce qui a donné naissance au Document Object Model repris sous l'abréviation de DOM.


 

Le Document Object Model ou DOM

Ce "Document Object Model" n'est encore à ce jour (septembre 98) qu'un document de travail et n'est donc toujours pas finalisé.

Si les principaux protagonistes, Netscape et Microsoft, sont unanimement d'accord sur la nécessité d'introduire un principe (commun) de la notion d'objets, leurs avis divergent complètement sur les techniques à mettre en oeuvre pour le réaliser.

Leurs principaux points de désaccord peuvent se résumer ainsi :

  • Netscape 4.0, conçu plusieurs mois avant son concurrent, a une conception interne assurément moins élaborée et moins souple que Explorer 4.0.
  • Netscape 4.0 n'a accès qu'à quelques éléments de la page alors que IExplorer 4.0 a accès à tous les éléments de la page.
  • A travers cette implémentation de la notion d'objet, Netscape défend (ou tente de récupérer) le concept de Java et Microsoft prône bien sûr ses ActiveX et autres Active Channels.
  • Les versions 5.0 de Microsoft et de Netscape se profilent à l'horizon 99.

Constatant que dans l'état actuel des technologies les avis étaient inconciliables, le W3C a préféré jeter des bases plus solides pour l'avenir en rattachant cette notion commune d'objets au XML (eXtensible Markup Language) qui sera compatible avec les futures évolutions 5.0 des navigateurs.


 

Le XML en bref

Il faut bien l'avouer, le Html avec toutes ses balises rajoutées au fil des années, fait un peu désordre. Il subit en outre une demande énorme en termes de besoins en publication sur Internet auxquels il ne peut répondre comme les signes mathématiques, les notes de musique ou le braille.

Le XML donne l'impression de repartir avec une feuille blanche. XML n'est en aucune façon, un Html++ mais un nouveau petit frère pour le Html car XML et Html ont la même mère c-à-d le langage SGML.

Pas simple tout cela...

D'abord le SGML (pour Standard Generalized Markup Language), est une norme internationale (ISO 8879), qui régit la structure et le contenu des différents types de documents électroniques. Le SGML est en quelque sorte un "language-mère" utilisé pour décrire les milliers de documents électroniques que l'on retrouve dans les multiples domaines de l'activité humaine.

Le HTML n'est que un de ces types de documents avec ses balises imposées et qui est utilisé pour les documents électroniques qui circulent sur le Web.

Avec le XML, on retourne aux sources du SGML en permettant au "designer" de définir son propre type de document et, côté spectaculaire de la chose, de créer ses propres balises (voir le X de eXtensible).


Tant Microsoft que Netscape annoncent que le XML sera disponible avec les versions 5.0 de leur browser.

Nous ne manquerons pas de revenir plus en détail sur le XML, plus tard dans l'élaboration de ce site consacré à la maîtrise du Html.


 

En conclusion

Pour en revenir à la définition d'objets, chaque fabricant de browser pourra avec le Xml implémenter des objets, selon sa propre perception et selon sa propre technologie, définir ses propres balises relatives aux objets et le tout sera géré de façon commune par tous les browsers compatibles avec le XML. Et voilà, le tour est joué.

Home