Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt...

45
XML origine - concept - techniques Tuyêt Trâm DANG NGOC Laboratoire LICP Université de Cergy-Pontoise <[email protected]> Cours 2/2

Transcript of Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt...

Page 1: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

XMLorigine - concept - techniques

Tuyêt Trâm DANG NGOC

Laboratoire LICPUniversité de Cergy-Pontoise

<[email protected]>

Cours 2/2

Page 2: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 2jeudi 4 novembre 2004

Plan

Résumé du cours précédentqu'est-ce XML ?syntaxe XMLstandards connexes à XML

XML et les bases de donnéesXML et les serveurs WebPourquoi XML ? Quand utiliser XML ?Quand ne pas utiliser XML ?XML par rapport à l'existant

Page 3: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 3jeudi 4 novembre 2004

XML (1/3)

un standard défini par l'organisme de normalisation W3C (World Wide Web Consortium)

dérivé des standards HTML et SGML

séparation du fond et de la forme (du contenu et de la présentation)

semi-structuréarborescent

structure plus ou moins définie

Page 4: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 4jeudi 4 novembre 2004

XML (2/3)

un langage balisé

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE biblio SYSTEM "bibliot_1.dtd">

<?xml-stylesheet type="text/xsl" href="style.xsl"?>

<bibliotheque>

<livre isbn="2-212-08932-5">

<titre>Programmation Linux 2.0</titre>

<prix devise="EUR">28.88</prix>

</livre>

</bibliotheque>

Déclaration format XML

Déclaration schéma associé

Déclaration feuille de style

Elements

Balise ouvrante

Attribut

Contenu

Balise fermante

Nom d'attribut

Valeur d'attribut

Page 5: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 5jeudi 4 novembre 2004

XML (3/3)

Plus strict que HTML, moins que SGML

Un document XML DOIT être bien formé :une seule racine

balises correctement imbriquées

attributs correctement spécifiés

caractères XML valides

un document XML PEUT être valide :structure et les contenus du document conformes à des

règles spécifiées par un "vocabulaire (DTD ou XML-Schéma)

Page 6: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 6jeudi 4 novembre 2004

Standards connexes à XML - résumé

Décrire la structure d'un document XML DTD : anciennementXML-Schema : intègre typage et contraintes

Présenter un document XML XSL/XSLT Transformation d'un document XML en un autre

document XML ou un document dans un autre format (HTML, PDF)

Se repérer dans un document XMLXPath Navigation dans un document XML à l'aide d'expressions et

de prédicats simples

Différencier les documents XML XML Namespace Distinction de vocabulaires différents

Page 7: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

XML et les bases de données

Pourquoi les SGBD-R ?

Pourquoi XML ?

Page 8: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 8jeudi 4 novembre 2004

XML et bases de données relationnelles

Pourquoi les bases de données relationnelles ?La plupart des données sont stockées dans des SGBD-RPeu d'évolution prévue dans un avenir prochedimensionnable, sûr, performant, beaucoup d'outils existants

⇒ Besoin de moyen efficace pour publier des données relationnelles comme des documents XML

Pourquoi XML ?Modèle élégant complexe, arborescent, structurébalises spécifiques descriptivesStandardisé !⇒ Standard dominant d'échange sur le web.

Page 9: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 9jeudi 4 novembre 2004

Inconvénients des modèles de données classiques

Café, Thé, Chocolat, Margarita, Gin Tonic

0148871222,

0148874942ParisNULLNULLL'Appar

ement Café

NULL0143407071NULLNULL25, Cour Saint Emilion, Paris

Le Frog's

Maple Kiss, Gin Tonic

NULLParisLaCépède

NULLL'Envol

boissontelephone

villerueadressenombar

Valeurs nullesAttributs multi-valuésDifficultés d'extensions

Exportation de données complexe

Page 10: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

XML et les bases de données

Pourquoi les SGBD-R ?

Pourquoi XML ?

Page 11: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 11jeudi 4 novembre 2004

XML et bases de données relationnelles

Pourquoi les bases de données relationnelles ?La plupart des données sont stockées dans des SGBD-RPeu d'évolution prévue dans un avenir prochedimensionnable, sûr, performant, beaucoup d'outils existants

⇒ Besoin de moyen efficace pour publier des données relationnelles comme des documents XML

Pourquoi XML ?Modèle élégant complexe, arborescent, structurébalises spécifiques descriptivesStandardisé !⇒ Standard dominant d'échange sur le web.

Page 12: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 12jeudi 4 novembre 2004

Inconvénients des modèles de données classiques

Café, Thé, Chocolat, Margarita, Gin Tonic

0148871222,

0148874942ParisNULLNULLL'Appar

ement Café

NULL0143407071NULLNULL25, Cour Saint Emilion, Paris

Le Frog's

Maple Kiss, Gin Tonic

NULLParisLaCépède

NULLL'Envol

boissontelephone

villerueadressenombar

Valeurs nullesAttributs multi-valuésDifficultés d'extensions

Exportation de données complexe

Page 13: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 13jeudi 4 novembre 2004

Données XML

Structure arborescente

Structure irrégulièredonnées multi-valuées

données manquantes

données de types différents

Structure implicitedéfinie dans les données

elles-mêmes

ReprésentationXML

<bar><nom> L’Envol </nom><adresse>

<rue> Lac&eacute;pegrave;de </rue><ville> Paris </ville>

</adresse><boisson> Maple Kiss </boisson><boisson> Gin Tonic </boisson>

</bar>

<bar><nom> Le Frog’s </nom><telephone> 01 43 40 70 71</telephone><adresse> 25, cour Saint-Emilion Paris,</adresse>

</bar>

Page 14: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 14jeudi 4 novembre 2004

Oracle XSU (XML-SQL Utility)

XSU est packagé avec Oracle8i (8.1.7 et plus) et Oracle9iXSU permet de transformer des données

récupérées de tables ou vues relationnelles-objets en XMLXSU peut extraire des données d'un document

XML et en utilisant un mapping générique, insérer, supprimer, mettre à jour des données dans les colonnes associées d'une table

Page 15: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 15jeudi 4 novembre 2004

XML et les bases de données

1. extension BD avec XML

2. adaptateur XML

3. middleware XML

4. XML natif

XMLXMLXML

1XQuery SQL

Tuples XML

2

SQL/Tuple

Opérations diverses

XML

3

4

Page 16: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Déploiement d'un site web avec XML

Page 17: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 17jeudi 4 novembre 2004

Scénario courant

Base de données existante relationnelle(postgres, oracle, sybase, ...)

Navigateur

Serveur Web public Script1

(CGI-BIN, MS

ASP, Servlet,...)

HTML"public"

Serveur Web interne

Navigateur

Script2

HTML"interne"

Script3

PDFpublic

Script4

PDFinterne

HTTP (GET, POST)

SQL(ODBC, PLSQL...) TUPLES

Page 18: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 18jeudi 4 novembre 2004

Scénario avec XML

Base de données existante relationnelle(postgres, oracle, sybase, ...)

Navigateur

Serveur Web public

Serveur Web interne

Navigateur

HTTP (GET, POST)

SQL TUPLES

Programme d'interrogation et récupération XML

PDFpublic

XSL

PDFinterne

XSL

XML

HTML"interne"

XSL

Processeur XML

XSL

HTML"public"

Page 19: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 19jeudi 4 novembre 2004

Pages web dynamiques

JSP, ASP et PHP : des portions de code de programmation sont incluses dans le document HTML

Servlets ou CGI : le document HTML est construit et renvoyé dans un flux HTTP

Cocoon : le processus de production d'un document Web peut se décomposer en 3 logiques particulières

Rédacteur

Programmeur

Web designer.

I. Document (statique, requête SQL)

II. Traitements (filtrage, ajout, ...)

II. Présentation (HTML, PDF, WML)

ActeursLogiques

Page 20: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 20jeudi 4 novembre 2004

Cocoon

Permet de séparer le contenu et la présentationde sites WebAccepte de nombreuses sources de données.

fichiers, SGBD, LDAP, et des bases de données XML natives.

Nombreux formats de sortie : HTML, WML, PDF, RTF, etc.

Doit être installé au sein d'un moteur de Servlets pour fonctionner (ex : Jakarta Tomcat).

Page 21: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 21jeudi 4 novembre 2004

Cocoon (caractéristiques)

Aucune ligne de code Java n'est nécessaireSouplesse et réutilisabilité grâce à la séparation totale

entre contenu du document et sa présentationImplémentation de XSL pour le format PDF Gestion des documents dynamiques et les outils

disponiblesSolutions simples aux incompatibilités entre browsersAuthentificationAdministration du portail par une interface webOpen-source, maintenu et de plus en plus utilisé

Page 22: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 22jeudi 4 novembre 2004

Environnement classique/cocoon : statique

<XML/><XML/><XML/>

<XSLT><XSLT><XSL>

<HTML>Transform.

XSL

<HTML/><HTML/><HTML/> <HTML>

IDocuments

IITraitement

IIIPrésentation

Page 23: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 23jeudi 4 novembre 2004

Environnement classique/cocoon : dynamique

<XML/><XML/><XML/>

<XSLT><XSLT><XSL>

<HTML>Transform.

XSL

<HTML/><HTML/><HTML/> <HTML>

IDocuments

IITraitement

IIIPrésentation

ProcesseurXSP

XSP tagsJava

Processeur

PerlShell

Tcl

Page 24: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Pourquoi XML ?

Quand l'utiliser ?

Quand ne pas l'utiliser ?

Page 25: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 25jeudi 4 novembre 2004

Applications de XML

1. Serveur Web

2. Base de données

3. Documentation

4. Echange d'information

Page 26: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 26jeudi 4 novembre 2004

1. Serveur Web

MySQL ou PostgreSQL + PHP

PHP : HTML (+ CSS) + balises de script PHP

Simple à écrire

Rapide

Très répandu sur le web

MySQL Postgres

<html><? script php?></html>

<html>texte html</html>

Serveur Webfichier.php

Internet

Page 27: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 27jeudi 4 novembre 2004

<html><h1> Base cliente</h1><body bgcolor="#ffffff" fgcolor="#00ff00">Contenu de la base <b>"clients"</b> :<?// connection a la base$connect = mysql_connect ("localhost","dntt","MotDePasse");// selection de la basemysql_select_db ("mysql", $connect);// la requete.$sql = mysql_query ("SELECT * FROM clients");// on compte le nombre de résultats$result = mysql_num_rows ($sql);echo "Il y a ",$result," client(s) dans la base :<ul>";// récupération et affichage des donnéeswhile ($donnee = mysql_fetch_array ($sql, MYSQL_ASSOC)){ echo "<li>",$donnee['nom']," : ",$donnee['prenom'],"</li>";}echo "</ul>"?></body></html>

HTML + PHP<html><h1> Bienvenue </h1><body>Contenu de la base <b>"clients"</b> :Il y a 3 client(s) dans la base :<ul><li>Doeuf : John</li><li>Cover : Harry</li><li>Breille : Jean</li></ul></body></html>

HTML résultant (calculé sur serveur)

Bienvenue Contenu de la base "clients" : Il y a 3 client(s) dans la base :•Doeuf : John•Cover : Harry•Breille : Jean

Affichage HTML sur navigateur client

Page 28: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 28jeudi 4 novembre 2004

2. Bases de données

Base de données relationnellesfiable

performant

simple

répandu (majorité des logiciels fonctionne dessus)

Base de données objetsmoins répandu

Accès uniforme avec ODBC/JDBC

Page 29: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 29jeudi 4 novembre 2004

XML et les bases de données

Représentation du monde réel semi-structurévaleur manquante, multivaluée, type mal connuarborescent avec dépendance directeM. SELERE, Alesi, Jacques, a 20 ans il habite 12 rue Prévert à Paris

(on ne connaît pas son numéro de téléphone), il a une voiture verte d'immatriculation 123ABC75 dont l'assureur est SURSUR au siège 3 bd des Champs à Versailles et une voiture rouge.

NomSelere

PrénomAlesi

PrénomJacques

age20

ruePrévert

no_rue12

voiture

couleurverte

couleurrougeimmatriculation

123ABC75assureur

nomSURSUR no_rue

2rueChamps

villeParis

personne

voiture

villeVersailles

adresse

adresse

BD

Semi-structuré

Page 30: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 30jeudi 4 novembre 2004

3. Documentation

Documentation sous format spécifiqueWord, PDF, LaTeX, SGML, troff/groff, PS

Recherche textuelle, indexation

Description de contenu

Page 31: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 31jeudi 4 novembre 2004

Documentation

Nombreux filtres de conversion avec risque de perte d'informationStandard type PDF

HTML

latex2html

dvips

ps2pdfpdf2word

Enregistrer sous HTML

TXTEnregistrer sous ASCII

ps2ascii

tex2ascii

MathematicaExporter PSDVI

latex

Enregistrer sous RTF

pdftex

Page 32: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 32jeudi 4 novembre 2004

XML et la documentation

Taille d'un document XML (avec les balises, verbeux donc gros).Texte pur donc bonne

compressiondescription de contenu

(RDF)Recherche efficace

"Dans quelle scène de l'acte 4 de la pièce retrouve-t-on le mot 'duel' ?"

HTML

TXT

Page 33: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 33jeudi 4 novembre 2004

4. Echange d'information

Programmation par socket (bibliothèque pour échange réseau)Protocole d'applications propriétaires.

Optimisé, mais peu standardsAppel de servicesRPC, Corba, RMI

Représentation des données spécifiques à chaque application.

Trop de standards pas standard !

Page 34: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 34jeudi 4 novembre 2004

Echange d'information

Représentation XML :simple, lisible

standardisé

Web services pour les applicationsau dessus des protocoles d'applications existants

(HTTP, SMTP)

indépendants des protocoles d'applications qui lui servent juste de "transports"

Page 35: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 35jeudi 4 novembre 2004

XML pourquoi faire ?

Ecriture ou génération une seule fois d'un document XMLPeut ensuite s'utiliser pourBDdocumentationéchange d'informationWeb

… ceci avec un minimum de travail (composants déjà existants, plus c'est répandu, plus les outils se développent).

Page 36: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Outils XML

Page 37: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 37jeudi 4 novembre 2004

Outils d'édition XML

XML Spy L'éditeur XML le plus complet. Gère les fichiers XML, les DTD, XSL, XMLSchéma (.xsd). Version

d'évaluation de 30 jours.http://www.xmlspy.com/download.html

Microsoft XML NotepadEditeur simple de documents XML-based data. Freeware.http://msdn.microsoft.com/xml/notepad/download.asp

XML ProEditeur XML assez complet. Sharewarehttp://www.vervet.com/demo.html

XML Rad

XMetal

FrameMaker

Page 38: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Conclusion

Qu'est ce que XML ?

Quand est-ce que ça sert ?

Quand est-ce que ça ne sert pas ?

Page 39: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 39jeudi 4 novembre 2004

Résumé : Qu'est que XML ?

XML est une méthode pour mettre des données structurées dans un fichier texteXML N'EST PAS HTMLXML est textuel, mais n'est pas fait pour être lu tel

quelXML est une collection de technologiesXML est verbeux, mais ce n'est pas le problèmeXML est nouveau, mais pas tant que çaXML est license-free, indépendant de toute plateforme

et bien supporté

Page 40: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 40jeudi 4 novembre 2004

Quand utiliser XML ?

Quand on veut échanger des informations à travers des applications très différentes

Si on a un site web qui va évoluer très souvent dans son fond et sa forme et qu'on prévoit plusieurs canaux de diffusion (papiers, web, …)

Si on crée un nouvel outil et une nouvelle application

Si on veut combiner des technologies multimédia + texte + formules + BD + impression + web… de manière portable et sans tout réécrire.

Page 41: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 41jeudi 4 novembre 2004

Quand NE PAS utiliser XML ?

Si l'on n'en n'a pas besoin...

Si les logiciels qu'on utilise pour l'instant fonctionnent correctement et qu'on n'envisage pas d'évolution

Si c'est juste pour frimer

Page 42: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Références XML

Page 43: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 43jeudi 4 novembre 2004

XML

La page web de référence du W3C (documentations, spécifications et références) http://www.w3.org/

Les implémentations d'Apache sur la technologie XML (open-source) http://xml.apache.org

Les travaux d'Apache sur COCOON (open-source) : http://cocoon.apache.org/2.0/

Articles et travaux d'IBM sur XML (logiciels souvent en Open-Source) http://www-106.ibm.com/developerworks/xml/

Documentation XML en francais (article et actualité + traductions de certains documents de référence du W3C) http://xmlfr.org/

Page 44: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 44jeudi 4 novembre 2004

XML et les bases de données

Document sur XML et les bases de données : http://www.rpbourret.com/xml/XMLAndDatabases.htm

Document répertoriant tous les produits sur XML et les bases de données, et en particulier dans la section "middleware" tous les produits se "greffant" sur une BD classique et permettant de récupérer du XML. http://www.rpbourret.com/xml/XMLDatabaseProds.htm

Page 45: Tuyêt Trâm DANG NGOC - Le serveur Dept25dept25.cnam.fr/PROJET3I/DOC/XmlUtilisation.pdf · Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise jeudi 4 novembre 2004 2 Plan Résumé

Tuyêt Trâm DANG NGOC - Université de Cergy-Pontoise 45jeudi 4 novembre 2004

XQuery

W3C XQueryhttp://www.w3.org/TR/xquery.html W3C XML Query Use Cases

http://www.w3.org/TR/xmlquery-use-cases.html

W3C XML Query Requirements http://www.w3.org/TR/xmlquery-req.html

W3C XML Query Data Modelhttp://www.w3.org/TR/query-datamodel.html

W3C XML Query Algebrahttp://www.w3.org/TR/query-algebra.html