Vous êtes sur la page 1sur 10

Office de la formation Professionnelle et de la promotion du travail

DR SM/ISTA TIZNIT

2021/2022

Module M203 : Développement Web coté client

Filière : Techniques de Développement Informatique

XML/DTD/XSD/XPATH/XSLT

Formateur :
Abdelmounaim
Bendaoud

Table des matières


XML ...................................................................................................................................................................................... 3
IDE .................................................................................................................................................................................... 3
Définition de XML ............................................................................................................................................................ 3
Qu’est-ce qu’un élément XML ?....................................................................................................................................... 4
Élément vide : .................................................................................................................................................................. 4
Comment écrire un élément : .......................................................................................................................................... 4

Cours XML/DTD/XSD/XPATH/XSLT Développement web coté client Page 1 sur 10


Attributs en XML .............................................................................................................................................................. 4
Syntaxe XML ..................................................................................................................................................................... 5
Racine (root) .................................................................................................................................................................... 5
Prolog ............................................................................................................................................................................... 5
Règles: .......................................................................................................................................................................... 5
Attributs .......................................................................................................................................................................... 5
Règles : ......................................................................................................................................................................... 5
Références d’entités ........................................................................................................................................................ 6
L’espace blanc est conservé dans XML......................................................................................................................... 7
DTD....................................................................................................................................................................................... 7
Comment définir un élément mixte................................................................................................................................. 9
Comment définir un Choix au niveau des attributs: ..................................................................................................... 10

Cours XML/DTD/XSD/XPATH/XSLT Développement web coté client Page 2 sur 10


XML
IDE
Pour l’éditeur on peut utiliser VisualStudioCode et ajouter cette extension

Définition de XML
✓XML signifie eXtensible markup langage.
✓XML a été conçu pour stocker et transporter des données.
✓XML a été conçu pour être à la fois lisible par l’homme et la machine.

Exemple :

<?xml version="1.0" encoding="utf-8" ?>


<etudiants>
<etudiant code="12" dateN="12/03/2000" >
<nom>Rami</nom>
<prenom>Ahmed<</prenom>
<diplomes>
<diplome codeD="123" nomD="licence"/>
<diplome codeD="143" nomD="Technicien"/>
<diplome codeD="324" nomD="bac"/>
</diplomes>
</etudiant>

<etudiant code="13">
<nom>Alami</nom>
<prenom>Ali</prenom>
<diplomes>
<diplome codeD="143" nomD="Technicien"/>
<diplome codeD="324" nomD="bac"/>
</diplomes>
</etudiant>
</etudiants>

Différence entre XML et HTML

XML et HTML ont été conçus avec des objectifs différents :

➢ XML a été conçu pour transporter des données - en se concentre sur les données.
➢ HTML a été conçu pour afficher des données présentation en se concentrer sur l’apparence des
données.
➢ Les balises XML ne sont pas prédéfinies comme les balises HTML.

Cours XML/DTD/XSD/XPATH/XSLT Développement web coté client Page 3 sur 10


Un fichier XML est constitué d’éléments

Qu’est-ce qu’un élément XML ?

Un élément XML est constitué d’une balise ouvrante et balise fermante.

<nom>Rami</nom> nom est un élément


Un élément peut contenir :
Du texte <nom>Rami</nom>

<diplomes>
<diplome codeD="143" nomD="Technicien"/>
Un autre(s) élément(s) <diplome codeD="324" nomD="bac"/>
</diplomes>

Texte et élément <p>code:<span>121</span></p>


<diplome codeD="143" nomD="Technicien"/>
Attribut(s)

Élément vide :
Un élément vide est un élément qui ne contient rien
<diplome codeD="143" nomD="Technicien"> </diplome >

Peut être écrit autrement


<diplome codeD="143" nomD="Technicien"/>

Comment écrire un élément :

Il n’y a pas de styles de nommage définis pour les éléments XML. Mais voici quelques noms couramment
utilisés :
Style Example Description
Lower case <firstname> Toutes les lettres sont en minuscule
Upper case <FIRSTNAME> Toutes les lettres sont en majunuscule
Underscore <first_name> Underscore separates words
Pascal case <first_ FirstName > Uppercase first letter in each word
Camel case <FirstName> Uppercase first letter in each word except the first

Camel case est la règle de nommage en JavaScripts.


Les éléments XML peuvent avoir des attributs, tout comme html.
Attributs en XML

Les attributs sont conçus pour contenir des données liées à un élément spécifique.
Les valeurs d’attribut doivent toujours entre Des guillemets simples ou doubles peuvent être utilisés.
<diplome codeD="143" nomD="Technicien"/>

<diplome codeD=’143’ nomD=’Technicien’/>

Cours XML/DTD/XSD/XPATH/XSLT Développement web coté client Page 4 sur 10


Syntaxe XML
Racine (root)
XML doit contenir un root (racine) élément qui est parent de tous les éléments:

<root>
<child>
<subchild>.....</subchild>
</child>
</root>

Dans l’exemple précèdent etudiants est un élément racine (root)

Prolog
Cette ligne s’appelle XML prolog:
<?xml version="1.0" encoding="UTF-8"?>

Les documents XML peuvent contenir des caractères internationaux, comme øæå norvégien ou Français êèé.
Pour éviter les erreurs, vous devez spécifier l’encodage utilisé, ou enregistrer vos fichiers XML sous le nom
d’UTF-8.
UTF-8 est le codage par défaut des caractères pour les documents XML.
Règles:
✓Tous les éléments XML doivent avoir la balise ouvrante et fermante

<nom>Rami</nom>
<diplome codeD="143" nomD="Technicien"/>
<diplome codeD="143" nomD="Technicien"></diplome >

✓Les éléments sont sensibles à la casse (majuscule/minuscule)


<nom>Rami</Nom> faux

✓les éléments doivent être correctement imbriqués


En HTML, vous pouvez voir des éléments incorrectement imbriqués :

<b><i>This text is bold and italic</b></i> faux

<b><i>Thi text is bold and italic</i> </b> vrai

Attributs
Les éléments peuvent contenir des attributs :

Règles :
Les valeurs des attributs doivent être entre guillemet

L’ordre des attributs dans un élément n’est pas important (Le codeD et nomD se sont des attributs)
<diplome codeD="123" nomD="licence"/>

Cours XML/DTD/XSD/XPATH/XSLT Développement web coté client Page 5 sur 10


Une information peut être stocké comme #PCDATA dans un élément

Exemple :
<nom>Rami</nom>

Ou bien dans un attribut par exemple <etudiant code="12" dateN="12/03/2000" > Les données
d’un attribut sont toujours entre double quottes.

Références d’entités
Certains caractères ont une signification particulière dans XML. Si vous placez un caractère comme « < » à

l’intérieur d’un élément XML, il générera une erreur parce que le parseur l’interprète comme le début d’un nouvel

élément.

Cela générera une erreur XML :

<message>salary < 1000</message>

Cours XML/DTD/XSD/XPATH/XSLT Développement web coté client Page 6 sur 10


Pour remédier a ce problème il faut remplacer le caractère « <« par son entité
référence

<message>salary &lt; 1000</message>

&lt; < less than

&gt; > greater than

&amp; & ampersand

&apos; ' apostrophe

&quot; " quotation mark

Commentaire en xml :

<!--c’est un commentaire -->

L’espace blanc est conservé dans XML


XML ne tronque pas plusieurs espaces blancs (HTML tronque plusieurs espaces blancs en un seul
espace blanc) :
XML Hello
world
HTML Hello world

DTD

DTD signifie Définition de type document.

Un DTD définit la structure et les éléments et attributs légaux d’un document XML.

Plan d’un fichier XML. Permet de valider un fichier XML

Cours XML/DTD/XSD/XPATH/XSLT Développement web coté client Page 7 sur 10


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE etudiants [
<!ELEMENT etudiants (etudiant+)>
<!ELEMENT etudiant (nom,prenom,diplome*)>
<!ELEMENT nom (#PCDATA)>
<!ELEMENT prenom (#PCDATA)>

<!ELEMENT diplome EMPTY>


<!ATTLIST etudiant code CDATA #REQUIRED>
<!ATTLIST diplome codeD CDATA #REQUIRED nomD CDATA #REQUIRED> ]>
<etudiants>
<etudiant code="10">
<nom>Ali</nom>
<prenom>Salem</prenom>
<diplome codeD="9" nomD="bac"/>
<diplome codeD="10" nomD="Technicien"/>
</etudiant>
<etudiant code="11">
<nom>Rami</nom>
<prenom>Ahmed</prenom>
<diplome codeD="120" nomD="Master" />
</etudiant>
</etudiants>

Un DTD peut être à l’extérieur du fichier XML :

<?xml version="1.0" encoding="UTF-8"?>


<!DOCTYPE etudiants SYSTEM "dtdEtudiant.dtd">

<etudiants>
<etudiant code="10">
<nom>Ali</nom>
<prenom>Salem</prenom>
<diplome codeD="9" nomD="bac"/>
<diplome codeD="10" nomD="Technicien"/>
</etudiant>
<etudiant code="11">
<nom>Rami</nom>
<prenom>Ahmed</prenom>
<diplome codeD="120" nomD="Master" />
</etudiant>
</etudiants>

Cours XML/DTD/XSD/XPATH/XSLT Développement web coté client Page 8 sur 10


Le fichier dtdEtudiant.dtd
<!ELEMENT etudiants (etudiant+)>
<!ELEMENT etudiant (nom,prenom,diplome*)>
<!ELEMENT nom (#PCDATA)>
<!ELEMENT prenom (#PCDATA)>
<!ELEMENT diplome EMPTY>
<!ATTLIST etudiant code CDATA #REQUIRED>
<!ATTLIST diplome codeD CDATA #REQUIRED nomD CDATA #REQUIRED>

Explications:

<!ELEMENT etudiants (etudiant+)>


signifie que l’élément racine etudiants contient un ou plusieurs etudiant la multiplicité
+ Un ou plusieurs
* Zero ou plusieurs
? Zéro ou un

<!ELEMENT etudiant (nom,prenom,diplome*)>


Signifie que etudiant contient un élément nom,un élément prenom,zéro ou plusieurs élément diplôme

<!ELEMENT nom (#PCDATA)>


Signifie que l’élément nom contient du text

<!ELEMENT diplome EMPTY> ne contient ni text ni autre élément

<!ATTLIST etudiant code CDATA #REQUIRED>

Signifie que l’élément etudiant contient l’attribut code qui est obligatoire car #REQUIRED est ajouté
Pour rendre un attribut non obligatoire on ajoute #IMPLIED
<!ATTLIST diplome codeD CDATA #REQUIRED nomD CDATA #REQUIRED>
L’élément diplome contient les attributs codeD et nomD qui sont obligatoires.
Comment définir un élément mixte

<!ELEMENT adresse (#PCDATA | codeVille)*>


<adresse>
hay essalam
city arraha
<codeVille>124</codeVille>
</adresse>

Cours XML/DTD/XSD/XPATH/XSLT Développement web coté client Page 9 sur 10


Comment définir un Choix au niveau des attributs:
<!ATTLIST section id ID #IMPLIED langue (fr|ang) "fr" >

L’attribut langue peut prendre seulement les valeurs "fr" ou "ang" la valeur par default est "fr"

Cours XML/DTD/XSD/XPATH/XSLT Développement web coté client Page 10 sur 10

Vous aimerez peut-être aussi