Académique Documents
Professionnel Documents
Culture Documents
5 Noyau XML
1.Origines et Objectifs
2. SGML et HTML
3. Introduction à XML
4. XML pour quoi faire ?
5) Structuration XML de base
6) Domaines nominaux
7) Schémas XML
1
1. Origine et objectifs
• XML est issu de la Gestion de Documents (GED)
• Séparation du fond de la forme.
– Forme = présentation à partir de la structure (style)
– Fond = structure + données (contenu)
• Multiples précurseurs dont les plus connues :
– SGML(Standard Generalized Markup Language) (pour la
structuration
– HTML (Hypertext Markup Language) pour la présentation
– Approches mélangeant parfois le fond et la forme !
2
Origines
Présentation et Structuration
Titre XML: Des BD aux Services Web
Section 1. Introduction
Paragraphe Ces dernières années ont vu l'ouverture des systèmes
d'information à l'Internet. Alors que depuis les années
1970, ces systèmes se développaient, le choc Internet …
2. La société ProXML
Section
3
Origines
Vue Balisée
<Livre>
<Titre> XML : Des BD aux Services Web</Titre>
<Auteur>Georges Gardarin</Auteur>
<Section titre = "Introduction">
<Paragraphe>Ces dernières années ont vu l'ouverture des systèmes d'information à l'Internet.
Alors que depuis les années 1970, ces systèmes se développaient, le choc Internet …
</Paragraphe>
<Paragraphe>Ainsi, on a vu apparaître une myriade de technologies nouvelles attrayantes mais
peu structurantes voir perturbantes. Certaines n'ont guère survécues … </Paragraphe>
<Paragraphe>L'urbanisation passe avant tout par la standardisation des échanges : il faut
s'appuyer sur des standards ouverts, solides, lisibles, sécurisés, capable d'assurer
l'interopérabilité avec l'Internet et les systèmes d'information … </Paragraphe>
</Section>
<Section titre= "La Société ProXML"> …
</Section>
</Livre>
4
Origines
XML : objectifs
• XML= un nouveau langage d'échange basé sur le
balisage
• XML= plus simple que SGML
• XML= plus ouvert que HTML englobé (XHTML)
• XML = développé par XML Working Group dirigé
par le W3C (depuis 1996)
• XML 1.0 = recommandation officielle du W3C
depuis le 10 février 1998
5
Origines
les 10 objectifs de conception:
• XML doit pouvoir être utilisé sans difficulté sur
Internet
• XML doit soutenir une grande variété
d'applications
• XML doit être compatible avec SGML et HTML
• Il doit être facile d'écrire des programmes traitant
les documents XML
• Le nombre d'options dans XML doit être réduit au
minimum, idéalement à aucune
6
Origines
les 10 objectifs de conception
• Les documents XML doivent être lisibles par
l'homme et raisonnablement clairs
• La spécification de XML doit être disponible
rapidement
• La conception de XML doit être formelle et concise
• Il doit être facile de créer des documents XML
• La concision dans le balisage de XML est peu
importante
7
Origines
Forces de XML
• Séparation de la structure et de la présentation
8
Origines
2. SGML et HTML
• 1969 C. Goldfarb, E. Mosher, R. Lorie inventent
GML chez IBM
• GML a été créé pour éditer des documents, les
mettre en page et les partager au sein de
systèmes de gestion éditoriaux
• 1978 Goldfarb prend la tête d’un comité
« Computer Language for the Processing of Text »
au sein de l’American National Standards Institute
(ANSI).
9
SGML
Qu'est-ce que SGML ?
• Une norme internationale :
– Standard Generalized Markup Language
– ISO 8879 - 1989
• Un métalangage de balisage de documents
– lisible par l’être humain et traitable par une machine
– permet de définir des langages de balisage
• Les documents sont balisés conformément à la grammaire (la DTD)
– instances de DTD
– permet un balisage sémantique du fond.
• Implique la notion de validité d'un document
10
SGML
SGML : objectifs
• Séparation du fond et de la forme
– possibilité de multiples présentations
– un seul document en SGML
– plusieurs formats : Postcript, HTML, etc.
• Support de traitements sur le contenu des documents
sans prise en compte de la forme
• Proposition d’un cadre défini pour l’expression des
modèles documentaires (validité, contrôle)
• Intégration d'un format de stockage et d’échange
normalisé
11
SGML
SGML : critiques
• Très lourd et complexe pour la mise en œuvre de
documents respectant ce format
• Une grande rigueur est demandée à l'entrée des
documents
• Standard complexe et complet pour le traitement
des documents
• Liens hypertextes possibles mais complexes
12
SGML
HTML : présentation
• Proposé par le W3C comme <HTML>
<HEAD>
format de documents sur le <TITLE> Exemple </TITLE>
Web. </HEAD>
• Langage simple avec des <BODY>
<H1>Contenu du document</H1>
balises standardisées <A HREF = "http://www.server.fr/Info
permettant la mise en forme /dir/test.html"> une référence externe
d’un texte. </A>
</BODY>
• Standard reconnu par tous les </HTML>
navigateurs.
• Langage très populaire sur le
Web
13
HTML
HTML : inconvénients
• Normalisation des différentes balises difficile :
– les constructeurs ont eu tendance à définir leurs propres balises pour
répondre à leurs besoins (incompatibilité)
– HTML 4.0
• boutons, tables, applets, objects, graphiques, maths, ...
• styles, frames, protections, ...
• Mises à jour difficiles :
– données utiles et mises en forme ;
– restructuration ou remise en forme de l’ensemble des pages du site
fastidieux.
• Mélange le fond et la forme
– méta-données avec la présentation
– Pages conçues pour 1 type de terminal
14
HTML
Feuilles de style
• Introduite pour diversifier les présentations
• CSS (Cascading Style Sheet)
– mécanisme d'héritage entre nœuds
– une balise hérite de la parente
– seulement ce qu'elle spécifie est redéfini
• Recommandation W3C en décembre 1996
• Mécanisme simple pour ajouter un style aux
documents Web
– fonte, taille, couleur, etc.
• Utilisables avec XML
15
HTML
Exemple de CSS
<LINK
<LINKREL="stylesheet"
REL="stylesheet"HREF="fichier.css">
HREF="fichier.css"> [[......]]
TD,
TD,TH TH{{
@import
@import"truc.css"
"truc.css" font-family:
font-family:"Helvetica",
"Helvetica",
BODY
BODY{{ sans-serif
sans-serif
color: line-height:
line-height:1.35
1.35;;
color:#000
#000; ;
}}
background:
background:#FBFBFF
#FBFBFF; ;
margin-left:
margin-left:9%9%; ; H1,
H1,H2 H2{{
margin-right:
margin-right:6% 6%; ; margin-top:
margin-top:1.2em
1.2em;;
font-family:
font-family:"Helvetica",
"Helvetica",sans-serif
sans-serif; ; margin-left:
margin-left:-7%
-7%;;
line-height: color:
color:#900
#900;;
line-height:1.35
1.35; ; clear:
}} clear:both
both;;
}}
[[......]]
16
HTML
SGML et HTML : Résumé
• SGML
– langage de la GED plutôt complexe
– très utilisé dans l'industrie
• HTML
– spécialisation de SGML
– adapté à la présentation
– inadapté à l'échange entre programmes
17
HTML
3. XML: définitions de base
• XML est un méta-langage universel pour représenter les données
échangées sur le Web qui permet au développeur de délivrer du contenu
depuis les applications à d'autres applications ou aux navigateurs
• XML standardise la manière dont l'information est :
– échangée
– présentée
– archivée
– retrouvée
– transformée
– cryptée
– ...
18
XML
XML : exemple simple
Document bien formé:
<Blé>
<Type>Dur</Type>
<Region> <Nom>Ouest</Nom>
<Capitale>Oran</Capitale>
</Region>
<année>1995</année>
<Prix Unite = "DA"> 50.5 </Prix>
</Blé>
23
• Tous les éléments ouverts doivent être fermés.
• Un élément parent est toujours fermé après la fermeture
des éléments fils.
Voici un contre-exemple où l’élément fils b est
incorrectement fermé après la fermeture de son
élément parent a : <a><b></a></b>.
Pour connaître plus précisément les caractères autorisés,
vous pouvez vous reporter à la
grammaire XML du W3C disponible à l’adresse
http://www.w3.org/TR/2006/REC-xml-20060816/ #sec-
well-formed.
24
Quelques conventions de nommage
Voici quelques conventions souvent employées dans les documents
XML :
• Employer des minuscules pour les attributs et les éléments.
• Éviter les accents dans les noms d’attributs et d’éléments pour des
raisons de compatibilité avec les outils du marché qui proviennent
souvent d’un univers anglo-saxon.
• Préférer les guillemets délimitant les valeurs d’attribut.
• Séparer les noms composés de plusieurs mots par les caractères -, _, .
ou une majuscule.
Essayer d’être homogène dans votre document en gardant la même
convention.
Exemples :
<value-of/>
<valEntier></valEntier>
25
26
Exemple complet
27
Modèle arborescent
@Type ALgérien
@Catégorie ***
Nom Safir
Restaurant
Manager Kadi
No 7
Ville Alger
28
XML
Présentation textuelle
<Restaurant Type= " algérien" Categorie="***">
<Nom>Safir</Nom>
<Manager>Kadi</Manager>
<Adresse>
<No> 7</No>
<Rue>Liberté</Rue>
<Ville>Alger</Ville>
</Adresse> Arbre sérialisé
</Restaurant>
29
XML
Présentation externe
<prix>6.05</prix>
30
XML
Espaces de noms
• Comment mixer des tags issus de différents langages?
<tag xmlns:mic="http://www.michelin.com/2001/Guide",
xmlns:pj="http://www.pagejaune.com/2001/Annuaire">
<mic:Adresse><ville>Mougins</ville><zip>06212</zip></mic:Adresse>
<pj:Adresse>Le Moulin 06 Mougins</pj:Adresse>
32
Pourquoi XML ?
• Un standard d'échange
– Lisible : texte balisé avec marquage
– Clair : séparation du fond et de la forme
– Extensible : supporte les évolutions applicatives
– Sécurisé : pare-feu, encryption, signature
• Développé par le W3C
– Pour le Web (Internet, Intranet)
– S'étend à l'entreprise et ses partenaires
• Supporté par les grands constructeurs
– IBM, Microsoft .net, SUN, BEA, etc.
– Des outils génériques et ouverts
33
Pourquoi XML ?
Forces et faiblesses de XML
• Une technologie structurante • Une syntaxe bavarde
• Clarifie tous les échanges • Un méta-langage, mais de nombreux
langages
• Des standards internes et
externes • Coûteux en CPU
– Parsing
• Transversale à l'entreprise
• Coûteux en mémoire
– Échanges de données
– Instanciation
– Bureautique
• Format compressé à l’étude
– GED
– Sites Web
– Bases de données
– Intégration e-business
– …
34
Pourquoi XML ?
5. Structuration XML de base
5.1 Modèle logique : Document Type Definition
35
36
37
5.2 Objets logiques XML : Element
38
39
40
5.3 Attributs
41
42
5.4 Objets réutilisables: Entity
43
44
45
46
47
5.5) Instance XML
L'instance XML est le texte balisé qui contient les données finales
Elle doit respecter les règles définies dans la DTD (cette validité peut
être vérifiée à l'aide d'un "PARSEUR XML")
ou être un document XML bien formé (balise ouvrant balise fermante)
Elle est structurée en éléments (déclarés dans la DTD)
Elle peut référencer des entités générales
Elle peut contenir des instructions spécifiques ignorées par XML et traitées
par un logiciel associé (SGBD, visualiseur, formateur). Leur forme est :
49
50
51
52
53
6. Domaines nominaux
54
55
56
57
58
59
Ces ressources sont identifiées :
60
61
7. Schéma XML
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86