Voir aussi
Dans la même rubrique :
Initiation au xhtml - 3 : Rappel sur les pointeurs internet (URI/URL)
Initiation au xhtml - 2
Initiation au xhtml - 1Du même auteur :
La Biam ferme une partie de ses rubriques
xhtml - 4 : Les entités
Qualité, centres d’intérêt et motivations des participants aux forums médicaux (3/3)
Qualité, centres d’intérêt et motivations des participants aux forums médicaux (2/3)
Qualité, Centres d’intérêt et motivations des participants aux forums médicaux (1/3)
Qualité, centres d’intérêt et motivations des participants aux forums médicaux.
De l’interactivité des forums et de l’EBM
Faisons le point sur le site mmt-fr.org
La mort d’un site : le commencement de l’absence de fin ou le début des ennuis ?Même indexation :
Technique Web
Installer un script PHP pour les nuls
Réaliser un formulaire de contact (4/4)
Le web structuré et sa présentation
Utilisation de la classe easyRSS
Conseils pour débuter un site web
Belles icônes pas chères !
Comment faire migrer son site ?
Quand JavaScript est désactivé... 1/2
Page contact en PHP 1/3
Initiation au xhtml - 1
Quand JavaScript est désactivé... 2/2
Un serveur dédié pour les nuls
La Netiquette des forums
Un lecteur RSS pour votre site 1/2
Un lecteur RSS pour votre site 2/2
Etablir un questionnaire statistique en ligne
Quiz en PHP 1/3
Menu dépliant pour les rubriques
Gestion d’une rubrique... en attendant SPIP
Editer plusieurs fichiers de syndication 2/3
Quiz en PHP 2/3
Réaliser un formulaire de contact (2/4)
Initiation au xhtml - 3 : Rappel sur les pointeurs internet (URI/URL)
Créer un forum à l’aide de phpBB
Editer plusieurs fichiers de syndication 3/3
Menu de navigation sans JavaScript
Réaliser un formulaire de contact (3/4)
Créer une liste de QCM
Proposer plusieurs styles pour votre site
Javascript : n’oubliez pas Mac OS !
Un Editeur RSS pour votre site 1/2
MARST - Le Moteur Automatisé de Recherche en Santé au Travail
Editer plusieurs fichiers de syndication 1/3
Page contact en PHP 3/3
Page contact en PHP 2/3
Positionnement fixe... même avec Internet Explorer !
Tri et Histogramme
Page Erreur 404 en PHP
Publication Spip : forme et typographie
Qualité, centres d’intérêt et motivations des participants aux forums médicaux.
Quiz en PHP 3/3
Un Editeur RSS pour votre site 2/2
Réaliser un formulaire de contact (1/4)
Initiation au xhtml - 2
Soigner en ligne, un art impossible ?
Réaliser un formulaire de contact (5/4)
Mise en place d’un forum : une décision qui doit être mûrement réfléchie
Analyser les réponses à une liste de questions
Contrôler l’accès d’une partie du site avec .htaccess
Syndication, comment s’y retrouver
La syndication de contenu RSS
Ecrire ce qu’on veut dans SPIP
Lire nos fichiers de syndication
Astuce pour les images fréquemment utilisées
Afficher un fil RSS/Atom sur votre site 1/3
Afficher un fil RSS/Atom sur votre site 2/3
Afficher un fil RSS/Atom sur votre site 3/3
Lecteur RSS/Atom pour votre site 1/2
Lecteur RSS/Atom pour votre site 2/2
Lecture des caractères spéciaux et d’éléments d’un fil RSS/Atom
Syndication pour phpBB
Editez vos flux avec Fil_LE 1/2
Editez vos flux avec Fil_LE 2/2
Création à distance d’un fichier de syndication
Exécuter un Javascript dans une page SPIP
Abandonnons RSS 0.91 !
Des fils RSS 1.0, RSS 2.0 et Atom 1.0 pour votre site SPIP
Accueil
Boite à Outils
Initiation au xhtml
xhtml - 4 : Les entités
Cet article va tenter d’éclaircir ce que sont les entités, terme que j’utilise depuis le début de cette série sans réellement expliquer ce que cela regroupe.
Tout comme dans le précédent article, vous allez découvrir que certes le web c’est simple, mais cela peut aussi être plus puissant au prix d’une certaine complexification.
Bon alors qu’est-ce que c’est ?
On défini plusieurs types d’entités :
les entités générales prédéfinies
les autres entités générales
les entités paramétriques.
Nous laisserons les entités paramétriques de côté car on ne peut pas les retrouver dans une page Web mais uniquement dans les documents fondateurs (sachez juste qu’elles s’écrivent "%xxxxx ;", c’est à dire un signe pourcent suivi du nom de l’entité et terminé par un point-virgule).
Toute entité des deux autres types s’écrit &xxxxxx ; c’est à dire un "&" suivi du nom de l’entité et terminé par un point-virgule.
Une entité prédéfinie permet de représenter les éléments textuels ayant eux-même un rôle dans l’écriture du langage. Nous les avons déjà vu, il s’agit :
du "<" qui s’écrit "< ;" (lt comme lesser-than, inférieur-à en français)
du ">" qui s’écrit "> ;" (gt signifant greater-than, plus grand que en français)
du "&" ("et commercial") qui s’écrit "& ;" (amp pour amperstand)
et du """ (le double guillemet droit anglais qui sert en xhtml à délimiter la valeur d’un attribut) qui s’écrit "" ;" (guillemet se dit "quote" en anglais)
l’espace insécable "  ;" fait aussi partie de cette liste même s’il ne s’agit pas à strictement parler d’un caractère réservé à la description du langage.
Dans le cadre de l’XHTML strict, ce sont les seules entités définies, le reste des caractères doit être encodé en unicode ou vous devrez définir vous même vos propres entités dans un fichier à part.
Si vous utilisez la version de transition (xhtml-transitional) vous pouvez continuer à utiliser les entités que vous connaissez déjà pour le HTML et qui permettent de saisir -entre autres- les caractères accentués.
Certes mais à quoi ca sert ?
Une entité est un texte que l’on utilise à la place d’un contenu dans le but de le rendre représentable dans le contexte courant. Pas clair ? normal, voyons quelques exemples ce sera mieux :
&spades ; =>♠ (soit un as de pique, tout le monde n’a pas son ancien Commodore 64 et ses caractères semi-graphiques sous la main)
O ; => O (un O majuscule nomé par son code utf-8 en hexadecimal)
O ; => O (un O majuscule nommé par son code utf-8 en hexadécimal)
En effet, il peut être difficile de repérer la touche ♠ sur un clavier.
De même, il peut être difficile de taper certains caractères étrangers sur votre clavier habituel (que diriez-vous d’un KEN minuscule provenant de l’alphabet arménien : կ) or il peut être nécessaire de les utiliser (calmons notre nombrilocentrisme).
Oui, mais il était question de puissance, elle est où ?
En fait, les navigateurs web actuels ne sont pas encore assez développés pour gérer tout l’intérêt potentiel des entités. Il faut juste savoir par exemple, qu’il est tout à fait possible en suivant la norme fondatrice du xhtml de créer une page qui contiendrait :
Bonjour, nous sommes le &date.actuelle ; et il est &heure.actuelle ;. Et je vous souhaite la bienvenue. Signé &auteur;
avec une définition externe des entités de façon à ce que chaque valeur soit intégrée à l’affichage de façon totalement transparente.
La seule limitation est qu’une entité ne peut pas s’utiliser elle-même pour sa définition.
Pas convaincu ?
Et si vous imaginiez un site en plusieures langues, le menu se définirait par :
&accueil;
&rubrique.internet ;
&rubrique.sante ;
&contact;
et il suffirait de sélectionner le document qui définirait la traduction de chaque terme en chaque langue afin de personnaliser l’affichage.
Encore ?
Je suis un fainéant et à la fois le roi du "petit commentaire de copyright en bas de page".
Au lieu de modifier chaque page pour mettre un nouveau propriétaire ou changer l’année, je pourrai utiliser une entité :
©right.piedpage ; définie comme
<!ENTITY copyright.piedpage "Cette page et son contenu sont la propriété exclusive et absolue de son auteur &auteur.page; - © &annee.courante;">
Et ailleurs définir &auteur.page ; et annee.courante ; de la même façon. Au final on obtiendra une page au contenu fixe mais dont l’affichage s’adaptera automatiquement à des éléments mouvants :
Conclusion
Je crois que pour tous ceux qui créent des pages web, il n’y en a qu’une : vivement que les navigateurs s’y mettent !
La prochaine fois nous allons commencer à passer en revue et en détail les différentes balises autorisées en xhtml.