Table des matières
Le World Wide Web est un réseau de ressources et d'informations. Le Web repose sur trois mécanismes pour rendre ces données disponibles le plus largement possible :
Les liens entre ces trois mécanismes apparaissent clairement à travers ces spécifications.
Chaque ressource disponible sur le Web -- document HTML, image, séquence vidéo, programme, etc. -- possède une adresse représentée sous la forme d'un URL, ou Uniform Resource Locator.
Les URLs sont divisés en trois parties distincts :
Prenons pour exemple l'URL d'origine de ce document dans sa version anglaise :
http://www.w3.org/TR/PR-html4/cover.html
Cet URL peut être compris comme suit : il est disponible via le protocole HTTP (voir [RFC2068]), hébergé sur la machine nommée www.w3.org, et accessible par le chemin "/TR/PR-html4/cover.html". D'autre protocoles possibles, dans un document HTML sont, par exemple, "mailto" pour un e-mail ou "ftp" pour FTP.
Voici un autre exemple pointant sur une boîte aux lettres :
... ceci est un texte... Pour tout commentaire, envoyez un e-mail à <A href="mailto:joe@someplace.com">Joe Cool</A>.
Des URLs peuvent pointer sur un endroit précis dans une page HTML. Ces URLs se terminent par un "#" suivi d'une "ancre" ou "lien local" ("fragment identifier" en anglais). Par exemple, voici un URL qui pointe sur un lien local baptisé section_2 de la page top.html :
http://somesite.com/html/top.html#section_2
Un URL relatif ne comporte pas de nom de protocole ni de nom de machine. Son chemin fait référence à une ressource disponible sur la même machine que le document courant. Les liens relatifs peuvent comporter d'autres composants relatifs (".." signifie un niveau au-dessus dans l'arborescence définie par le chemin), et des liens locaux.
Les URLs relatifs sont convertis en URLs complets en utilisant l'URL de base. Pour exemple, prenons l'URL de base : "http://www.acme.com/support/intro.html". L'URL relatif pour le lien hypertexte ci-dessous :
<A href="suppliers.html">Suppliers</A>
sera converti en l'URL complet "http://www.acme.com/support/suppliers.html", tandis que l'URL relatif pour l'image ci-dessous :
<IMG src="../icons/logo.gif" alt="logo">
sera converti en "http://www.acme.com/icons/logo.gif".
En langage HTML, les URLs sont utilisés dans les cas suivants :
Consultez la section concernant le terme URL pour plus d'informations.
Publier de l'information en vue d'une distribution mondiale nécessite l'usage d'un langage universellement compréhensible, d'une "langue maternelle" acceptée par tous les ordinateurs. Le langage de publication utilisé sur le World Wide Web est le HTML (HyperText Markup Language).
Le HTML donne aux auteurs le moyen de :
Le HTML a été développé à l'origine par Tim Berners-Lee, au CERN, et utilisé par le logiciel client Web (browser) Mosaic, développé au NCSA. Pendant les années 1990, il s'est épanoui en profitant de la croissance explosive du Web, tout en étant amélioré de nombreuses manières différentes. Le Web dépend des auteurs des pages qu'il comporte, et ces auteurs partagent a priori les mêmes conventions HTML. Ce partage a motivé un travail commun sur les spécifications du HTML.
Le HTML 2.0 (Novembre 1995, voir [RFC1866]) a été développé sous l'égide de l'Internet Engineering Task Force (IETF) pour standardiser des habitudes communes, fin 1994. HTML+ (1993) et [HTML30] (1995) proposaient des versions enrichies du HTML. Malgré l'absence de consensus à propos d'un standard, ces avant-projets menèrent à l'adoption d'un éventail de fonctions nouvelles. En 1996, les efforts du groupe de travail HTML du World Wide Web Consortium, pour parvenir à un standard, donnèrent naissance au HTML 3.2 (Janvier 1997, voir [HTML32]). Les changements entre le HTML 3.2 et le HTML 4.0 sont résumés dans l'annexe A.
D'un commun accord, les documents HTML devraient être lisibles sur toutes les plates-formes et sur différents logiciels clients (les browsers Web). Parvenir à l'interopérabilité permettra de baisser les coûts des fournisseurs de contenus parce qu'ils pourront publier leurs documents en une seule et unique version. Si cet effort n'est pas fait, nous courrons le risque de voir le Web devenir un monde propriétaire avec autant de formats incompatibles, et nous réduirons donc son potentiel commercial au détriment de tous ses participants.
Chaque version du HTML essaye de prendre en compte les accords les plus larges entre les acteurs de l'industrie, de telle sorte que les investissements fait par les auteurs de contenus ne soient pas gaspillés, et que leurs documents ne deviennent pas illisibles trop rapidement.
Le HTML a été développé avec l'idée que les matériels de toutes sortes doivent pouvoir utiliser l'information fournie sur le Web : ordinateurs personnels avec affichage de résolution et de couleurs variables, téléphones cellulaires, matériels de poche, matériels à synthèse et reconnaissance de la parole, accès au réseau rapides ou lents, et ainsi de suite.
Le HTML 4.0 étend le HTML avec des structures telles que les feuilles de styles, les scripts, les frames (fenêtres divisées par des cadres), l'inclusion d'objets, le support amélioré des écritures de droite à gauche ou mixtes, les tableaux et les formulaires enrichis, le tout offrant un accès facilité pour les personnes handicapées.
Cette version du HTML a été conçue avec l'aide d'experts dans le domaine de l'internationalisation, de telle sorte que les documents peuvent être écrits en toutes langues et diffusés partout dans le monde. La [RFC2070], qui traite d'internationalisation du HTML, a été respectée.
L'adoption du standard ISO/IEC:10646 (voir [ISO10646]) en tant que table de caractères standard pour le HTML est un pas important. C'est le standard mondial le plus complet, qui prend en compte les représentations internationales des caractères, les directions des textes, les ponctuations, et d'autres particularités spécifiques à certaines langues.
Le HTML propose maintenant un meilleur support des divers langages humains. Cela permet aux outils de recherches une indexation plus efficace des documents, une typographie de meilleure qualité, une synthèse de la parole améliorée, une gestion des césures correcte, etc.
Au fur et à mesure que la communauté du Web augmente et que ses membres se diversifient, avec des capacités et des aptitudes différentes, il devient crucial que les technologies employées soient appropriées à leurs besoins spécifiques. Le HTML 4.0 a été conçu pour rendre les pages Web plus accessibles aux handicapés physiques, par exemple :
Les auteurs qui composent des pages en tenant compte de ces notions d'accessibilité ne seront pas seulement remerciés par les utilisateurs intéressés, mais obtiendront d'autres bénéfices : Les documents HTML bien conçus, et qui distinguent la structure de la présentation, s'adapteront plus facilement aux nouvelles technologies.
Le nouveau modèle de tableaux est basé sur la [RFC1942]. Les auteurs disposent maintenant d'un plus grand contrôle sur la structure et sur la disposition (e.g. colonnes groupées). La possibilité de spécifier la largeur des colonnes permet aux logiciels clients d'afficher les données des tableaux au fur et à mesure du chargement, plutôt que d'attendre l'arrivée complète des informations contenues dans le tableau.
Le HTML offre maintenant une structure standard pour inclure des objets multimédia génériques et des applications dans les documents HTML. L'élément OBJECT (de même que ses ancêtres, les éléments IMG et APPLET, qui sont plus spécifiques) propose le moyen d'inclure des images, des séquences vidéo, de l'audio, des formules mathématiques, des applications spécialisées, et d'autres objets dans un document. Il permet aussi de spécifier une hiérarchie d'interprétations de rechange pour les logiciels clients qui ne supportent pas les interprétations spécifiques.
Les feuilles de styles simplifient le codage HTML et prennent largement en charge la présentation. Elles donnent aux auteurs comme aux utilisateurs un contrôle sur la présentation des documents -- informations de polices de caractères, alignements, couleurs, etc.
Une information de style peut être spécifiée pour un élément ponctuel ou pour des groupes d'éléments, et peut être placée à l'intérieur d'un document HTML ou dans une feuille de styles séparée.
Le système qui associe une feuille de styles à un document est indépendant du langage de feuille de style.
Avant l'existence des feuilles de styles, les auteurs avaient un contrôle limité sur l'aspect des pages. HTML 3.2 incluait un certain nombre d'attributs et d'éléments permettant alignements, tailles de polices de caractères et couleurs des textes. Les auteurs utilisaient aussi des tableaux et des images en guise de délimiteurs pour assurer la mise en page. Le temps nécessaire aux utilisateurs pour mettre à jour leurs logiciels clients implique que ces usages seront toujours employés pendant un certain temps. Cependant, et puisque les feuilles de styles offrent des moyens de présentation plus puissants, le World Wide Web Consortium cessera graduellement d'officialiser nombre d'éléments et d'attributs de présentation. Dans ce document (les spécifications HTML 4.0), les éléments et attributs "à risque" sont marqués comme "dépréciés". Ils sont généralement accompagnés d'exemples montrant comment parvenir aux mêmes résultats grâce à d'autres éléments ou grâce aux feuilles de styles.
Les spécifications HTML 4.0 comprennent trois Définitions de Type de Document (DTD) qui peuvent être utilisées pour authentifier des documents HTML 4.0 : une pour les déclarations de frame (frameset), une DTD dite "en vrac" pour les documents de transition, et une DTD rigoureuse qui exclue les éléments et attributs de présentation.
Grâce aux scripts, les auteurs peuvent concevoir des formulaires "intelligents" capables de réagir aux entrées saisies par les utilisateurs. Les scripts permettent aux concepteurs de créer des pages Web dynamiques, et d'utiliser le HTML comme moyen de construire des applications en réseau. Les mécanismes fournis pour associer HTML et scripts sont indépendants de tout langage de script particulier.
Quelques fois, les auteurs voudraient faciliter l'impression d'une série de documents. Lorsque des documents font partie d'un ensemble, les relations entre eux peuvent être décrites grâce à l'élément LINK du HTML, ou avec le "Resource Description Language" du W3C (voir [RDF]).
Nous recommandons aux auteurs et aux développeurs d'observer les principes généraux suivants à propos du HTML 4.0.
Le HTML trouve ses racines dans le SGML qui a toujours été un langage destiné à spécifier des structures de données. Avec la maturité, les éléments et attributs de présentation du HTML ont été remplacés par d'autres structures, en particulier les feuilles de styles. L'expérience montre que la séparation de la structure d'un document de sa présentation permet de réduire les coûts de diffusion sur un grand éventail de plates-formes, de médias, etc., et facilite la mise à jour de documents.
De manière à rendre le Web plus accessible à tous, notamment aux handicapés, les auteurs devraient prendre en compte la façon dont leurs documents seront interprétés sur une grande variété de plates-formes : logiciels de synthèse vocal, lecteurs en Braille, etc. Nous ne demandons pas aux concepteurs de brider leur créativité, mais plutôt de prendre en considération dans leurs ouvrages les moyens de remplacement qui sont offerts par le HTML. Le HTML 4.0 propose nombre de systèmes à cet effet (e.g., les attributs alt, accesskey, etc.)
De plus, les auteurs devraient garder à l'esprit que leurs documents sont aussi consultés par des visiteurs d'autres pays et dont les ordinateurs sont configurés très différemment. Pour qu'un document soit correctement interprété, les concepteurs devraient y inclure les informations nécessaires quant à la langue natale et la direction d'écriture, quant à l'encodage, et quant aux autres spécifications relatives à l'internationalisation.
En concevant soigneusement leurs tableaux et en utilisant les nouvelles fonctions adéquates du HTML 4.0, les auteurs permettront aux logiciels clients d'afficher les pages plus rapidement. La manière de construire des tableaux autorisant l'affichage progressif est expliquée dans la définition de l'élément TABLE. Les développeurs peuvent consulter les notes à propos des tableaux dans l'annexe sur les algorithmes incrementaux.