Click here to load reader
Upload
rami-jenhani
View
745
Download
0
Embed Size (px)
08/10/2009
2
Langage de marquage(Markup Language)� Un langage de marquage est un langage qui
définit les règles de marquage qui donnent une signification à la structure et au contenu des documents.
� Ces règles définissent la grammaire et la syntaxe du langage.
� Exemples de langages de marquage : �HTML
�XML 2
08/10/2009
3
Langage de marquage
� Un langage de marquage est composé :�Éléments
�Attributs
�Entités
3
08/10/2009
4
Éléments
� Les éléments sont les blocs de données principaux des documents XML et HTML.
� Exemples d'éléments HTML: "body" et "table".
� Exemples d'éléments XML: "livre" et "isbn".
� Les éléments peuvent contenir du texte, d'autres éléments, ou être vides.
� Exemples d'éléments HTML vides: "hr", "br" et "img". 4
08/10/2009
5
Attributs
� Les attributs fournissent de l'information additionnelle concernant les éléments.
� Exemple :<IMG SRC="ordinateur.gif" />
<nourriture cholesterol="30mg">frites</nourriture>
5
08/10/2009
6
Entités
� Les entités sont des abréviations.
� Exemples :�< est l'abréviation prédéfinies du caractère <
�Si la chaîne de caractères Extensible Markup Language est déclarée comme une entité associée à l'abréviation xml, la chaîne de caractères pourra être abrégée en &xml; dans tout le document.
6
08/10/2009
7
7
Historique des langages « Markup »
� SGML (Standard Generalized Markup Language, ISO standard en 1986)� meta-langage pour définir des langages de "markup"
� HTML (application SGML + liens en 1990)� une application SGML avec très peu de balises (tags) fixes
� XML (1997, -)� un meta-langage plus léger que SGML adapté au Web� permet la définition de langages adaptés à des besoins très
variés
08/10/2009
8
8
Besoins …
� On veut beaucoup maintenant, par exemple:� structurer de l’information� .... et la retrouver facilement� .... et l’imbriquer facilement dans des applications� faire des hypertextes puissants� afficher et imprimer de façon flexible et jolie� un format universel pour toute sortes de données et usages� diffuser/échanger/stocker/chercher/..... pas juste afficher� un meta-langage qui permet de créer des langages variés,� .... adaptés aux besoins, mais “propres”
08/10/2009
9
Insuffisances de HTML
� HTML a un ensemble pré-déterminé de balises� Il n'est pas possible de créer de nouvelles balises.
� HTML est un langage de présentation�Les balises donnent des indications sur la manière
de présenter et non sur le contenu.
9
08/10/2009
10
10
CSS� CSS : Cascading Style Sheet
� CSS est utilisé pour définir les couleurs, les polices, le rendu, et d'autres caractéristiques liées à la présentation d'un document.
� Séparer la structure et la présentation du document.
� Avantages :� La structure du document et la présentation sont gérées
dans des fichiers séparés.
� Changement plus facile de la structure et du contenu,� Réduire la complexité de la structure d’un document,� Adapter le document au dispositif d’accès.
08/10/2009
11
XML
08/10/2009
12
12
XML
� eXensible Markup Language� Un méta langage permettant la définition de langages adaptés
à des besoins variés. � Extensible et évolutif : les balises ne sont pas prédéfinies.
� XML = Puissance SGML + Succès HTML� Représentation de contenus indépendamment de toute
application.� Description, structuration, stockage et échange de données� Séparation entre contenu et forme.� Langage strict : Syntaxe rigoureuse.� Adaptation aux différents types de terminaux (PC, Pocket
PC…)
08/10/2009
13
13
XML vs HTML
08/10/2009
14
14
Applications XML
� Langage de Schéma � XML Schema
� Langage de Représentation� OpenDocument (Open Office)� MathML (Mathématique)� SVG (Scalable Vector Graphics)
� Langage de programmation� XSLT (Transformation Document XML)� XPATH (Requête dans des BDs XML)� XAML (Définition Interface Windows Vista)� ANT (Script de compilation)
� Protocole d’échange de données� SOAP (Simple Object Acces Protocol)
08/10/2009
15
Exemple de document XML
<livre>
<titre> le super livre </titre>
<chapitre>
<numero> 1 </numero>
<titre> titre du chapitre 1 </titre>
<contenu> blabla blabla </contenu>
</chapitre>
<chapitre>
…
</chapitre>
</livre>15
08/10/2009
16
Éléments et balises
� Tous les éléments doivent avoir une balise d'ouverture et un balise de fermeture.Exemple : <LIVRE> . . . </LIVRE>
� La seule exception est l'élément vide (Empty element) dans lequel il n'y a pas de contenu d'élément et qui combine la balise ouvrante et fermante.Exemple : <prix Canada="$70.99"/>
16
08/10/2009
17
Attributs
� Les attributs sont à l'intérieur de la balise ouvrante d'un élément.
� Syntaxe :attribut="valeur"
� Exemple :<LIVRE SUJET="XML">.
L'attribut SUJET de l'élément LIVRE a la valeur "XML".
� En XML, les valeurs doivent toujours être encadrées par des guillemets.
17
08/10/2009
18
Entités
� Il existe deux catégories d'entités:�Entités générales
�Entités de paramètre
18
08/10/2009
19
Entités générales
� Les entités générales sont des variables utilisées pour définir des chaînes de caractères.
� Elles sont utilisées pour ne pas avoir à taper de longues chaînes de caractères plusieurs fois dans un document.
� Exemple :&xml; pour "Extensible Markup Language"
� Note :Si la chaîne de caractères doit être modifiée, on la modifie seulement une fois.
19
08/10/2009
20
Entités de paramètre
� Les entités de paramètre sont pré-définies dans XML
� Entité de paramètre Caractère
< <
> >
& &
" "
' '
20
08/10/2009
21
21
Contenu d’un document XML (1/2)
� Un document XML est composé d'éléments.� Chaque élément présente des caractéristiques appelées
attributs : <titre type="policier">Mort sur le Nil</titre>
� DTD Document Type Definition :définissent les éléments et les règles d'utilisation (noms des éléments, attributs possibles pour un élément, imbrications)� Si un document a une DTD associée et qu'il se conforme à cette DTD,
il est dit valide. � S'il n'a pas de DTD et qu'il suit les règles définies par XML (par
exemple : ses éléments sont correctement imbriqués) il est bien formé.
08/10/2009
22
22
Contenu d’un document XML (2/2)
� Un document XML peut ne pas avoir de DTD, un tel document définit son propre balisage de manière informelle. Il doit cependant être bien formé, sinon il ne sera pas affiché par un navigateur.
08/10/2009
23
23
Arbre d’éléments d’un document XML
bibliotheque
livre
titre auteur ref
article
Élément Fils
Élément ParentRacine
<?xml version="1.0"?><bibliotheque>
<livre> <titre>N ou M</titre> <auteur>Agatha</auteur> <ref>Policier-C-15</ref>
</livre> <livre>
<titre>A</titre> <auteur>Arthur</auteur> <ref>Policier-D-3</ref>
</livre> </bibliotheque>
08/10/2009
24
24
A-t-on besoin de feuille de style?
� Le document ne contient aucune information concernant l'affichage, c'est sa feuille de style qui définira la présentation sur un média (Téléphone, PC, etc.).
� Lorsqu'aucune précision n'est donnée quant à l'affichage (pas de feuille de style) la navigateur affichera le contenu du document XML.
� CSS : Cascading StyleSheet
� XSL : XML StyleSheet Language
08/10/2009
25
25
Structure d’un document XML (1/2)
� Un document XML comporte : � un prologue qui contient toutes les informations autres que
les données ou les éléments : � Déclaration XML,� DTD,� instructions de traitements : <?xml-stylesheet type="text/css"?>
� l'arbre des éléments avec un élément racine � Un élément possède un nom et un contenu
� éventuellement des commentaires : <!-- commentaire -->
08/10/2009
26
26
Structure d’un document XML (2/2)Structure d’un document XML (2/2)<? xml version = "1.0" ?><? xml-stylesheet href = « biblio.xsl " type = "text/xsl" version = "1.0" ?><! DOCTYPE adresses SYSTEM " biblio.dtd">
<bibliotheque><livres>
<livre isbn= « 01ZE" > <titre>XML pour les nuls</titre><auteur>jean fournier</auteur>
</livre></livres></bilbliotheque>
Entête du document
Corps du document
08/10/2009
27
27
Document XML Bien formé (1/2)
� il contient une déclaration XML
� il contient un ou plusieurs éléments
� il contient un élément racine encapsulant tous les autres éléments et leurs attributs (ex <HTML> ... </HTML>)
� les éléments non vides ont une balise de début et de fin
� les éléments non vides sont correctement imbriqués (<P> <EM> ... </EM> </P>)
� les éléments vides ont un / à la fin de la balise avant le >
� les noms des balises ouvrantes et fermantes correspondent
08/10/2009
28
28
Document XML Bien formé (2/2)
� un nom d'attribut apparaît uniquement dans la balise ouvrante et une seule fois dans cette balise
� les valeurs des attributs sont entre guillemets ou apostrophes
� les caractères réservés sont remplacés par des références d'entités (par ex. < pour <)
� s'il n'y a pas de DTD, les seules entités utilisées sont celles réservées de XML & < > ' "
� s'il y a une DTD toutes les entités non réservées utilisées sont déclarées dans la DTD.
08/10/2009
29
29
Document XML Valide
� Un document est valide s'il : �est bien formé
� fait référence à une DTD ;
�se conforme à la DTD.
08/10/2009
30
Exercice
� Écrire le fichier XML correspondant à
30
08/10/2009
31
31
Bibliographie
� http://www.w3c.org/XML
� http://www.xml.com
� http://fr.wikipedia.org/wiki/XML
� http://xml.apache.org
� http://www.xmlsoftware.com
� news://comp.text.xml