6 Les types de données HTML fondamentaux

Sommaire

  1. Information de casse
  2. Types SGML fondamentaux
  3. Cha‰nes de texte
  4. URLs
  5. Couleurs
    1. Notes sur l'utilisation des couleurs
  6. Longueurs
  7. Types de contenu Content types (types MIME)
  8. Language codes
  9. Encodages de caractère
  10. Caractère unique
  11. Dates et heures
  12. Types de lien
  13. Descripteurs de média
  14. Donnée script
  15. Noms de cible pour Frames

Cette section de la spécification décrit les types de données fondamentaux qui peuvent appara‰tre comme un contenu d'élément ou une valeur d'attribut.

Consultez le manuel SGML, pour obtenir une information préliminaire sur la lecture d'une DTD HTML.

6.1 Information de casse

Chaque définition d'attribut inclut l'information à propos de la sensibilité à la casse de ses valeurs. L'information de casse est présenté avec les clés suivantes :

CS
La valeur est sensible à la casse (i.e., les clients interprêtent "a" et "A" différemment).
CI
La valeur est non sensible à la casse (i.e., les clients interprêtent "a" et "A" de la même manière).
CN
La valeur n'est pas sujette au changement de casse, e.g., parce-que c'est un nombre ou un caractère de la table des caractères du document.
CA
La définition de l'éléement ou de l'attribut donne lui même l'information sur la casse.
CT
Consultez la définition du type pour obtenir des détails sur la sensibilité à la casse.

Si une valeur d'attribut est une liste, les clés s'appliquent à toutes les valeurs de la liste, à moins d'un indication contraire.

6.2 Types SGML fondamentaux

La déclaration de document type spécifie la syntaxe du contenu de l'élément HTML et des valeurs d'attribut en utilisant les jetons SGML suivants (e.g., PCDATA, CDATA, NAME, ID, etc.). L'information à propos de la signification sur ces jetons et comment les clients devraient les interpréter peut être trouvé dans [GOLD90].

Voici un résumé des informations clés :

6.3 Cha‰nes de texte

Un nombre d'attributs (%Text; dans la DTD) signifie que le texte est "lisible par l'humain". Pour une introduction à propos des attributs, consultez le manuel à propos des attributs.

6.4 URLs

Cette spécification utilise le terme URL pour le terme générique d'identificateurs de ressource appelés "URI" dans [RFC1630], incluant le terme "URL" comme défini dans [RFC1738] et [RFC1808], et le terme "URN" comme défini dans [RFC2141].

Les URLs sont représentés dans la DTD par l'entité paramètre %URL.

Les URLs en général sont sensibles à la casse. Il existe des URLs, ou des parties d'URLs, où la casse importe peu (e.g., les noms de machines), mais déterminer ceci peut ne pas être facile. Les utilisateurs devraient toujours considérer que les URLs sont sensibles à la casse.

Les URLs relatifs sont ramenées à des URLs complets utilisant un URL de base. [RFC1808] définit l'algorithme normatif de ce procédé. Pour obtenir des informations à propos des URLs de base, consultez la section sur les URLs de base dans le chapitre sur les liens.

Consultez l'appendice, pour obtenir de l'information à propos de l'écriture des caractères non-ASCII dans les URLs.

6.5 Couleurs

La valeur d'attribut de type "color" (%Color) se réferre aux définitions des couleurs comme spécifié dans [SRGB]. Une valeur de couleur peut être un nombre hexadécimal (précédé d'un dièse) ou d'un des 16 noms de couleurs suivants. Les noms des couleurs sont insensibles à la casse.

Nom des couleurs et valeurs sRGB
Black = "#000000" Green = "#008000"
Silver = "#C0C0C0" Lime = "#00FF00"
Gray = "#808080" Olive = "#808000"
White = "#FFFFFF" Yellow = "#FFFF00"
Maroon = "#800000" Navy = "#000080"
Red = "#FF0000" Blue = "#0000FF"
Purple = "#800080" Teal = "#008080"
Fuchsia = "#FF00FF" Aqua = "#00FFFF"

Donc, les valeurs de couleur "#800080" et "Purple" se réferre toutes deux à la couleur violette.

6.5.1 Notes sur l'utilisation des couleurs

Bien que les couleurs peuvent être un artifice signifcatif d'ajout d'informations à un document et rendre celui-ci plus lisible, considérez les règles suivantes quand vous utilisez des couleurs dans vos documents :

6.6 Longueurs

HTML spécifie trois type de valeurs de longueur pour les attributs :

  1. Pixel : La valeur (%Pixels dans la DTD) est un entier qui représente le nombre de pixels du support (écran, papier). Ainsi, la valeur "50" signifie cinquante pixels. Pour obtenir des informations à propos de la norme définissant le pixel, consultez [CSS1].
  2. Length : La valeur (%Length dans la DTD) peut être un %Pixel; ou un pourcentage de l'espace horizontal ou vertical disponible. Ainsi, la valeur "50%" signifie la moitié de l'espace disponible.
  3. MultiLength: La valeur (%MultiLength dans la DTD) peut être une %Length; ou une longueur relative. Une longueur relative a la forme "i*", où "i" est un entier. Quand l'espace alloué est partagé par plusieurs éléments réclamant cet espace, les clients fixent les longueurs en pixel et pourcentage en premier, et divise le reste de l'espace restant en longueurs relatives. Chaque longueur relative reŸoit une portion de l'espace disponible qui est proportionnel à l'entier précédent le "*". La valeur "*" est équivalente à "1*". Ainsi, is 60 pixels d'espaces sont disponibles après que le client ait alloué l'espace en pixel et pourcentage et les longueurs relatives en concurrence étant 1*, 2*, et 3*, le 1* sera fixé à 10 pixels, le 2* sera fixé à 20 pixels, et le 3* sera fixé à 30 pixels.

Les valeurs de longueur sont neutres à la casse

6.7 Types de contenu (Types MIME)

Note. Un type média (défini dans [RFC2045] et dans [RFC2046]) spécifie la nature d'une ressource lié. Cette spécification emploie le terme content type plutôt que type média par respect des usages courants.

Ce type est représenté dans la DTD par %ContentType.

Les types de contenus sont insensibles à la casse.

Les exemples de types de contenus comprennent "text/html", "image/png", "image/gif", "video/mpeg", "audio/basic", "text/tcl", "text/javascript", et "text/vbscript". Pour la liste actuelle des types MIME, consultez [MIMETYPES].

Note. Le type de contenu "text/css", bien que non enregistré par IANA, devrait être utiliser quand la ressource liée est une feuille de style [CSS1].

6.8 Codes de langue

La valeur des attributs dont le type est un code de langue (%LanguageCode dans la DTD) se réferre à unn code de langue tel que spécifié par [RFC1766]. Pour obtenir des informations à propos des codes de langue en HTML, consultez la section sur les codes de langue. Les espaces ne sont pas permis au sein du code de langue.

6.9 Encodage des caractères

Les attributs "charset" (%Charset dans la DTD) se réferre à un encodage de caractère tel que décrit dans la section sur l'encodage de caractère. Les valeurs doivent être des cha‰nes de caractères (e.g., "euc-jp") tiré du registre IANA (voir [CHARSETS] pour une liste complète). Les noms pour l'encodage des caractères sont insensibles à la casse.

Les clients doivent suivre les étapes spécifié dans cette section afin de choisir l'encodage des caractères afin de déterminer l'encodage des caractères d'une ressource externe.

6.10 Caractères uniques

Parfois les attributs appelle un caractère unique de la table des caractères du document. Ces attributs prennent le type %Character dans la DTD.

Les caractères uniques peuvent être spécifiés avec les caractères références (e.g., "&").

6.11 Dates et heures

[ISO8601] permet beaucoup de variationbs dans la représentation des dates et des heures. La spécification actuelle utilise l'un de ces formats décrits dans le profil [DATETIME] pour la définition des cha‰nes légales de date/heure (%Datetime dans la DTD).

Le format est :

  YYYY-MM-DDThh:mm:ssTZD
where:
     YYYY = année sur 4 chiffres
     MM   = mois sur 2 chiffres (01=Janvier, etc.)
     DD   = jour du mois sur 2 chiffres (01 à 31)
     hh   = heure sur 2 chiffres (00 à 23) (am/pm non autorisé)
     mm   = minute sur 2 chiffres (00 à 59)
     ss   = seconde sur 2 chiffres (00 à 59)
     TZD  = indicateur de fuseau horaire (Time Zone Designator)

L'indicateur de fuseau horaire est un de ceux-ci :

Z
indique UTC (Temps Universel Coordonné). Le "Z" doit être en majuscule.
+hh:mm
indique que l'heure est l'heure locale avec hh heures et mm minutes avant UTC.
-hh:mm
indique que l'heure est l'heure locale avec hh heures et mm minutes après UTC.

Les composantes exposés doivent être présente exactement avec cette écriture et ponctuation. Notez que le "T" apparait littéralement dans la cha‰ne (il doit être en majuscule), afin d"indiquer le début de l'élément temps, comme spécifié dans [ISO8601]

Si une application de génération ne connait pas l'heure au niveau des secondes, elle peut utiliser la valeur "00" pour les secondes (et minutes et heures si nécessaires).

Note. [DATETIME] ne résoud pas les secondes de rattrapage.

6.12 Types de liens

Les auteurs peuvent utiliser les types de liens suivants reconnus, listés ici avec leur interprétation conventionnelle. Ceux ci sont définis comme étant non sensible à la casse, i.e., "Alternate" à la même signification que "alternate". Dans la DTD, %LinkTypes se réferre à une liste de types de liens séparés par des espaces. Les espaces ne sont pas permis au sein des types de lien.

Les clients, les moteurs de recherche, etc. peuvent traiter les types de liens dans une grande variété d'interprétation. Par exemple, les clients peuvent fournir un accès à des documents liés à travers une barre de navigation.

Alternate
Désigne des versions de substitution pour le document dans lequel le lien est présent. Quand celui-ci est utilisé avec l'attribut lang, cela implique une version traduite du document . Lorsqu'il est utilisé avec l'attribut media cela implique une version spécifique pour un médium particuler (ou un média).
Stylesheet
Référence à une feuille de style externe. Voir la section sur les feuilles de style externe pour les détails. ceci est utilisé avec le type de lien "Alternate" afin de définir des feuilles de style alternative pour l'utilisateur.
Start
Référence au document de départ d'une collection de documents. Ce type de lien indique à un moteur de recherche quel document est considéré par l'auteur comme le point de départ de l'ensemble des documents.
Next
Référence au prochain document dans une séquence linéaire de documents. Les clients peuvent choisir de précharger le document "suivant" (next), afin de réduire le temps de chargement apparent.
Prev
Référence au document précédent dans une série ordonnée de documents. certains clients admettent également le synonyme Previous.
Contents
Référence à un document faisant fonction de sommaire. Certains clients admettent également le synonyme ToC ( de "Table of Contents").
Index
Référence à un document fournissant un index du document courant.
Glossary
Référence à un document fournissant un glossaire des termes relatifs au document courant.
Copyright
RRéférence à un document fournissant un avertissement de copyright pour le document courant.
Chapter
Référence à un document servant de chapitre pour le document courant.
Section
Référence à un document utilisé comme section dans un ensemble de documents.
Subsection
Référence à un document utilisé comme sous-section dans un ensemble de documents.
Appendix
Référence à un document utilisé comme appendice dans un ensemble de documents.
Help
Référence à un document offrant une aide (plus d'information, liens vers d'autres sources d'informations, etc.)
Bookmark
Référence à signet. Un signet est un lien qui est un point d'entrée dans un document à l'intérieur d'un document étendu. L'attribut title peut être utilisé, par exemple, pour nommer le signet. Noter que plusieurs signets peuvent être définis dans chaque document.

Les auteurs peuvent souhaiter définir des types de liens additionnels non définis par la spécification. S'ils le font, ils devraient utiliser un profil pour annoncer les conventions utilisées pour définir les types de liens. Voir l'attribut profile de l'élément HEAD pour plus de détails.

A propos des discussions sur les types de liens, consulter la section sur les liens dans les documents HTML.

6.13 Descripteurs de Media

Voici la liste des descripteurs de media reconnu (%MediaDesc dans la DTD).

screen
Prévu tout d'abord pour les écrans non paginés, mais également applicables pour les présentations projetées et imprimées.
tty
Prévu tout d'abord pour une grille de caractères à chasse fixe, comme les fax, terminaux, ou instruments portables avec des capacités d'affichage limité.
tv
Prévu pour les appareils de type télévision (faible résolution, couleur, défilement limité).
projection
Prévu pour les projecteurs.
handheld
Prévu pour les agendas électroniques personnels (petit écran, monochrome, graphique bitmap, bande passante limitée).
print
Prévu pour le matériel paginé, opaque et pour les documents vu sur un écran en mode "aperŸu avant impression".
braille
Prévu pour les appareils à fonction braille.
aural
Prévu pour les synthétiseurs vocaux.
all
Valables pour tout appareil.

Les versions futures de HTML peuvent introduire de nouvelles valeurs et peuvent permettrent des valeurs paramétrées. Pour faciliter l'introduction de ces extensions, les clients se conformant à cette spécification doivent être capable de traiter la valeur d'attribut media comme suit :

  1. les caractères virgules (Unicode decimal 44) sont utilisés pour séparer la valeur de l'attribut media dans une liste d'entrée, e.g. :
    media="screen, 3d-glasses, print and resolution > 90dpi"
    

    est compris de cette manière :

    "screen"
    "3d-glasses"
    "print and resolution > 90dpi"
    
  2. Chaque entrée est tronquée juste avant le premier caractère qui n'est pas une lettre ASCII US [a-zA-Z] (Unicode decimal 65-90, 97-122), un chiffre [0-9] (Unicode hex 30-39), ou un tiret (45). Dans l'exemple cela donne :
    "screen"
    "3d-glasses"
    "print"
    
  3. Une corrélation sensible à la casse est alors établie avec l'ensemble des types de média défini au-dessus. Les clients peuvent ignorer les entrées qui ne correspondent pas. Dans l'exemple, nous acons laissé screen et print.

Note. Les feuilles de styles peuvent contenir en leurs seins des variations dépendantes du média (e.g., la construction du @media CSS). Dans certains casn il peut être approprié d'utiliser "media=all".

6.14 Données script

Le contenu de l'élément SCRIPT et la valeur des attributs événements intrinsèques sont des données script (indiqué par le %Script; dans la DTD). Ces données ne doivent pas être évaluées par le client comme descripteur HTML. Le client doit passer les données telle quelles à interprêteur de script. La sensibilité à la casse est dépendant du langage de scripting.

Les lecteurs HTML doivent être capable de reconna‰tre les données script dès la balise de début et se terminer dès que les délimiteurs ETAGO ("</") sont suivis un caractère ([a-zA-Z]). Les données scripts ne se termine pas nécessairement avec la balise de fin </SCRIPT> mais sont terminées par "</" suivi par un caractère.

Par conséquent, tout descripteur HTML qui est envoyé par le moteur de scripting (qui fait ce qu'il veut avec le descripteur) doit être "escaped" afin de ne pas pertuber le lecteur HTML. Les concepteurs de chauqe langage de scripting devraient recommander un support spécifique en fonction du langage afin de résoudre ce problème.

EXEMPLE ILLEGAL :
Le code suivant est invalide dû à la présence des caractères "</" présents, comme une partie de "</EM>", à l'intérieur de l'élément SCRIPT :

    <SCRIPT type="text/javascript">
      document.write ("<EM>Cela ne marche pas</EM>")
    </SCRIPT>

un lecteur conforme doit traiter les caractères "</" comme indicateur de fin des données script, ce qui clairement n'est pas ce que l'auteur a prévu.

En JavaScript, ce code peut être écrit correctement en s'assurant que la présence du délimiteur ETAGO ne soit apparente avant un caractère SGML de départ :

    <SCRIPT type="text/javascript">
      document.write ("<EM>Ceci marche<\/EM>")
    </SCRIPT>

En Tcl, On peut l'accomplir comme cela :

    <SCRIPT type="text/tcl">
      document write "<EM>Ceci marchera<\/EM>"
    </SCRIPT>

En VBScript, Le problème peut être évité par la fonction Chr() :

    "<EM>Ceci marchera<" & Chr(47) & "EM>"

6.15 Noms des cibles Frame

A l'exception des noms réservés listés ici, les noms de cible des frames (%FrameTarget; dans la DTD) doivent commencer avec un caractère alpahbétique (a-zA-Z). Les clients devraient ignorer tous les autres noms cibles.

Les noms suivants sont réservés et ont une signification particulière.

_blank
Le client devrait chargé le document désigné dans une nouvelle fenêtre, non nommé.
_self
Le client devrait charger le document dans le même frame que l'élément qui se réferre à cette cible.
_parent
Le client devrait charger le document dans le FRAMESET immédiat, parent de l'actuel frame. Cette valeur est équivalente à _self si le frame actuel n'a pas de parent.
_top
Le client devrait charger le document dans la fenêtre originale, complète (annulant ainsi tous les autres frames). Cette valeur est équivalente à _self si le frame actuel n'a pas de parent.