le langage xml : fonctionnalités et standards associés
DESCRIPTION
Le langage XML : fonctionnalités et standards associés. Antoine Rizk. La problèmatique. Création de l’information : 20% du PNB 90% de l’information sont des documents Traitement de texte et PAO traditionnels 30% du temps sur le formattage 30% du temps sur la recherche d’informations - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/1.jpg)
1
Anto
ine R
izk, X
ML
200
5
Le langage XML :
fonctionnalités et standards associés
Antoine Rizk
![Page 2: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/2.jpg)
2
Anto
ine R
izk, X
ML
200
5
La problèmatique
Création de l’information : 20% du PNB
90% de l’information sont des documents
Traitement de texte et PAO traditionnels
- 30% du temps sur le formattage
- 30% du temps sur la recherche d’informations
La technologie change tous les 18 mois
US : nombre de documents produits/an = 92 Mds
![Page 3: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/3.jpg)
3
Anto
ine R
izk, X
ML
200
5
XML : Les besoins
Productivité
Réutilisabilité
Perrenité
Integrité
Partage
Portabilité
![Page 4: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/4.jpg)
4
Anto
ine R
izk, X
ML
200
5
Les origines
1960
1986
1992
1998 XML
HTML
SGML
GM
Internet
WWW
![Page 5: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/5.jpg)
5
Anto
ine R
izk, X
ML
200
5
Historique
1996 : un groupe de 80 experts SGML se réunit
durant 11 semaines
Nov 1996 : 1er Draft XML du W3C à la conférence
SGML à Boston
Fév 1998 : XML adopté par le W3C comme
recommandation
![Page 6: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/6.jpg)
6
Anto
ine R
izk, X
ML
200
5
Rappel des concepts
M. MorelSEML, Promopole12 av des Prés78180 Montigny le BretonneuxSt-Quentin en Yvelines le 21/9/1995
Monsieur,
Conformément au contrat de bail signé entre la SEML et notre société XMLSys le 26/5/1993, jesouhaite vous informer de mon intention de mettre fin à ce bail et de donner congé à l'expirationde cette période triennale, soit au 31/5/1996.
Restant à votre disposition pour accomplir les formalités nécessaires, je vous prie d'agréer,Monsieur, l'expression de ma parfaite considération.
M. Dupont (Gérant)
![Page 7: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/7.jpg)
7
Anto
ine R
izk, X
ML
200
5
XML demain
A partir du deuxième semestre de l’an 2000 :
le volume des données XML sera plus important que celui des données HTML.
- Gartner Group
47% des entreprises utiliseront XML
47% des entreprises utiliseront Linux
90% des entreprises utiliseront Java
- Java Web Panel survey, IBM 12/98
![Page 8: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/8.jpg)
8
Anto
ine R
izk, X
ML
200
5
Generalised Markup
Generalised ou descriptive Markup
- n’inclut pas les instructions de formattage- décrit uniquement le rôle logique d’un élément- le formattage est décrit séparément par une feuille de style
\par
Ce document est une introduction à XML
ou bien
<par>
Ce document est une introduction à XML
</par>
![Page 9: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/9.jpg)
9
Anto
ine R
izk, X
ML
200
5
Le balisage (Markup)
Exemple RTF:
\par\pard\sb240\sl-264\b0\hyphpar0
Ce document est une introduction à XML
\par Starts a new paragraph
\pard Restores the default paragraph properties
\sb240 Twelve-point space before the paragraph
\sl-264 Puts a 13.2 point space between lines.
\b0 Switches bold off
\hyphpar0 Switches off automatic hyphenation for the paragraph
![Page 10: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/10.jpg)
10
Anto
ine R
izk, X
ML
200
5
HTML
<body bgcolor=«#FFFFFF» text =«#000000» link=«#054BBB» vlink=«#054BBB» background=«/Images/backshadow2.gif»>
<a name=«top»></a>
<img src=«/Images/ec.gif» border=0 width=50 height=5 align=left>
HTML 2.0, HTML 3.2 et HTML 4.0 sont des DTD SGML
![Page 11: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/11.jpg)
11
Anto
ine R
izk, X
ML
200
5
HTML
L'affichage de très longues pages
- Frames, DIV, découpage en plusieurs pages
Contôle de la présentation
- CSS
Les liens hypertextes
- IMG, HREF
Un nombre prédéfini de balises
![Page 12: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/12.jpg)
12
Anto
ine R
izk, X
ML
200
5
HTML
La diffusion d'informations structurées- La charge sur le serveur- Aucune interprétation côté client
• problème de mise-à-jour de fragments de pages
- Recherche d'informations pauvre
Format de données non perenne Format d'échange de données
nonretraitables
![Page 13: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/13.jpg)
13
Anto
ine R
izk, X
ML
200
5
Introduction à XML
Petit exemple
<?xml version="1.0" standalone="yes"?>
<IdentityCard>
<FirstName>Antoine</FirstName>
<LastName>Rizk</LastName>
<CardNumber>11437398</CardNumber>
<Photo url="ar.gif"/>
</IdentityCard>
![Page 14: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/14.jpg)
14
Anto
ine R
izk, X
ML
200
5
Documents bien formés
A chaque balise ouvrante doit correspondre une balise fermante
Balisage spécifique pour les éléments vides
<IMG SRC="picture.gif"/>
<IMG SRC="picture.gif"></IMG>
Les balises doivent s’imbriquer correctement
Une racine doit exister
Un élément ne peut avoir des attributs vides
<DL COMPACT>
incorrecte
<DL COMPACT="">
correcte
![Page 15: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/15.jpg)
15
Anto
ine R
izk, X
ML
200
5
Documents valides
Un document valide doit
être bien formé
ET
se conformer à une grammaire (DTD)
![Page 16: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/16.jpg)
16
Anto
ine R
izk, X
ML
200
5
La DTD
Document Type Definition - Structure générique logique
- Grammaire de la structure du document Etablit les règles de structure de documents Définit les noms d'éléments Définit les relations entre éléments Déclare les attributs ainsi que leurs types
Documentparser
validant
DTD
erreurs
sortie
![Page 17: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/17.jpg)
17
Anto
ine R
izk, X
ML
200
5
Exemple (1)
<memo>
<to>M. Bonnard</to>
<from>A. Rizk</from>
<date>4 Septembre 2000</date>
<subject>Présentation XSL </subject>
<para>La présentation XSL suivra celle sur XML</para>
</memo>
![Page 18: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/18.jpg)
18
Anto
ine R
izk, X
ML
200
5
DTD memo
<!DOCTYPE memo [
<!ELEMENT memo (to, from, date, subject?, para*) >
<!ELEMENT para (#PCDATA) >
<!ELEMENT to (#PCDATA) >
<!ELEMENT from (#PCDATA) >
<!ELEMENT date (#PCDATA) >
<!ELEMENT subject (#PCDATA) >
]>
![Page 19: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/19.jpg)
19
Anto
ine R
izk, X
ML
200
5
DTD memo (2)
<!DOCTYPE memo [
<!ELEMENT memo (to, from, date, subject?, (para|figure)+ >
<!ELEMENT figure (graphic, caption?) >
<!ELEMENT graphic EMPTY >
<!ELEMENT para (#PCDATA|citation|figref)+ >
<!ELEMENT to (#PCDATA) ><!ELEMENT from (#PCDATA) ><!ELEMENT date (#PCDATA) ><!ELEMENT subject (#PCDATA) ><!ELEMENT citation (#PCDATA) ><!ELEMENT figref (#PCDATA) > <!ELEMENT caption (#PCDATA) >]>
![Page 20: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/20.jpg)
20
Anto
ine R
izk, X
ML
200
5
Exemple (2)
<?xml version="1.0" ?>
<Book Author=”Anonyme"> <Title>Un livre exemplaire</Title> <Chapter id="1"> Ceci est le chapitre 1. Pas très intéressant </Chapter> <Chapter id="2"> Ceci est le chapitre 2.
Il est plus long, mais il n’est pas plus intéressant.
</Chapter>
</Book>
![Page 21: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/21.jpg)
21
Anto
ine R
izk, X
ML
200
5
DTD Book
<!DOCTYPE Book [
<!ELEMENT Book (Title, Chapter+)>
<!ATTLIST Book Author CDATA #REQUIRED>
<!ELEMENT Title (#PCDATA)>
<!ELEMENT Chapter (#PCDATA)>
<!ATTLIST Chapter id ID #REQUIRED>
]>
![Page 22: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/22.jpg)
22
Anto
ine R
izk, X
ML
200
5
Un document est un arbre
<chapitre>
<titre>ceci est un fragment d'un livre</titre>
<note>
<par> cette note contient deux paragraphes
</par>
<par> un autre paragraphe
</par>
</note>
</chapitre>
chapitre
titrenote
par parceci est un ..
cette note.. un autre ..
![Page 23: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/23.jpg)
23
Anto
ine R
izk, X
ML
200
5
Les parsers
Modèle événementiel (SAX)- Callback appelé pour chaque événement :- début balise, attribut, fin document etc..
Peut être efficace sur les gros documents- L’arbre n’est jamais construit entièrement en mémoire
![Page 24: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/24.jpg)
24
Anto
ine R
izk, X
ML
200
5
Les parsers (API DOM)
Un modèle d’arbre est construit en mémoire (arbres
abstraits)
L’application accède par API à l’arbre pour le
manipuler
API DOM est normalisée (recommandation W3C)
![Page 25: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/25.jpg)
25
Anto
ine R
izk, X
ML
200
5
Limites d’une DTD
Un langage différent de celui des instances Limité à la structure d’arbre, différent du modèle R Pas de typage de contenu Pas d’héritage
=> possibilité d’utiliser des schémas : XML-Schema
![Page 26: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/26.jpg)
26
Anto
ine R
izk, X
ML
200
5
Données/documents
dept postelabo
compta
322
456
postenomRizk
Courtaud
322
322
Parigot 456
<telephone poste="322">
<dept>labo</dept>
<person>Rizk</person>
<person>Courtaud</person>
</telephone>
LABO 322
RIZK,Courtaud
![Page 27: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/27.jpg)
27
Anto
ine R
izk, X
ML
200
5
Données ou documents ?
<chapitre>
<titre>ceci est un fragment d'un livre</titre>
<note>
<par> cette note contient deux paragraphes
</par>
<par> un autre paragraphe
</par>
</note>
</chapitre><transaction>
<time date="19980509"/>
<amount>123</amount>
<currency type="pounds"/>
<from id="X3543>G.Dupont</from>
<to id="X7987>J.Smith</to>
</transaction>
![Page 28: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/28.jpg)
28
Anto
ine R
izk, X
ML
200
5
Les EIP
Presentation ServicesPresentation Services
Access and Integration ServicesAccess and Integration Services
Application ServicesApplication ServicesCollaboration ServicesCollaboration Services
Classification
Metadata
Content Integration
Personalization
SecurityNetwork
Messaging Workflow
Application Integration
SystemManagement
Annotations, Recommendations
Access, HostingWrapping
Multiple Style SheetsVirtual Documents
Information ServicesInformation ServicesDescription, SearchDocs Repositories
![Page 29: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/29.jpg)
29
Anto
ine R
izk, X
ML
200
5
Le “ Virtual XML Warehouse “
Description, organisation et recherche dans des ressources hétérogènes
Unique Point
d’ AccèsArchives
Virtual XML Warehouse
Documents
Bases de données
Web
RDF
![Page 30: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/30.jpg)
30
Anto
ine R
izk, X
ML
200
5
Traitement XML
Parsing et traitement applicatif- import dans un SGBD
Regénération : export d’un SGBD
Fusion de données, génération d’arbre,
transformation- XSL
Présentation - CSS, XSL
![Page 31: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/31.jpg)
31
Anto
ine R
izk, X
ML
200
5
XSL
XSL
Transformer
Sortie (x)FO
Interpreter
(x)
FO
Interpreter
(y)
Sortie (y)
FO
Interpreter
(z)
Sortie (z)
Feuille de style XSL
SourceXML
W3C XSL
RésultatFO
<date>décembre, 1997</date>
<xsl:template match="date"> <fo:block font-style="italic" color="green"> <xsl:apply-templates/> </fo:block></xsl:template>
<fo:block font-style= "italic" color="green" xmlns:fo="http://www.w3.org/TR/WD-xsl/FO">décembre, 1997</fo:block>
<P STYLE="font-style:italic;color:green">décembre, 1997</P>
...
{\c6\f12\i décembre, 1997\par}
![Page 32: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/32.jpg)
32
Anto
ine R
izk, X
ML
200
5
Portail/Serveur d’intermédiation
Internet/Intranet
Terminal XML
Terminal HTML
Terminal
WAP
XSL
XML + XSL
SGBDR
SGBDO
Fichiers
XML
![Page 33: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/33.jpg)
33
Anto
ine R
izk, X
ML
200
5
XML+XSL
SGBD-R
labo
compta
322
456
SGBD-ORizk
Israel
322
322
Parigot 456
<telephone poste="322">
<dept>labo</dept>
<person>Rizk</person>
<person>Israel</person>
</telephone>
Données XML
Plus feuilles XSLInternet/Intranet
Terminal XML
Terminal HTML
Terminal HTML/XML
![Page 34: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/34.jpg)
34
Anto
ine R
izk, X
ML
200
5
XML + XSL architecture type
Browser HTML/XML:CSS / XSL
XSL
Serveurs HTTP Middle-tier
XML
OO XML Repository
R-DBMS
XML+HTML XMLR-DBMS
GXML
SQLTraitement de requêtesXSL ou DOM côté serveur
XML-QL
XSL côté client
![Page 35: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/35.jpg)
35
Anto
ine R
izk, X
ML
200
5
Ex. 2 : ré-ingénierie de données
R-DBMS-1 DBMS-2(IR) DBMS-3
XML XML XML XML statique
Processeur XSLT Feuille XSLT
XML données fusionnées Script python
DB-RESULTAT
DB2XML DB2XML DB2XML
Impression catalogue
Transformations (scripts)
![Page 36: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/36.jpg)
36
Anto
ine R
izk, X
ML
200
5
Les limites
XML reste au niveau syntaxique Pas de typage Pas de sémantique Pas de relations/rôles entre concepts => Les liens hypertextes : XLL (Xlink+Xpath) Les métadonnées : RDF spec et RDF schema Les schémas typés : XML-Schema Les topic maps
![Page 37: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/37.jpg)
37
Anto
ine R
izk, X
ML
200
5
Liens simplesLiens simples
Document BDocument A
Link element Linkresource
![Page 38: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/38.jpg)
38
Anto
ine R
izk, X
ML
200
5
XpathXpath
Document BDocument A
![Page 39: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/39.jpg)
39
Anto
ine R
izk, X
ML
200
5
Liens étendusLiens étendus
Document B
Link elements
Document A
![Page 40: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/40.jpg)
40
Anto
ine R
izk, X
ML
200
5
Liens étendus “out of line”Liens étendus “out of line”
Link elementsDocument C
Document BDocument A
![Page 41: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/41.jpg)
41
Anto
ine R
izk, X
ML
200
5
L’enjeu
Définir une ontologie par domaine Organiser les schémas de navigation
DTD + concepts + roles + sémantique = ontologie ontologie + thesaurus = RDF schema RDF schema => RDF specifications => métadonnées
Augmenter le taux de précision Diminuer le taux de rappel
![Page 42: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/42.jpg)
42
Anto
ine R
izk, X
ML
200
5
L’évolution documentaire
ASCII, JPEG, MPEG...
XML,XSLXQL,XLL, SMIL...
Formats monomédia
Structure syntaxique
Structure sémantique RDFOntologie,Thesauru
s
Intermédiation
ProductionPublication
![Page 43: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/43.jpg)
43
Anto
ine R
izk, X
ML
200
5
Intégration par les Métadonnées
Ontologies
Vocabulaires
Descriptionde ressources
Métadonnées
Données
Informationset Ressources
Organisationdes Connaissances
<tag1> <tag2> <tag3></tag1>
<tag1> <tag2> <tag3></tag1>
![Page 44: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/44.jpg)
44
Anto
ine R
izk, X
ML
200
5
L’état actuel
XML : recommandation 10 fév 1998
DOM : DOM1 (1er oct 1998), DOM2 (recommandation nov 00), DOM3..
Xlink : recommandation 27 Juin 2001
Xpointer : WD 16 août 2002
SVG 1.1 : Recommendation 14 janv 2003
SMIL 2.1 : recommandation 13 déc 2005
XSLT + Xpath : recommandation 16 nov 1999
XSLT2 : candidate recommendation on June 2006
XSL FO : recommendation 15 oct 2001
MathML : V1 (recommandation Avr 1998), V1.1 (Juil. 99), V2 (WD)
XML Schema , XMLQuery RDF : Model&syntax (recommandation fév 1999), Puis 10 fév 2004
XHTML Xforms : Recommendation 14 Mars 2006
![Page 45: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/45.jpg)
46
Anto
ine R
izk, X
ML
200
5
Core Architecture
Query Engine
Session Manager
URL ResolverMetadataStore
Painter
Museum
Painting
XML Wrapper
ResourcesXMLXML
Logical Middle Tier
CWEB/Application Server
Other docs
news, reports
on the Intranete.g. mails,
Well-formedXML docson the Web
XML
XML enabledDBMS
Client Tier
SchemaGenerator
RDF/XMLLoader
XML/XSLProcessor
ResourceDescription
Interface
Query BrowsingInterface
Artist
XML/XSL
Middleware APIs
http
http
Artist
URL
RDF/XMLSchema
RDF/XMLDescriptions
![Page 46: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/46.jpg)
47
Anto
ine R
izk, X
ML
200
5
Pour aller plus loin ..
www.w3.org
www.xmlfr.org
www.oasis-open.org/cover
Livre : A.Michard (chez Eyrolles)
![Page 47: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/47.jpg)
48
Anto
ine R
izk, X
ML
200
5
ZOOM sur XML
![Page 48: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/48.jpg)
49
Anto
ine R
izk, X
ML
200
5
Les éléments
<chapitre>
<titre>ceci est un fragment d'un livre</titre>
<note>
cette note contient deux paragraphes
<par>un paragraphe
</par>
<par> un autre paragraphe
</par>
</note>
<image f="image1.gif"/>
<image f="image2.gif"></image>
</chapitre>
start-tag
end-tag
sensible à la casse
start-tag=end-tag
< = <
> = >
mixed content
emptyelement
data content
![Page 49: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/49.jpg)
50
Anto
ine R
izk, X
ML
200
5
Créer des spans (étendus)
<chapitre>
<titre>ceci est un fragment d'un livre</titre>
<note>
cette note contient <rev/>deux paragraphes
<par>un paragraphe
</par>
<par> un autre <endrev/> paragraphe
</par>
</note>
<image f="image1.gif"/>
<image f="image2.gif"></image>
</chapitre>
![Page 50: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/50.jpg)
51
Anto
ine R
izk, X
ML
200
5
Les attributs
<transaction>
<time date=”04092000" hour="0945"/>
<amount>123</amount>
<currency type="pounds"/>
<from id="X3543”>G.Dupont</from>
<to id="X7987”>J.Smith</to>
</transaction>
AttName/Attvalue sensibles à la casse
Attvalue peut contenir des espaces
" ou ' mais pas les deux à la fois
ex. <vis dimension='2" '/>
ou bien " pour le "
' pour le '
l'omission du nom d'attribut n'est pas permise
![Page 51: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/51.jpg)
52
Anto
ine R
izk, X
ML
200
5
Les attributs réservés
Xml:lang<para xml:lang="en">this is English text</para>
<instruction xml:lang="en-GB">..lift...</instruction>
<instruction xml:lang="en-US">..elevator...</instruction>
<para xml:lang="i-yi"></para>
<para xml:lang="x-verlan"></para>
code ISO 639
code ISO 3166
code IANAInternet Assigned Numbers Authority
défini par l'utilisateur
![Page 52: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/52.jpg)
53
Anto
ine R
izk, X
ML
200
5
Attributs ou éléments?
Attributs quand :
- Typage est nécessaire- Information ne fait pas partie du contenu (ex. version)
![Page 53: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/53.jpg)
54
Anto
ine R
izk, X
ML
200
5
Les attributs réservés
Xml:space- deux valeurs possibles : 'preserve' et 'default'
<note xml:space="preserve">
cette note contient deux paragraphes
<par> un paragraphe
</par>
<par> un autre paragraphe
</par>
</note>
<note>cette note contient deux paragraphes
<par>un paragraphe </par> <par> un autre paragraphe </par>
</note>
![Page 54: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/54.jpg)
55
Anto
ine R
izk, X
ML
200
5
Les déclarations (1)
Instructions au parser/XML processor
Forme simple : <! ... >
Forme groupée : <! ... [
<! ... >
<! ... >
]>
![Page 55: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/55.jpg)
56
Anto
ine R
izk, X
ML
200
5
Les déclarations(2)
<!DOCTYPE myDTD> ou
<!DOCTYPE myDTD [ définition de la DTD ici
]> <!-- ceci est un commentaire--> Character data section
<![CDATA[<exemple> est une balise XML. < remplace le <]]> <!ENTITY ... > <!NOTATION ... > <!ELEMENT ... > <!ATTLIST ... > <![IGNORE[ ...]] > <![INCLUDE[ ...]] >
![Page 56: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/56.jpg)
57
Anto
ine R
izk, X
ML
200
5
Processing instruction
<? ... ?>
<P> un saut de page ici
<?Adepteditor (newpage) ?>
<?FrameMaker (np) ?>
serait bien
<P>
![Page 57: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/57.jpg)
58
Anto
ine R
izk, X
ML
200
5
La déclaration XML
<?XML version="1.0" encoding="UTF-8" standalone="yes" ?>
Les attributs sont optionnels
Les valeurs ci-dessus sont les valeurs par défaut
![Page 58: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/58.jpg)
59
Anto
ine R
izk, X
ML
200
5
Les entités
Document
Entité A
Entité B
Le document entier = 3 entités :
Le document entity (sans nom)
Entité A
Entité B
![Page 59: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/59.jpg)
60
Anto
ine R
izk, X
ML
200
5
L'usage des entités
Eviter la duplication de certaines informations (factorisation)
Différenciation des informations pour des plateformes incompatibles
Diviser des gros documents en unités gérables Utilisation de données non XML
![Page 60: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/60.jpg)
61
Anto
ine R
izk, X
ML
200
5
La DTD
Document Type Definition - Structure générique logique
- Grammaire de la structure du document Etablit les règles de structure de documents Définit les noms d'éléments Définit les relations entre éléments Déclare les attributs ainsi que leurs types
Documentparser
validant
DTD
erreurs
sortie
![Page 61: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/61.jpg)
62
Anto
ine R
izk, X
ML
200
5
La DTD
External subset vs. Internal subset
Internal subset
External subset
document instance
![Page 62: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/62.jpg)
63
Anto
ine R
izk, X
ML
200
5
Structure de la DTD
Ensemble de déclarations au format <! .... >
selon 4 classes - ELEMENT- ATTLIST- ENTITY- NOTATION
![Page 63: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/63.jpg)
64
Anto
ine R
izk, X
ML
200
5
Document type declaration
<!DOCTYPE mybook [
<!-- la DTD mybook est déclarée ici -->
<!ELEMENT ... >
<!ENTITY ... >
...
]>
<!DOCTYPE mybook SYSTEM "/mydir/DTDS/mybook.dtd" [
<!-- la partie interne de la DTD mybook est déclarée ici -->
<!ELEMENT ... >
<!ENTITY % parlist "par | list ">
...
]>
partie externe
lu en premierdéclaration retenue
![Page 64: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/64.jpg)
65
Anto
ine R
izk, X
ML
200
5
Les éléments
<!ELEMENT image EMPTY>
<!ELEMENT p ANY>
<!ELEMENT article (par*, section+)>
nom
modèle de contenumodel group
alphanumérique. - _ : ex: P, X:2, A-3
![Page 65: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/65.jpg)
66
Anto
ine R
izk, X
ML
200
5
Modèle de contenu
<!ELEMENT article (par, section)>
<!ELEMENT article (par | section)>
<!ELEMENT article (par* | section)>
<!ELEMENT article (par, section?)>
<!ELEMENT article (par, section+)>
connecteur de séquence
connecteur de choix
indicateurs d'occurence
![Page 66: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/66.jpg)
67
Anto
ine R
izk, X
ML
200
5
Le texte
<!ELEMENT article (#PCDATA)>
<!ELEMENT article (#PCDATA | par |section) *>
contenu mixte
![Page 67: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/67.jpg)
68
Anto
ine R
izk, X
ML
200
5
Les ambiguités
(item?, item)
à remplacer par
(item, item?)
((nom,prof) | (nom,eleve))
à remplacer par
(nom, (prof | eleve) )
![Page 68: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/68.jpg)
69
Anto
ine R
izk, X
ML
200
5
Les entités
Internal entities function as typing shortcuts or macros. External entities allow you to incorporate content from other files. Parameter entities, which can be internal or external, are only
available within the internal and external subsets (the DTD).
Internal Entities : remplacement d’un texte déclaré dans la DTD
Forme suivante:
<!ENTITY entityname "replacement text">
Ex:
<!ENTITY yoyo 'Yoyodyne Industries, Inc.'>
Remplacement de texte dans l’instance par &yoyo;
![Page 69: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/69.jpg)
70
Anto
ine R
izk, X
ML
200
5
Entités (suite)
External Entities : référence à du texte XML ou autre notation dans un fichier externe. D’où usage de SYSTEM
<!ENTITY entityname [PUBLIC "public-identifier"] SYSTEM "system-identifier"> - system identifier est une URI, souvent un nom de fichier. Le public
identifier, s’il est présent, peut être utilisé comme raccourci vers la ressource externe par certains parsers.
Ex: <!ENTITY chap1 SYSTEM "chap1.xml"> - &chap1; Incorpore le contenu du fichier chap1.xml
<!ENTITY entityname [PUBLIC "public-identifier"] SYSTEM "system-identifier" notation>
Ex: <!ENTITY mypicture SYSTEM "pic01.gif" GIF> - GIF doit être déclaré comme NOTATION (voir plus loin)
![Page 70: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/70.jpg)
71
Anto
ine R
izk, X
ML
200
5
Entités (suite)
Parameter entities <!ENTITY % pentityname1 "replacement
text"> <!ENTITY % pentityname2 SYSTEM "URI">
Le fichier dans URI ne peut qu’être XML. Pas une notation autre.
![Page 71: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/71.jpg)
72
Anto
ine R
izk, X
ML
200
5
Entities : qqes infos
External entities can be further classified as either "parsed" or "unparsed". Entities which refer to external files that contain XML are called "parsed entities;" entities which refer to other types of data, identified by a notation, are "unparsed."
The parser inserts the replacement text of a parsed entity into the document wherever a reference to that entity occurs. It is an error to insert an entity reference to an unparsed entity directly into the flow of an XML document. Unparsed entities can only be used as attribute values on elements with ENTITY attributes.
Unparsed entities are used most frequently on XML elements that incorporate graphics into a document.
![Page 72: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/72.jpg)
73
Anto
ine R
izk, X
ML
200
5
Entities
<!DOCTYPE doc [<!ELEMENT doc (para|graphic)+><!ELEMENT para (#PCDATA)><!ELEMENT graphic EMPTY><!ATTLIST graphic image ENTITY #REQUIRED alt CDATA #IMPLIED>
<!NOTATION GIF SYSTEM "CompuServe Graphics Interchange Format 87a"><!ENTITY mypicture SYSTEM "normphoto.gif" GIF><!ENTITY norm "Norman Walsh">]><doc><para>The following element incorporates the image declared as
"mypicture":</para><graphic image="mypicture" alt="A picture of &norm;"/></doc>
Le nom de l’entité
Référence à l’entité
![Page 73: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/73.jpg)
74
Anto
ine R
izk, X
ML
200
5
Déclarations d'attributs
<!ATTLIST nomélément nomattribut typeattribut valdefault>
Exemple
<!ELEMENT chapitre (titre,intro,sec*) >
<!ATTLIST chapitre nivsecurite CDATA
date CDATA
version NMTOKEN
type (corps | annexe) >
![Page 74: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/74.jpg)
75
Anto
ine R
izk, X
ML
200
5
Les types d'attributs
CDATA- chaîne de caractères (équiv.DTD absente)- <chapitre auteur="A. Rizk">
NMTOKEN, NMTOKENS- <picture boundary = '5 12 35 55'> <doc size="A4">
ENTITY, ENTITIES<!ENTITY logoEVE SYSTEM "/mondir/images/eve.gif">
<!ELEMENT entete EMPTY>
<!ATTLIST entete file ENTITY ..>
<entete file="logoEVE">
![Page 75: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/75.jpg)
76
Anto
ine R
izk, X
ML
200
5
Les types d'attributs
ID, IDREF, IDREFS<p>voir <link target="x123"> chapitre 2 </link> pour plus
d'info</p>
<chap ident="x123"> etc etc </chap>
<!ELEMENT link (#PCDATA)>
<!ATTLIST link target IDREF #REQUIRED>
<!ELEMENT chap (#PCDATA)>
<!ATTLIST chap ident ID #REQUIRED>
![Page 76: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/76.jpg)
77
Anto
ine R
izk, X
ML
200
5
La valeur par défaut
<!ATTLIST a att1 NMTOKEN #REQUIRED
att2 NMTOKEN #IMPLIED
att3 NMTOKEN "A4"
att4 (x | y) "y"
att5 NMTOKEN>
![Page 77: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/77.jpg)
78
Anto
ine R
izk, X
ML
200
5
Déclaration de NOTATION
<!NOTATION TIFF SYSTEM "C:\programfiles\show_TIF.exe">
<!NOTATION TEX PUBLIC "-//MyCorp//NOTATION Tex Help File//EN" "C:\programfiles\show_TIF.exe">
SYSTEM
![Page 78: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/78.jpg)
79
Anto
ine R
izk, X
ML
200
5
Les types d'attributs
NOTATION<!ATTLIST code langage NOTATION (C | C++ | JAVA)>
<code langage="C"> main() {....} </code>
NAME GROUP
<!ATTLIST list type (bulleted | indented | numbered) >
![Page 79: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/79.jpg)
80
Anto
ine R
izk, X
ML
200
5
Référence à une NOTATION
A l'aide d'une entité <!NOTATION TIFF SYSTEM "C:\programfiles\show_TIF.exe">
<!ENTITY logoEVE "C:\mesimages\eve.tif" NDATA TIFF><p> je mets le logo ici &logoEVE; </p>
A l'aide d'un attribut
<!NOTATION C SYSTEM "C:\programfiles\gcc.exe"><!ATTLIST code langage NOTATION (C | C++ | JAVA)>
<code langage="C"> main() {....} </code>gcc
2
4
31
![Page 80: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/80.jpg)
81
Anto
ine R
izk, X
ML
200
5
La DTD
<?XML ... standalone="yes"?>
Internal subset
External subset
standalone = "yes" standalone="no"
![Page 81: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/81.jpg)
82
Anto
ine R
izk, X
ML
200
5 XPath
![Page 82: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/82.jpg)
83
Anto
ine R
izk, X
ML
200
5
Arbre XML<livre parution="12.09.66">
<entete>
<auteur><prenom>Boris</prenom><nom>Vian</nom>
</auteur><titre>L'automne à Pékin</titre>
</entete><corps><chapitre>
<titre>Voyage en Exopotamie</titre>
<para>Amadis Dudu suivait...</para>
<para>Il y avait du soleil...</para>
</chapitre></corps></livre>
![Page 83: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/83.jpg)
84
Anto
ine R
izk, X
ML
200
5 self
parent
Ancestor-or-self
ancestor
following
following-sibling
preceding-sibling
preceding
child
descendant
descendant-or-self
![Page 84: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/84.jpg)
85
Anto
ine R
izk, X
ML
200
5
Le vocabulaire XPath
Exprime la notion d'axe : parent, enfant, ancêtre, descendant pour identifier des sous-ensembles de noeuds au sein d'un document XML.
Permet d'exprimer des conditions dans la sélection des noeuds d'un document XML, ce sont les predicats,
Expression formelle d'une requête Xpath : axe::noeud[predicat]
![Page 85: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/85.jpg)
86
Anto
ine R
izk, X
ML
200
5
Xpath un langage orienté contexte
La syntaxe axe::noeud[prédicat] est répétable à la manière de la notation d'un système de fichier :
- Le séparateur est le /- Chaque expression est dépendante du résultat (ensemble de
noeuds ou NodeSet) de la précédente
![Page 86: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/86.jpg)
87
Anto
ine R
izk, X
ML
200
5
Xpath un langage orienté contexte
Un axe est une direction dans le document, il pose la base de la requête en pré-sélectionnant le premier sous-ensemble de noeuds XML à tester,
Puis vient l'expression du/des noeud(s) qui peut avoir deux formes dans la requêtes :
- Générique : *, child- Explicite : le nom du noeud XML lui-même.
![Page 87: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/87.jpg)
88
Anto
ine R
izk, X
ML
200
5
Xpath un langage orienté contexte
Quelques axes :- Parent, child- Descendant, descendant-or-self- Ancestor, ancestor-or-self- Following, following-sibbling- Preceding, preceding-sibbling
![Page 88: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/88.jpg)
89
Anto
ine R
izk, X
ML
200
5
Xpath un langage orienté contexte
Il existe une syntaxe simplifiée qui permet d'exprimer des chemins d'une manière plus condensée,
Rapprochement encore plus fort vers la syntaxe de type « Système de fichiers »
Attention cependant, il est préférable de l'utiliser dans un contexte relatif
![Page 89: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/89.jpg)
90
Anto
ine R
izk, X
ML
200
5
Xpath un langage orienté contexte
Les expressions précédentes peuvent s'écrire aussi :- .. *- //*- ../.. ainsi de suite pour remonter au noeud ancêtre
![Page 90: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/90.jpg)
91
Anto
ine R
izk, X
ML
200
5
Xpath un langage orienté contexte
Un prédicat est une condition à satisfaire afin de rendre le contexte valide,
S'exprime entre crochets juste après l'expression du noeud
Permet de filtrer les noeuds :- Par leur nom,- Leur attribut,- Par leur valeur
Grace à des fonctions/opérateurs classiques
![Page 91: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/91.jpg)
92
Anto
ine R
izk, X
ML
200
5
Exemples de requêtes XPath
child::para● Element para, enfant du noeud courant
child::*● Tous les noeuds enfants du noeud courant
child::text()● Tous les noeuds de type textuel enfants du noeud courant
![Page 92: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/92.jpg)
93
Anto
ine R
izk, X
ML
200
5
Exemples de requêtes XPath
child::node()- Tous les noeuds enfants du noeud courant quel que soit leur
type
attribute::name- Selectionne l'attribut du noeud courant nommé name
Attribute::*- Tous les attributs du noeud courant
![Page 93: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/93.jpg)
94
Anto
ine R
izk, X
ML
200
5
Exemples de requêtes XPath
descendant::para- Tous les elements para, descendants du noeud courant
ancestor::div- Tous les elements div, ancetres du noeud courant
ancestor-or-self::div- Tous les elements div, ancetres du noeud courant et lui
meme eventuellement
![Page 94: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/94.jpg)
95
Anto
ine R
izk, X
ML
200
5
Exemples de requêtes XPath
descendant-or-self::para- Tous les elements para descendants du noeud courant
self::para- Sélectionne le noeud courant s'il se nomme para
child::chapter/descendant::para- Tous les noeuds para descendants des noeuds chapter
enfants du noeud courant
![Page 95: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/95.jpg)
96
Anto
ine R
izk, X
ML
200
5
Exemples de requêtes XPath
child::*/child::para- Tous les noeuds para petits enfants du noeud courant
/ Sélectionne le noeud racine /descendant::para
- Selectionne tous les noeud para du document
/descendant::olist/child::item- Tous les élements item enfants des élements olist du
document
![Page 96: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/96.jpg)
97
Anto
ine R
izk, X
ML
200
5
Exemples de requêtes XPath
child::para[position()=1]- Le premier enfant para du noeud courant
child::para[position()=last()]- Le dernier enfant para du noeud courant
following-sibling::chapter[position()=1]- Sélectionne le prochain élement chapter au noeud courant
![Page 97: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/97.jpg)
98
Anto
ine R
izk, X
ML
200
5
Exemples de requêtes XPath
preceding-sibling::chapter[position()=1]- Sélectionne le précédent élement chapter au noeud courant
/descendant::figure[position()=42]- Sélectionne le quarante deuxième élement figure dans le
document
child::para[attribute::type="warning"]- Sélectionne tous les noeuds para qui ont un attribut nommé
type possédant la valeur « warning »
![Page 98: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/98.jpg)
99
Anto
ine R
izk, X
ML
200
5
Exemples de requêtes XPath
/child::doc/child::chapter[position()=5]/child::section[position()=2]
- Tous les élements section situés en deuxième position et enfants des élements chapter situés en cinquième position des élements doc enfants du noeud racine
child::para[attribute::type='warning'][position()=5]- Sélectionne les élements para enfants du noeud courant s'ils
ont un attribut type égal à « warning » et s'ils sont en cinquième position
![Page 99: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/99.jpg)
100
Anto
ine R
izk, X
ML
200
5
Exemples de requêtes XPath
child::chapter[child::title]- Séléctionne les élements chapter s'ils ont un enfant nommé
title
child::*[self::chapter or self::appendix]- Tous les enfants du noeud courant à condition qu'ils se
nomment chapter ou appendix
child::*[self::chapter or self::appendix][position()=last()]- Idem. Et à condition qu'ils soient en dernière position
![Page 100: Le langage XML : fonctionnalités et standards associés](https://reader033.vdocuments.net/reader033/viewer/2022051215/568143f4550346895db07fe1/html5/thumbnails/100.jpg)
101
Anto
ine R
izk, X
ML
200
5
Equivalences
Syntaxe complète- Self
- Attribute
- N[position()=5]
- Parent
- N/descendant::para
- N[attribute::a1][attribute::a2]
Syntaxe simplifiée- .
- @
- N[5]
- ..
- N//para
- N[@a1 and @a2]