Format XML
Qu'est ce que le XML ?
XML décrit le contenu plutôt que la présentation (contrairement à HTML). Ainsi, XML permet de séparer le contenu de la présentation .. ce qui permet par exemple d'afficher un même document sur des applications ou des périphériques différents sans pour autant nécessiter de créer autant de versions du document que l'on nécessite de représentations.
Qu'est ce qu'une balise ?
'Élément Sémantique de base' des langages de balisage. Une balise est un 'mot clé', un élément, comprise entre crochets (< et > ) qui possède un nom et parfois des attributs. Toutes les balises doivent être ouvertes puis refermées (contrairement à l'HTML ou certaines balises n'ont pas besoin d'être refermées). On retrouvera donc toujours une balise de début et une balise de fin. La balise de fin porte le même nom que la balise de début à l'exception du nom du la balise qui est précédé du signe /.
<
titre
>
cours de XML<
/
titre
>
Si une balise est vide on peut combiner balise de début et de fin:
<
reponse
/
>
Le nom de la balise et le nom des attributs (contenu entre les crochets) doit être en majuscule ou minuscule. Les noms de balise peuvent comporter des lettres, des chiffres, des tirets, des traits de soulignement, des deux-points ou des points. Le caractère deux-points (:) ne peut être utilisé que dans le cas particulier où il sert à séparer des espaces de noms. Un nom de balise ne doit pas commencer par xml ou XML.
Les caractères < et & ne peuvent pas être utilisés dans le texte, car ils sont utilisés dans le balisage. Si vous devez employer ces caractères, utilisez < à la place de < et & à la place de &.
Sinon utiliser la basile CDATA , dans ce cas on peut mettre les caractères interdits:
Un attribut est le nom d'une propriété de la balise souvent associé à une valeur, il est mis dans la balise d'ouverture après le nom de la balise, il est en minuscule ou majuscule, la valeur est entre " ou entre ':
<
élément
attribut
=
"
valeur
"
/
>
Exemple:
<
reponse
=
"
oui
"
/
>
La balise ne sera pas vu si on affiche le document dans un navigateur.
Il n'y a aucun nom d'élément réservé.(quelques noms d'attributs le sont).
Les noms d'élément sont choisis librement par l'auteur du document.
Composition d'un document XML
- un prologue contenant des déclarations (facultatifs).
- un arbre d'éléments.(contenu proprement dit du document).
- des commentaires ou des instructions de traitement (facultatifs).
PROLOGUE XML
Les documents doivent commencer par une déclaration indiquant la version de l'XML.
<?
xml
version="1.0"?
>
Ce document respecte la spécification XML 1.0.
On peut ajouter le type de codage des caractères:
<?
xml
version="1.0"
encoding="UTF-8"?
>
'Ici les caractères sont codés en UTF-8
Les caractères>
,"
, et'
peuvent également être remplacés respectivement par>
,"
et'
On peut aussi ajouter une déclaration de type de document (DTD).
Si le document doit se conformer à une structure particulière, on doit l'indiquer:
Exemple: le document est de type rapport medical et sa structure doit se conformer à la structure type définie dans la ressource "rapportmedical.dtd"
<!
DOCTYPE
rapportmedical
SYSTEM
"
rapportmedical.dtd
"
[
déclarations]
>
STRUCTURE en arbre
Il peut y avoir plusieurs balises intriquées, mais attention à l'ordre des balises de fin qui doivent être dans l'ordre inverse (première balise ouverte, dernière fermée).
<
article
>
<
para
>
......<
/
para
>
<
/
article
>
Tout élément enfant est inclus dans l'élément parent.
Il doit y avoir un élément racine qui englobe tous les autres:
<
livre
>
<
chapitre
>
Item 1<
/
chapitre
>
<
chapitre
>
Item 2<
/
chapitre
>
<
chapitre
>
Item 3<
/
chapitre
>
<
/
livre
>
Ici l'élément racine est livre , peut importe le nom, pourvu qu'il englobe tout.
On remarque qu'il y a plusieurs balises chapitre.
Commentaires et instructions de traitement.
Il existe des instructions de traitement qui contiennent des instructions destinées aux applications.
<?
perl
lower-to-upper-case
?
>
On peut mettre des commentaires:
<!--
Commentaire
-->
Dissocier la forme et le fond:
Les balises XML indiqueront le contenu, la signification (la sémantique) des éléments de la page et non pas comment les afficher.
Le HTML lui comportait des informations sur la forme, la manière dont était affichée la page, l'apparence du site.
- Dans un document HTML, les balises définissent pour ce document ce qui est en gras( balise b), en italique ( balise i)...
- Pour un document XML, les balises définissent le contenu. Ainsi une oeuvre est contenu entre les balises 'oeuvre'; de même les balises 'date' et 'auteur' permettent de dresser une liste des auteurs et des dates. La présentation sera, si nécessaire, indiquée dans une feuille de style CSS.
Ce document XML est enregistré dans un fichier '.xml'
Le développeur peut avoir des noms de balise propre à son document (en HTML, les noms sont prédéfinis).
DTD
On peut aussi ajouter une déclaration de type de document (DTD).
Si le document doit se conformer à une structure particulière, on doit l'indiquer:
Exemple: le document est de type rapport medical et sa structure doit se conformer à la structure type définie dans la ressource "rapportmedical.dtd"
<!
DOCTYPE
rapportmedical
SYSTEM
"
rapportmedical.dtd
"
[
déclarations]
>
Feuille de style
La feuille de style, ou CSS est l'abréviation de Cascading Style Sheets. Cette feuille nous sert uniquement à présenter la page web. C'est en CSS que l'on dira : "Mes titres sont en vert et sont soulignés, le nom doit être affiché en gras. La feuille de style est dans un fichier '.css'
XML dans VB
|
|
|
|
|
|
Dim
reader=
System.
Xml
.
XmlReader
.
Create
("
books.xml
"
) reader.
MoveToContent
()Dim
inputXml=
XDocument.
ReadFrom
(reader)