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
Gestion d’une rubrique... en attendant SPIP
Editer plusieurs fichiers de syndication 2/3
Réaliser un formulaire de contact (1/4)
Page Erreur 404 en PHP
Initiation au xhtml - 1
Un lecteur RSS pour votre site 1/2
Page contact en PHP 1/3
Réaliser un formulaire de contact (5/4)
Page contact en PHP 3/3
Page contact en PHP 2/3
Publication Spip : forme et typographie
Quand JavaScript est désactivé... 2/2
Belles icônes pas chères !
Javascript : n’oubliez pas Mac OS !
Quiz en PHP 2/3
Un lecteur RSS pour votre site 2/2
Menu de navigation sans JavaScript
Un Editeur RSS pour votre site 1/2
Réaliser un formulaire de contact (4/4)
Créer une liste de QCM
Analyser les réponses à une liste de questions
Menu dépliant pour les rubriques
Conseils pour débuter un site web
Le web structuré et sa présentation
Webmasters : Comment mieux se référencer ?
Soigner en ligne, un art impossible ?
Comment intégrer Snap Shots à Rapidweaver ?
Réaliser un formulaire de contact (2/4)
Quiz en PHP 1/3
Créer un forum à l’aide de phpBB
Positionnement fixe... même avec Internet Explorer !
Réaliser un formulaire de contact (3/4)
Tri et Histogramme
Qualité, centres d’intérêt et motivations des participants aux forums médicaux.
Initiation au xhtml - 3 : Rappel sur les pointeurs internet (URI/URL)
Utilisation de la classe easyRSS
Quand JavaScript est désactivé... 1/2
Syndication, comment s’y retrouver
Editer plusieurs fichiers de syndication 3/3
Quiz en PHP 3/3
La Netiquette des forums
Un Editeur RSS pour votre site 2/2
Proposer plusieurs styles pour votre site
Initiation au xhtml - 2
Comment faire migrer son site ?
Editer plusieurs fichiers de syndication 1/3
MARST - Le Moteur Automatisé de Recherche en Santé au Travail
Un serveur dédié pour les nuls
Installer un script PHP pour les nuls
Etablir un questionnaire statistique en ligne
Contrôler l’accès d’une partie du site avec .htaccess
Mise en place d’un forum : une décision qui doit être mûrement réfléchie
La syndication de contenu RSS
Ecrire ce qu’on veut dans SPIP
Lire nos fichiers de syndication
Afficher un fil RSS/Atom sur votre site 1/3
Astuce pour les images fréquemment utilisées
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.