• Aucun résultat trouvé

Transparents(PowerPoint)

N/A
N/A
Protected

Academic year: 2022

Partager "Transparents(PowerPoint)"

Copied!
24
0
0

Texte intégral

(1)

20 Données semi-

structurées et XML

(2)

27/02/22 © Robert Godin. Tous droits réser vés.

2

Pourquoi XML

HTML

Langage pour la présentation

Balise définit format

XML (eXtensible Markup Language)

Balise définit structure et sémantique

Facilite l’interprétation des données (par programme ou humain)

Présentation à part (XSL)

Représentation de données semi-structurées

conformance optionnelle à un schéma

Facilite le traitement informatique et humain

Format normalisé d’échange

couplage faible entre systèmes

SOAP : sérialisation des objets en XML

Schémas

DTD, XML schéma

(3)

20.1 Introduction à XML

< C a t a l o g u e >

< A r t i c l e > < A r t i c l e >

. . .

(4)

27/02/22 © Robert Godin. Tous droits réser vés.

4

Références

< C a t a l o g u e >

< A r t i c l e >

< n o A r t i c l e > < d e s c r i p t i o n > < p r i x U n i t a i r e >

1 0 C è d r e e n b o u l e 1 0 , 9 9

. . .

< L i s t e C o m m a n d e s >

< C o m m a n d e >

i d A r t i c l e l e s I d C o m m a n d e

i d A r t 1 i d L i g 1 i d L i g 4

< n o C o m m a n d e >

1

< d a t e C o m m a n d e >

0 1 / 0 6 / 2 0 0 0

< n o C l i e n t >

1 0

< l i g n e C o m m a n d e >

i d L i g n e C o m m a n d e

i d L i g 1

l e I d A r t i c l e

i d A r t 1

< q u a n t i t e >

1 0

. . . . . .

(5)

Intégrité d’un document XML

 Document XML bien formé (well- formed)

– entête correcte

– un seul élément racine

– balises sont correctement imbriquées

– éléments non vides doivent avoir une balise de début et de fin (contrairement à HTML)

 Document XML valide

– respecte sa grammaire

(6)

27/02/22 © Robert Godin. Tous droits réser vés.

6

20.2 Espace de nom XML

(XML namespace)

(7)

20.3 XML schema

 Limites des DTD

– Types de base

– Intégration faible de la notion d’espace de noms

– Support faible de clé et d’intégrité référentielle

– Ordre significatif

– Le nom d’un élément est global

Syntaxe non conforme à XML

(8)

27/02/22 © Robert Godin. Tous droits réser vés.

8

Exemple de schéma XML :

http://www.info.uqam.ca/~godin/XML/schemaCommandesXML.xsd

(9)

Exemple d’instance du schéma :

http://www.info.uqam.ca/~godin/XML/CommandesAvecSchema.xml

(10)

27/02/22 © Robert Godin. Tous droits réser vés.

10

20.4 Langage de requête XPath

< L i s t e C o m m a n d e s >

< C o m m a n d e >

. . .

< C o m m a n d e s X M L >

/CommandesXML/ListeCommandes/Commande[1]

/child::CommandesXML/child::ListeCommandes/child::Commande[position()=1]

(11)

20.5 XPointer

(12)

27/02/22 © Robert Godin. Tous droits réser vés.

12

20.6 Contraintes de clé

(13)

Exemple d’instance valide

(14)

27/02/22 © Robert Godin. Tous droits réser vés.

14

20.7 Langage de requête

XML Query (XQuery)

(15)

20.8 Traitement d’un document XML avec Java API for XML Processing ( JAXP)

http://java.sun.com/xml/jaxp/index.jsp

Interface Document Object Model (DOM)

instance XML -> arbre de Node Java

(16)

27/02/22 © Robert Godin. Tous droits réser vés.

16

Java Architecture for XML Binding (JAXB)

 http://java.sun.com/xml/jaxb/

 Schéma XML -> classes métier Java

– Java binding compiler

 Instance XML -> objets métier

Java

(17)

20.9 Système de Gestion de XML

 Application centrée données

– XML = format d’échange avec BD

 Application centrée document

– XML dans SGXML

 SGXML natif

Modèle BD = XML

 Extension à SGBD

«Vue» XML sur modèle SGBD

Découpage du XML en objets d’un schéma BD

(18)

27/02/22 © Robert Godin. Tous droits réser vés.

18

20.10 Oracle et XML

XML SQL Utility (XSU) :

Données => XML

(19)

Fonctions SQLX de

génération de XML

(20)

27/02/22 © Robert Godin. Tous droits réser vés.

20

Fonctions SGXML

Stockage natif CLOB par défaut

- requêtes traitées par

conversion DOM à la

volée

(21)

Requêtes XPath en SQL

(22)

27/02/22 © Robert Godin. Tous droits réser vés.

22

Indexage avec stockage CLOB

 Plusieurs types d’index supportés

 Indexage sur chemin XPath particulier

create unique index IndexNoCommande on CommandesXML (extractValue(object_value,'/Commande/NoCommande'))

la balise doit être unique dans le document

 Indexage systématique de tous les chemins

create index IndexCommandesXML on CommandesXML (object_value) indextype is CTXSYS.CTXXPATH

réécriture en HASPATH/INPATH (voir indexage Context au chap.21)

plus coûteux que sur fonction XPath

 Indexage plein texte des valeurs textuelles

(voir chap. 21)

(23)

Support de schéma XML

(24)

27/02/22 © Robert Godin. Tous droits réser vés.

24

Stockage objet-relationnel

 Annotations XML pour stockage objet-relationnel

 Vue XMLType sur stockage objet- relationnel

 Attributs xdb:SQLName,

xdb:SQLType dans le schéma XML

 Réécriture des requêtes XPath par l’optimiseur

– Exploitation de l’optimiseur relationnel

Références

Documents relatifs

CREATE VIEW Article (noArticle, description, prixUnitaire, quantitéEnStock)AS SELECT C.noArticle, description, prixUnitaire, quantitéEnStock FROM Catalogue AS C, Inventaire AS

noArticle :40 quantité :2 livraison complétée noArticle :95 quantité :3 quantité en attente :2 PL/SQL procedure successfully completed. SQL&gt;

titre nomProducteur nomActeur La vie est belle Elda Ferri Roberto Benigni La vie est belle Elda Ferri Nicoletta Braschi La vie est belle Elda Ferri Giorgio Cantarini La vie est

Description: Ce cas d'utilisation est déclenché par le commis au prêt suite à une requête d'un membre ou d'un employé. Il lui permet d'enregistrer un prêt ou un retour ,

FOREIGN KEY (idUtilisateur) REFERENCES Utilisateur, FOREIGN KEY (idExemplaire) REFERENCES Exemplaire, CHECK (dateRetour &gt;=

 Méthodes d’accès spatiales (Spatial Acces Method - SAM ).. – objets

Ecrire prêt au journal (vider tampons

 Un axe dont les nœuds sont soit le nœud contexte, soit des nœuds qui suivent le nœud contexte dans l’ordre du document est un axe avant.  Un axe dont les nœuds sont soit