Beruflich Dokumente
Kultur Dokumente
Points essentiels
I. Prsentation de XML II. Anatomie d'un document XML / Visualisation III. Feuilles de style IV. Vrification d un document XML
document bien-form validation : DTD / Schma
Benedicte.Le-Grand@lip6.fr
V. Liens XML VI. Traitement de XML VII. XML Schemas VIII. Conclusion et rfrences
XML - 08/02/2002 2
XML 08/02/2002
I. Prsentation de XML
I.1. Origine de XML I.2. Concepts de base I.3. Applications XML
XML - 08/02/2002
XML - 08/02/2002
SGML (Standard Generalized Markup Language), et relation avec XML Amliorations apportes par XML par rapport SGML et HTML Avantages de XML pour les non-programmeurs
XML - 08/02/2002 5
Limites de HTML
HTML a t et reste un succs fantastique Conu pour afficher du texte dans un browser Web. Reproches usuels (justifis ou non !)
Manque de vrification syntaxique (pas de validation) Manque de structure HTML non-orient contenu : pas d info smantique Pas international Inadapt lchange de donnes Absence dun mcanisme de liens robuste Non rutilisable Non extensible 7 XML - 08/02/2002
XML - 08/02/2002
XML - 08/02/2002
10
Pourquoi XML ?
XML utilise les fonctionnalits de SGML dont il a besoin et incorpore les leons apprises dHTML XML peut-tre utilis avec les protocoles (HTTP, MIME) et les mcanismes (URLs) du Web Supporte une grande varit dapplications Compatible avec SGML Facile dcrire des programmes qui traitent des docs XML (Java, SmallTalk, C, C++, JavaScript, Tcl, Perl, Python ) Documents XML faciles crer Lisibilit des documents XML
XML - 08/02/2002 11
XML - 08/02/2002
14
Qu est- ce qu XML ?
Extensible Markup Language Une syntaxe pour les documents Un meta-markup language Un langage structurel et smantique, pas un langage de formatage Pas seulement pour les pages Web
XML - 08/02/2002
XML - 08/02/2002
20
Donnes auto-descriptives
Beaucoup de donnes sont perdues cause de problmes de format XML est trs simple XML est auto-descriptif XML est bien document
XML - 08/02/2002
21
XML - 08/02/2002
22
XML - 08/02/2002
24
Applications XML
Application XML : langage de markup spcifique utilisant la meta-syntaxe XML Les diffrentes applications XML ont leurs propres syntaxes et vocabulaires, avec des contraintes spcifiques
XML - 08/02/2002
25
XML - 08/02/2002
26
Points essentiels
I. Prsentation de XML II. Anatomie d'un document XML / Visualisation III. Feuilles de style IV. Vrification d un document XML
document bien-form validation : DTD / Schma
V. Liens XML VI. Traitement de XML VII. XML Schemas VIII. Conclusion et rfrences
XML - 08/02/2002 29
XML - 08/02/2002
30
Markup
Ajout de caractres un morceau dinformation, qui peut tre utilis pour traiter cette information.
Trs simple : sparateurs de champs pour importer dans une BD (virgules) Trs riche : Text Encoding Initiative (versions, traductions, interprtation de documents historiques)
Orient contenu / orient prsentation Caractres de markup en XML : < & > " Tout ce qui n'est pas du markup est du contenu
XML - 08/02/2002 32
XML - 08/02/2002
31
XML - 08/02/2002
33
34
version : numro de version du standard XML auquel le document se conforme (1.0). (Obligatoire) encoding : nom de l'encodage de caractres employ dans le fichier (UTF-8, UTF-16, ) standalone : vaut "no" si le document XML fait rfrence une DTD ou des entits dfinies dans un autre fichier, vaut "yes" sinon.
Exemple d lment
<title>My Home Page</title> Balise de dbut : <title> Contenu : My Home Page Balise de fin : </title>
Une balise de dbut Du contenu (texte ou lments) Une balise de fin (nom identique la balise de dbut)
XML - 08/02/2002 37
XML - 08/02/2002
38
Guillemets/apostrophes obligatoires pour la valeur Fusion des ensembles d'attributs pour un lment donn La valeur d'un attribut ne peut pas tre structure Un lment ne peut pas avoir deux attributs de 40 XML - 08/02/2002 mme nom
Rgles de nommage
Au moins une lettre : a z ou A Z Peut commencer par _ ou : La 1re lettre peut tre suivie par une ou plusieurs lettres, chiffres, tirets, underscores, points, et l'ensemble des caractres Unicode. http://www.w3.org/XML/REC-xml Pas d'espaces ni de tabulations Seuls signes de ponctuation autoriss : tiret et point
XML - 08/02/2002 41
Commentaires
<!-- ceci est un commentaire --> Tout le contenu sera ignor par le processeur XML Pas d'espace dans les balises <!-- et --> Pas de commentaire l'intrieur d'autre markup <para <!-- ae !--> > bonjour </para>
XML - 08/02/2002 42
5 entits prdfinies (pour les caractres de markup) & ' > < " & ou &#38; ' ou ' > ou > < ou &#60; " ou "
XML - 08/02/2002 43
Sections CDATA
Pour garder le texte tel qu'il est : <![CDATA[ texte <5 lignes> non regard &" par le processeur]]> Rien n'est alors reconnu comme du markup Exemple : pour inclure du code applicatif (JavaScript, Perl, etc.) dans le code XML (autre manire : Processing Instruction)
XML - 08/02/2002 44
Processing Instructions
Dclaration XML <?xml version="1.0"?> Instructions pour des applications spcifiques
<?xml version="1.0"?> <home.page> <para>This is text containing two processing instructions, <?javascript I can put whatever I like here?> <?perl And I can put whatever I like here too?> one for each interpreter.</para> </home.page>
XML - 08/02/2002
Internet Explorer 5
XML - 08/02/2002
47
XML - 08/02/2002
48
XML - 08/02/2002
49
50
XML - 08/02/2002
51
XML - 08/02/2002
52
<?xml version="1.0" ?> <helptopic> <title keyword="printing,network;printing,shared printer"> How to use a shared network printer?</title> <procedure> <step><action>In <icon>Network Neighborhood</icon>, locate and double-click the computer where the printer you want to use is located. </action> <tip targetgroup="beginners">To see which computers have shared printers attached, click the <menu>View</menu> menu, click <menu>Details</menu>, and look for printer names or descriptions in the Comment column of the Network Neighborhood window.</tip> </step> <step> <action>Double click the printer icon in the window that appears.</action> </step> <step> <action> To set up the printer, follow the instructions on the screen. </action></step> </procedure> <tip> After you have set up a network printer, you can use it as if it were attached to your computer. For related topics, look up "printing" in the Help Index. </tip> XML - 08/02/2002 </helptopic>
Autre exemple
53
XML - 08/02/2002
54
Points essentiels
I. Prsentation de XML II. Anatomie d'un document XML / Visualisation III. Feuilles de style IV. Vrification d un document XML
document bien-form validation : DTD / Schma
V. Liens XML VI. Traitement de XML VII. XML Schemas VIII. Conclusion et rfrences
XML - 08/02/2002 55 XML - 08/02/2002 56
Feuilles de style
Sparation du contenu et de la prsentation Interoprabilit : affichage sur le Web, sur papier, BD, Rutilisabilit/ durabilit : le document ne devient pas obsolte avec l'volution des techniques informatiques ; il pourra tre trait par des applications inexistantes au dpart
XML - 08/02/2002 57
Feuilles de style
Spares du document XML CSS : Cascading Style Sheets
CSS1 : Level 1 CSS2 : Level 2
XSL : Extensible Stylesheet Language DSSL : Document Style and Semantics Language
XML - 08/02/2002 58
CSS ou XSL ?
CSS : plus large support CSS : plus stable XSL : plus puissant
III.1. CSS
XML - 08/02/2002
59
XML - 08/02/2002
60
XML - 08/02/2002
61
XML - 08/02/2002
62
Proprits de CSS
Tout lment n'a pas besoin d'une rgle lment racine : au moins display: block
XML - 08/02/2002
63
XML - 08/02/2002
64
III.2. XSL
XML - 08/02/2002
65
XML - 08/02/2002
66
<?xml version="1.0" ?> <?xml:stylesheet type="text/xsl" href="helptopic.xsl" ?> <helptopic> <title keyword="printing,network;printing,shared printer">
XML - 08/02/2002
67
XML - 08/02/2002
68
Templates
<HTML> <HEAD> <TITLE> XSL instructions to get the title </TITLE> </HEAD> <H1>XSL instructions to get the title</H1> <BODY> XSL instructions to get the data </BODY> </HTML>
XML - 08/02/2002 70
Instructions XSL
Une feuille de style XSL est un document XML bien-form Les instructions XSL sont des lments XML particuliers
xsl:apply-templates xsl:template xsl:for-each xsl:value-of quelques autres
XML - 08/02/2002 71
Points essentiels
I. Prsentation de XML II. Anatomie d'un document XML / Visualisation III. Feuilles de style IV. Vrification d un document XML
document bien-form validation : DTD / Schma
V. Liens XML VI. Traitement de XML VII. XML Schemas VIII. Conclusion et rfrences
XML - 08/02/2002 72
XML - 08/02/2002
73
74
XML - 08/02/2002
75
XML - 08/02/2002
76
XML - 08/02/2002
< et & utiliss seulement pour les balises de dbut et les entits Correct :
<H1>O Reilly & Associates</H1>
Incorrect :
<H1>O Reilly & Associates</H1>
Correct :
<CODE>for (int i =0; i <= args.length; i++) </CODE>
Incorrect :
<CODE>for (int i =0; i <= args.length; i++) </CODE>
XML - 08/02/2002 79 XML - 08/02/2002 80
Vrification de la "bonne-formation"
Comment vrifier qu'un document XML est bien form ? Analyseurs ("parsers") non-validants :
Logiciels qui vrifient la syntaxe des fichiers en fonctions des rgles de "bonneformation" vues prcdemment
XML - 08/02/2002
81
XML - 08/02/2002
82
Exemple
<?xml version="1.0"> <?protext objid="I5678" ?> <helptopic> <title keyword="printing,network;printing,shared printer">How to use a shared network printer?</title> <procedure> <step><action>In <icon>Network Neighborhood</icon>, locate and double-click the computer where the printer you want to use is located. </action> <tip targetgroup="beginners">To see which computers have shared printers attached, click the <menu>View</menu> menu, click <menu>Details</menu>, & look for printer names or descriptions in the Comment column of the Network Neighborhood window.</tip> </step> <step> <action>&doubleclick; the printer icon in the window that appears.</action> </step> <step> <action> To set up the printer, <xref linkend="id45">follow the instructions</xref> on the screen. </step> </procedure> <rule form=double> <tip> <P>After you have set up a network printer, you can use it as if it were attached to your computer. For related topics, look up "printing" in the Help Index. </p> </tip> </helptopic>
XML - 08/02/2002
83
XML - 08/02/2002
84
Document bien-form
<?xml version="1.0" ?> <?protext objid="I5678" ?> <!DOCTYPE helptopic [ <!ENTITY doubleclick "Double-click"> ]> <helptopic> <title keyword="printing,network;printing,shared printer">How to use a shared network printer?</title> <procedure> <step><action>In <icon>Network Neighborhood</icon>, locate and double-click the computer where the printer you want to use is located. </action> <tip targetgroup="beginners">To see which computers have shared printers attached, click the <menu>View</menu> menu, click <menu>Details</menu>, & look for printer names or descriptions in the Comment column of the Network Neighborhood window.</tip> </step> <step> <action>&doubleclick; the printer icon in the window that appears.</action> </step> <step> <action> To set up the printer, <xref linkend="id45">follow the instructions</xref> on the screen. </action></step> </procedure> <rule form="double"/> <tip> <p>After you have set up a network printer, you can use it as if it were attached to your computer. For related topics, look up "printing" in the Help Index. </p> </tip> </helptopic>
XML - 08/02/2002
85
XML - 08/02/2002
86
Intrt de la validation
Facilite l'change de fichiers, car ils utilisent la mme grammaire Validit pas ncessaire pour les browsers
Importance de la validation
Assure que les donnes sont correctes avant de les donner un programme Assure qu un format donn est suivi tablit ce qui doit tre support Tous les documents n ont pas besoin d tres valides ; tre bien-form peut suffire
87 XML - 08/02/2002 88
XML - 08/02/2002
DTD et validation
DTD : modle de la structure du contenu d'un document XML HTML a une seule DTD XML permet la cration de nos propres DTDs, en fonction des applications DTD stricte ou non L'auteur de la DTD choisit ce qui est autoris ou non
XML - 08/02/2002 89
DTD et validit
Liste des lments, attributs et entits contenus dans le document XML, ainsi que les relations entre eux Validation : Vrification de la conformit d un document XML une DTD donne Bonne-formation = prrequis pour la validit
XML - 08/02/2002 90
DTD interne
Toutes les dclarations sont internes Pas de traitement de documents externes Dclaration XML : <?xml version="1.0" standalone="yes"?> Les dclarations d'entits externes doivent tre contenues dans la DTD interne
XML - 08/02/2002 91
XML - 08/02/2002
92
a. Dclaration d'entits
Contenues dans la DTD qui accompagne le document XML
Entit : unit de stockage Un document XML peut tre constitu de diffrents fichiers ou objets dont chacun est une entit
XML - 08/02/2002 94
XML - 08/02/2002
93
Dclaration d'entits
Entit interne
Entit analysable : contenu = texte de remplacement
Entit gnrale (document) Entit paramtre (DTD)
. .
Exemple
XM L Docum ent
XM L Docum ent
Entit externe
Entit analysable : contenu = texte de remplacement
Entit gnrale Entit paramtre (DTD)
. . % external_chapter . .
<!ENTIT Y front_page SYST EM
w il l
epl be r
ace
d by
. .
XML - 08/02/2002
% front_page
re plac ed w ill be
by
96
XML - 08/02/2002
Entits paramtres
Raccourci pour les dclarations de markup Syntaxe diffrente des entits caractres
Signe % (au lieu de &)
Exemple :
<!ENTITY % titre "H1 | H2 | H3 | H4 | H5 | H6 "> <!ENTITY % contenu "(%titre | %texte )*"> <!ELEMENT BODY %contenu>
XML - 08/02/2002 99 XML - 08/02/2002 100
b. Dclaration d'lments
<!ELEMENT nom contenu> nom : nom standard XML (cf. rgles de nommage) contenu :
Mot-cl EMPTY Mot-cl ANY Modle de contenu ("content model") : squence et rptition des lments contenus dans cet lment
XML - 08/02/2002 102
Valide : <GREETING>texte sans markup</GREETING> Invalide : <GREETING><sometag></sometag></GREETING> Invalide : <GREETING> <GREETING>texte</GREETING> </GREETING>
XML - 08/02/2002 105
XML - 08/02/2002
107
Squences d'lments
Liste des lments possibles, contenus dans des parenthses et spars par des virgules <!ELEMENT repas (entre, plat, dessert)> Un repas doit tre compos d'une entre, suivie d'un plat puis d'un dessert. Les trois lments doivent tre prsents dans l'lment repas
XML - 08/02/2002 109
Choix d'lments
Choix indiqu par une ligne verticale | <!ELEMENT choix (celui-ci | celui_l)> Un lment choix consiste en un lment celui-ci ou un lment celui-l Seul un lment peut tre slectionn, quelle que soit la longueur de la liste
XML - 08/02/2002 110
lment combi :
ou entre1 plat1 entre2 plat1 ou ou entre1 plat2 entre2 plat2
111
XML - 08/02/2002
Contenu caractre
Mot-cl PCDATA lorsque du texte (et seulement du texte) est contenu dans un lment Prcd de # Un Parseable Character ne contient pas de markup
XML - 08/02/2002
114
Contenu mixte
Utilisation particulire de la grammaire :
Un ensemble d'alternatives #PCDATA en premier Toujours * la fin (sauf quand uniquement #PCDATA) <!ELEMENT mixte (#PCDATA | entre | plat)*>
c. Dclaration d'attributs
Syntaxe : <!ATTLIST nom_element definition_attr> Dfinition d'attribut : nom_attrib type_attrib ou nom_attrib type_attrib valeur_par_dfaut
XML - 08/02/2002 116
XML - 08/02/2002
115
Types d'attributs
Chane de caractres (CDATA)
<!ATTLIST livre auteur CDATA>
Attribut numr
Vrification de la validit
Vrification de la DTD Conformit entre le document et les rgles dfinies dans la DTD
XML - 08/02/2002
119
XML - 08/02/2002
120
Application
tude d'une DTD
Nombre d'lments dfinis ? Comment rendre l'auteur facultatif ?
Document XML
Nombre de sous-lments d'article ?
lments / Attributs ?
ternelle question Historiquement :
Attributs pour les proprits abstraites, intangibles (couleur, taille, etc.) lments pour les composants physiques
lments si l'information doit tre structure Plus facile d'diter les lments que les attributs dans des diteurs XML Vrification plus facile de la valeur d'un attribut Attributs "fusionnables" entre diffrents documents XML Plus facile de fragmenter un document XML en fonction de la structure des lments qu'en fonction de la valeur des attributs
XML - 08/02/2002 125
Espaces de nommage
Un document XML peut utiliser des balises dfinies dans diffrentes DTDs Pour utiliser des symboles dfinis ailleurs, le document XML doit "importer" l'espace de noms correspondant : lve les ambiguts ventuelles des intituls de balise Ajout d'un attribut appropri
<?xml version="1.0" encoding="ISO-8859-1 ?> <article xmlns:html=http://www.w3.org/Profiles/XHTML-transitional>
Points essentiels
I. Prsentation de XML II. Anatomie d'un document XML / Visualisation III. Feuilles de style IV. Vrification d un document XML
document bien-form validation : DTD / Schma
Balises prfixes
<html:img html:src=""/>
XML - 08/02/2002 127
V. Liens XML VI. Traitement de XML VII. XML Schemas VIII. Conclusion et rfrences
XML - 08/02/2002 128
V. Liens XML
XML - 08/02/2002
129
XML - 08/02/2002
130
Hyperliens HTML
Association entre :
deux parties de texte du texte et un objet un objet et du texte
Attributs des liens pour contrler quand et comment les liens sont activs Ajout de comportement hyperlien
XML - 08/02/2002 131
Hyperliens XML
XLink : XML Linking Language Sources Cibles "linking elements" ressources
car les liens sont bidirectionnels Les linking elements contiennent des "locators" donnes, rsultats de requte dans une BD, etc.
Liens simples
Trs proches des liens HTML 1 seul locator 1 seule direction
<lien.simple xlink:form="simple" href=http://toto.xml>aller voir</lien.simple>
attribut xlink:type xlink:href
Liens simples
valeurs possibles simple une URL new signification destination (unique) du lien le document destination apparatra dans une nouvelle fentre le document destination apparatra dans la mme fentre que le document courant (comportement similaire aux liens HTML) le document destination apparatra dans le document courant, la place de l'lment constituant le lien (comportement similaire aux balises HTML <img> et <object>) l'application tratant le document choisira le traitement appropri
136
replace
embed xlink:show
XML - 08/02/2002 135
undefined
XML - 08/02/2002
onLoad
xlink:title
XML - 08/02/2002
138
Liens tendus
Liens pas ncessairement contenus dans l'un des fichiers XML relis par le lien Relier ensemble plusieurs ressources (pas seulement une relation 1-1 comme en HTML) Relier des ressources qui ne contiennent pas les liens elles-mmes (graphiques, sons, documents read-only, non modifiables pour inclure les liens) Filtrage dynamique, addition, modification de liens Une application peut traiter les liens selon ses propres besoins
XML - 08/02/2002 140
Liens tendus
attribut xlink:type (obligatoire) extended valeur signification dfinition de l'lment englobant formant un lien tendu
attribut
xlink:type (obligatoire) xlink:href (obligatoire) une URL identificateur (avec prfixe si l'identificateur est dfini dans un autre fichier) locator
xlink:role
l'identificateur utilis ici peut tre utilis pour crer un arc o le lien tendu serait le point de dpart ou d'arrive (le lien tendu, comme n'importe quel autre identificateur (avec prfixe si lment d'un document XML, peut tre l'identificateur est dfini dans considr comme une ressource un autre fichier) composant un autre lie une chane de caractres donne un commentaire sur le lien tendu dans son ensemble
141
xlink:role
xlink:title
xlink:title
XML - 08/02/2002
XML - 08/02/2002
142
tablissement d'un arc entre deux des ressources associes au lien tendu, l'une constituant le point de dpart de l'arc et l'autre le point d'arrive.
xlink:role
l'identificateur utilis ici peut tre utilis comme identificateur (avec prfixe si valeur de l'attribut xlink:from ou xlink:to d'un autre l'identificateur est dfini dans un autre lment pour crer un arc entre l'lment courant fichier) et cet autre lment l'identificateur utilis ici doit tre dfini dans un identificateur (avec prfixe si autre lment l'aide de l'attribut xlink:role. Il l'identificateur est dfini dans un autre indique alors que cet autre lment est le point de fichier) dpart de l'arc spcifi par l'lment courant l'identificateur utilis ici doit tre dfini dans un autre lment l'aide de l'attribut xlink:role. Il identificateur (avec prfixe si indique alors que cet autre lment est le point l'identificateur est dfini dans un autre d'arrive (destination) de l'arc spcifi par fichier) l'lment courant new, replace, embed, udefined onLoad, onRequest, undefined comme pour les liens simples comme pour les liens simples
xlink:type
resource
xlink:role
l'identificateur utilis ici peut tre utilis comme identificateur (avec prfixe si valeur de l'attribut xlink:from ou xlink:to d'un autre l'identificateur est dfini dans un autre lment pour crer un arc entre l'lment courant fichier) et cet autre lment le texte fourni pourra servir d'indice supplmentaire, par exemple en tant affich quand la souris se trouve sur l'lment contenant le lien
xlink:from
xlink:title
XML - 08/02/2002
143
XML - 08/02/2002
144
Exemple
2 3 4 5 6 7 8 9 10
XML - 08/02/2002
148
Points essentiels
I. Prsentation de XML II. Anatomie d'un document XML / Visualisation III. Feuilles de style IV. Vrification d un document XML
document bien-form validation : DTD / Schma
V. Liens XML VI. Traitement de XML VII. XML Schemas VIII. Conclusion et rfrences
XML - 08/02/2002 149 XML - 08/02/2002 150
En hard copy :
conversion de XML en RTF (Rich Text Format) pour utiliser avec MS Word, ou un autre langage de markup
XML - 08/02/2002
XML - 08/02/2002
153
Exemple de traitement
Utilisateur dbutant :
Supprimer les lments steps dont l'attribut experience vaut donebefore
Utilisateur avanc :
Supprimer les lments tip
XML - 08/02/2002
155
XML - 08/02/2002
156
XML - 08/02/2002
Inconvnients :
Implmentations :
Inconvnients :
Implmentation :
Plus difficile de d'abord construire un arbre, puis de naviguer l'intrieur Ncessite beaucoup de mmoire Plus lent Ncessite deux passages DOM (Document Object Model)
XML - 08/02/2002
http://www.w3.org/TR/DOM-Level-2-Core/
Utilisation du DOM
Utilisation de JavaScript ou VBScript dans les pages Web Application externe accdant au document par le browser Parser externe implmentant le DOM
XML - 08/02/2002 165
Mthodes :
insertBefore, replaceChild, createElement, getElementByTagName, createTextNode,
XML - 08/02/2002
166
Points essentiels
I. Prsentation de XML II. Anatomie d'un document XML / Visualisation III. Feuilles de style IV. Vrification d un document XML
document bien-form validation : DTD / Schma
V. Liens XML VI. Traitement de XML VII. XML Schemas VIII. Conclusion et rfrences
XML - 08/02/2002 167 XML - 08/02/2002 168
Schmas XML
DTD parfois inadaptes
Peu de possibilits de vrifier les donnes l'intrieur d'un lment La DTD n'est pas un document XML ni SGML, elle a une syntaxe particulire
Apprentissage plus long Ne bnficie pas de l'automatisation
Schmas XML
Un schma :
Spcifie la syntaxe d'une classe de documents XML Dfinit les lments et attributs, ainsi que les contraintes sur les valeurs de ceux-ci Est contenu dans un lment du genre :
<xsd:schema xmlns:xsd=http://www.w3.org/1999/XMLSchema> </xsd:schema>
Besoin d'un schma XML qui permette de mieux contrler les donnes tout en partageant la syntaxe XML
XML - 08/02/2002 169
XML - 08/02/2002
170
XML - 08/02/2002
lment xsd:complexType
Dfinit le contenu de l'lment qui le contient Peut avoir l'attribut content, qui indique le type de contenu que l'lment peut avoir :
elementOnly textOnly Mixed empty
XML - 08/02/2002
173
XML - 08/02/2002
174
Exemple
<xsd:element name="article" > <xsd:complexType content="elementOnly"> ... <xsd:element name="texte" > <xsd:complexType content="mixed" > <xsd:element name="grand" type="xsd:string" minOccurs="0" maxOccurs="unbounded" /> <xsd:element name="image" minOccurs="0" maxOccurs="unbounded" xmlns:html="http://www.w3.org/Profiles/XHTML-transitional" > <xsd:complexType content="elementOnly" > <xsd:element ref="html:img" minOccurs="1" /> <xsd:element name="legende" type="xsd:string" minOccurs="0" /> </xsd:complexType> </xsd:element> </xsd:complexType> </xsd:element> </xsd:complexType> </xsd:element>
XML - 08/02/2002 175
Dfinition d'attributs
Exemple : <article titre="Un journaliste accuse, un policier dment" auteur="Alain Connu" date="14 juin 1972" lieu="banquise"> Schma correspondant : <xsd:element name="article" > <xsd:complexType content="elementOnly"> ... <!-- les attributs doivent tre dclar aprs les sous-lments --> <xsd:attribute name="titre" type="xsd:string" minOccurs="1" /> <xsd:attribute name="auteur" type="xsd:string" use="required" /> <xsd:attribute name="date" type="xsd:date" use="required" /> <xsd:attribute name="lieu" type="xsd:string" use="required" /> </xsd:complexType> </xsd:element>
XML - 08/02/2002 176
Rfrence au schma
<ElementRacine xmlns="UnFichier.xsd"> ... </ElementRacine> ElementRacine xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xsi:schemaLocation="UnURISymbolisantLEspaceDeNom UnFichier.xsd"> ... </ElementRacine> <ElementRacine xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xsi:noNamespaceSchemaLocation="UnFichier.xsd"> ... </ElementRacine>
XML - 08/02/2002
178
Points essentiels
I. Prsentation de XML II. Anatomie d'un document XML / Visualisation III. Feuilles de style IV. Vrification d un document XML
document bien-form validation : DTD / Schma
VIII. Conclusion
L'usage d'XML va largement dborder le WWW XML va devenir rapidement la lingua franca de l'informatique, parle autant par les SGBD que par les outils de bureautique et de documentation, par les logiciels de gestion aussi bien que par les applications techniques et scientifiques Automatisation des activits administratives et logistiques Simplification de l'change de Donnes Informatis (EDI)
179 XML - 08/02/2002 180
V. Liens XML VI. Traitement de XML VII. XML Schemas VIII. Conclusion et rfrences
XML - 08/02/2002
Conclusion (suite)
Rfrences
http://www.w3.org/ Spcification en franais http://babel.alis.com/web_ml/xml/REC-xml.fr.html The XML handbook
http://www.oasis-open.org/cover/xml.html
XML - 08/02/2002 181 XML - 08/02/2002 182
Questions ?
XML - 08/02/2002
183