Introduction.
Le DTD permettent de décrire la forme que doit avoir un document XML pour être valide. Les DTD ont été remplacées par XML Schema qui est bien plus puissant et expressif, aussi nous vous encourageons, pour tout nouveau projet de favoriser systématiquement l'utilisation de Schema aux DTD.
Nous abordons toutefois les DTD ici, afin que vous puissiez en comprendre une si besoin. Notamment, vous pourriez être amener à transformer une DTD en un Schema pour utiliser cette nouvelle technologie.
Spécification d'une DTD.
Contrairement aux Schema, la DTD n'est pas un dialecte XML, c'est un langage spécifique.
La DTD n'est pas obligatoire. Elle peut être interne au document XML ou bien externe (dans un fichier à l'extension « .dtd »). On utilise une DTD externe lorsque l'on veut la partager entre plusieurs fichiers XML.
Exemple de déclaration d'une DTD externe dans un fichier XML :
<!DOCTYPE repertoire SYSTEM "repertoire.dtd">
La DTD commence par la balise :
 <!DOCTYPE nom-element-racine [
et se termine par :
La DTD doit être placée après la déclaration initiale XML.
Les commentaires, comme en XML sont utilisés de la manière suivante :
Éléments.
Chaque élément de la DTD est défini de la manière suivante :
Les qualificateurs possibles sont : 
On peut préciser ces qualificateurs grâce aux éléments suivants :
Exemple du stockage d'un répertoire de services. Chaque service a un nom et peut avoir un ou plusieurs téléphone(s) :
<?xml version="1.0" standalone="yes"?>
<!DOCTYPE repertoire [
 <!ELEMENT repertoire (service)*>
 <!ELEMENT service (nom, tel*)>
 <!ELEMENT nom (#PCDATA)>
 <!ELEMENT tel (#PCDATA)>
<repertoire>
 <service>
 <nom>pompiers</nom>
 <tel>18</tel>
 </service>
 <service>
 <nom>police</nom>
 <tel>17</tel>
 <tel>22</tel>
 </service>
 <service>
 <nom>samu</nom>
 <tel>15</tel>
 </service>
</repertoire>
Attributs.
Ils sont déclarés avec codice_1. Par exemple, on définit un type de paiement par défaut en liquide :
 <!ATTLIST paiement type CDATA (chèque|liquide) "liquide" >
Valeurs des attributs.
Les valeurs d'attributs (attribute-value) sont :
Entités.
Déclarer une entité permet de l'intégrer ensuite en appelant son nom précédé d'un et commercial, pourcentage ou guillemet ('&', '%' ou ' " ') et suivi d'un point virgule (';'). Ex :
<!ENTITY intro! SYSTEM "https://fr.wikibooks.org/wiki/Programmation_XML/Introduction.xml">!
<b>
 &intro;
</b>
Exemple.
Extrait du cahier des charges XHTML concernant les hyperliens :
<!ENTITY % attrs "%coreattrs; %i18n; %events;">
<!ELEMENT link EMPTY>
<!ATTLIST link
 %attrs;
 charset %Charset; #IMPLIED
 href %URI; #IMPLIED
 hreflang %LanguageCode; #IMPLIED
 type %ContentType; #IMPLIED
 rel %LinkTypes; #IMPLIED
 rev %LinkTypes; #IMPLIED
 media %MediaDesc; #IMPLIED
 target %FrameTarget; #IMPLIED

Programmation/Glossaire/C
= Co =
= Cp =

Programmation/Glossaire/D
= Da =
= De =
= Do =

Programmation/Glossaire/E
= Eb =
= Ed =
= Er =
= Ev =
= Ex =

Programmation/Glossaire/F
= Fi =
= Fr =

Programmation/Glossaire/G
= Ga =
= Gh =
= Gi =
= Go =

Programmation JavaScript
Programmation JavaScript/Introduction
JavaScript (alias JS) est un langage de programmation utilisé initialement par les navigateurs web, dont le champ d’application s’est progressivement étendu aux serveurs web et aux applications graphiques. Il partage avec Java une syntaxe inspirée du langage C, mais leurs similitudes s'arrêtent là. Il fut créé par sous le nom "LiveScript" en 1996.
Le noyau du JavaScript est aujourd'hui défini par le standard ECMA 262, connu aussi sous l'appellation (ES).
Les fichiers JavaScript possèdent l'extension .js, mais on trouve aussi des .ts correspondant au . Il s'agit d'un sur-ensemble syntaxique strict de JavaScript créé par en 2012 pour améliorer et de sécuriser le JS.
Intégré directement au sein des pages Web, le JavaScript est alors exécuté par le client Web (par opposition au serveur Web) : c'est le navigateur Web qui prend en charge l'exécution de ces bouts de programme, manipulant leur environnement, appelés scripts.
Généralement, JavaScript sert à interagir avec le document HTML et ses feuilles de style CSS via l'interface DOM (Document Object Model ; on parle de HTML dynamique ou pour désigner cette intégration des trois langages). JavaScript est ainsi utilisé pour réaliser des services dynamiques en communication avec le serveur Web, la plupart du temps grâce à une technique appelée (abusivement) .
Il est souvent source de difficultés dues aux nombreuses versions différentes de l'interpréteur et du DOM, dépendantes des éditeurs de navigateurs. Chacun ayant développé sa propre variante supportant (presque) le standard ECMAScript, un ou deux des deux standards DOM, et possédant de surcroît des fonctionnalités supplémentaires et incompatibles.
Moteurs JS.
Côté client, le langage est compilé par les navigateurs : ils parsent le script, créent l' (AST), l'optimisent, génèrent du en (JIT) à partir de l'arbre, puis le spécifique au hardware avec cela, et enfin l'exécute.
Les principaux moteurs de JS sont :