1 Séminaire Novembre 2001 – PLB – J.M.Vanel 6 - XML n XML : un méta-langage m Préambule,...
-
Upload
baldoin-lamour -
Category
Documents
-
view
106 -
download
0
Transcript of 1 Séminaire Novembre 2001 – PLB – J.M.Vanel 6 - XML n XML : un méta-langage m Préambule,...
1 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
6 - XML6 - XML
XML : un méta-langage Préambule, enjeux et le W3C
Présentation du langage Indépendant de la syntaxe Concepts (Extensible, modulaire ...) Le langage pour le Web La langue commune de l'informatique
Quelques dialectes et offreurs Exemples
XSLT
XML en 2001
Fondamentaux et enjeuxFondamentaux et enjeux
2 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
En guise de préambule : En guise de préambule : en parcourant le WEBen parcourant le WEB
XML : The ASCII of the Future ?
Steve Land (http://msdn.microsoft.com/library)
XML : signe la fin des moulinettes !
Olivier Le Quézourec (articles du 25/4/00 http://www.vnunet.fr)
XML & Java
Java est le langage de programmation universel multi-plateformes,
XML est le langage universel de traitements des données
XML : Le chaînon manquant ?
Philippe Roure (articles du 25/4/00 http://www.vnunet.fr)
« Métalangage, nouveau middleware, XML semble en bonne voie pour devenir une brique technologique fondamentale dans le dialogue entre systèmes d ’informations ... »
3 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
International
Simple et lisible
Séparation du fond et de la forme
Extensible
Orienté échange et communicationlangage documenté et non propriétaire
Le langage du WEBLes données portables de l'informatique
Un méta langageUn méta langage
4 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
[xml-lang][xml-lang]
XML est un méta-langage à base de balise :
Extensible Markup Language isExtensible Markup Language is
A syntax for documents A syntax for documents
A Meta-Markup LanguageA Meta-Markup Language
A Structural and Semantic language, not a formatting languageA Structural and Semantic language, not a formatting language
Not just for Web pagesNot just for Web pages
5 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
XML - origine et normalisationXML - origine et normalisation
Origine : issue du SGML (Standard Generalized Markup Langage)
travaux initialement lancés en 1996 (Jon Bosak & Generic SGML Working Group)
standard du W3C au sein du groupe : XML Activity : http://www.w3c.org/MarkUp/Activity
– (Chairman : Jon Bosak SUN, Tim Bray - Nescape, Jean Paoli - Microsoft, Dave Hollander - HP,Joel Nava - Adobe ...)
– aujourd’hui : 350 membres
XML set normalisé par la spécification XML 1.0 du 10/02/98
Processus de normalisation du W3C Requirements Working draft Proposed Recommandation Recommandation
6 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Présentation du langagePrésentation du langage
Un exemple Caractéristiques essentielles
Modèle indépendant de la syntaxe extensible modularité
Quelques concepts
7 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
< personne > <prénom type="usuel">Jean-Marc</prénom> <nom>Vanel</nom> <nom-jeune-fille></nom-jeune-fille> <INSEE> <sexe>1</sexe> <année>53</année> <mois>08</mois> <département>69</département> <zone>384</zone> <numéro>006</numéro> </INSEE> <employeur>Information et Document</employeur> <employeur>Sun<!-- pas vrai ! --></employeur>
</personne>
Éléments
Encadrés par des balises ouvrantes et fermantes
Pouvant contenir plusieurs éléments imbriqués
éléments vides permis
L’ordre est est signifiant
Elément racine
Attribut
Un exempleUn exemple XML XML
Attributs valeurs encadrées par des guillemets
( " ou ‘ ) Information complémentaire de
l’élément
8 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Modèle abstrait indépendant de la Modèle abstrait indépendant de la syntaxe syntaxe
Modèle d'information arborescent représente un document entier un arbre contient des nœuds (Node) définis à partir de la
racine (Root) le document (arbre) complet est chargé en mémoire
(DOM) ou traité en séquence (SAX)
DOM
9 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
X(ML) = ExtensibilitéX(ML) = Extensibilité<?xml version="1.0" encoding="ISO-8859-1" ?><personne> <prénom type="usuel">Jean-Marc</prénom> <nom>Vanel</nom> <INSEE> <sexe>1</sexe> <année>53</année> <mois>08</mois> <département>69</département> <zone>384</zone> <numéro>006</numéro> </INSEE> <adresse>91 rue Victor Hugo 78330 Fontenay</adresse> <employeur>Information et Document</employeur> <employeur>Sun<!-- pas vrai ! --></employeur> </personne>
Les données pour les anciens clients restent validesAjout d'un élément
10 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
XML = ModularitéXML = Modularité<prestation>
<patient> ... même structure que personne </patient>
<praticien> ... même structure que personne </praticien>
<acte type=’Z122’> <tarif>non conventionné</tarif> <acte>
</prestation>
Réutilisation des traitements,formulaires,validations.
11 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
XML – un langage et de nombreux XML – un langage et de nombreux conceptsconcepts
GrammaireDTD
DOM
XML - Extensible Markup Langage
DTD - Document type definition
XSL - Extensible Style Language
DOM - Document Object Model
DocumentXML
<?xml version="1.0" encoding="UTF-8"?><!-- Fichier de démonstration - présentation XML : exempleDemo.xml. --><slides style="XMLtxtStyle"> <title>Présentation XML </title> <para title="Description"> Ceci est une démonstration pour XML </para> <authors> <person> <name>Thierry MADILLO </name> <email>[email protected]</email> </person> </authors> <event> <name>Présentation XML </name> <date>@today</date> <overview>Cet exemple est réalisé en XML - Il donne un aperçu des possibilités du métalangage XML. </overview>...
XSLT
XSLfo
12 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
XML - Le langage pour le Web :XML - Le langage pour le Web : les navigateursles navigateurs
Voici le même document <personne> : dans un browser naïf
l'information est conservée, le marquage est perdu ;
XML peut être considéré soit comme un texte avec marquage, soit comme de l'information structurée
dans un browser CSS:
de la typographie en plus
dans un browser XSLT:
possibilités de calculs, restructurations, tris, synthèses, combinaisons de documents, etc
dans un browser avec un formatage générique du XML (IE 5 ou 6) : personne.xml
dans un browser avec un traitement local de l'information XML : beer.xml
exemple avec clic sur entête pour trier des colonnes
Jean-Marc Vanel 1 53 08 69 384 006 Information et Document Sun
Jean-MarcVanel 1 53 08 69 384 006 Information et Document Sun
Mr Jean-Marc Vanel, né en août 1953 (Rhône), employeur Information et Document SIRET 123456789
13 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
XML - La langue commune de XML - La langue commune de l'informatiquel'informatique
Multitude de vocabulaires existants Généralistes : XHTML, SVG, XSLT, RDF, XML Schema,
Docbook, SMIL, X3D voir la page du W3C.org
Métier :NewsML, MPEG7, FPML, CBL, ebXML, ... Voir la page de xml.org (OASIS)
Adopté par toute l’industrie Outils de base largement disponibles
14 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Quelques Quelques dialectesdialectesQuelques offresQuelques offres
15 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
XML SchemasXML Schemas Une syntaxe pour spécifier la structure des documents Typage des données pour le contenu des ‘ éléments ’ et
des ‘ attributs ’ Recommandation du W3C depuis 2001
<xsd:schema xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <xsd:element name="SONG" type="SONGType"/> <xsd:complexType name="SONGType"> <xsd:element name="TITLE" type="xsd:string"/> <xsd:element name="COMPOSER" minOccurs="1" type="xsd:string"/> <xsd:element name="PRODUCER" minOccurs="0" type="xsd:string"/> <xsd:element name="LENGTH" minOccurs="0" maxOccurs="1" type="xsd:timeDuration"/> <xsd:element name="YEAR" minOccurs="0" maxOccurs="1" type="xsd:year"/> <xsd:element name="ARTIST" minOccurs="1" type="xsd:string"/> </xsd:complexType>
</xsd:schema>
16 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Vocabulaires métiersVocabulaires métiers
Des références : La page de xml.org (OASIS) Le site de la FING : mutu-xml.org
Dans le domaine de la finance OFX, FPML, FIXML
Au niveau de la santé Quelques exemples sur le WEB
Voir article Norbert Paquel EDISANTE 10/2000 http://www.medcost.fr/
EDISANTE - journée d ’information XML pour l ’EDI de la santé 10/1999 http://www.edisante.org/
HL7 - Health Level 7, http://www.hl7.org/ organisme international pour une norme dans le monde de la santé
...
17 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Impacts sur quelques offreursImpacts sur quelques offreurs
MicroSoft . Net
IBM & SUN Les offreurs SGBDR
ORACLE, SQL Server
Les offreurs ERP SAP, Peoplesoft ...
Les offreurs EAI / ETL MQ Series, Neon
Les serveurs d’applications S.A. Full XML : Tamino, Excelon, Bluestone, X-hive
18 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Navigateurs supportant XMLNavigateurs supportant XML
XML et MicroSoft IE 4 avec activeX puis IE 5 et IE 6
XML et Netscape : Mozilla, Doczilla
Browsers XML : Universités Nottingham http://ala.vsms.nottingham.ac.uk Panorama Interleaf - SoftQuad http://www.softquad.com Amaya Browser du W3C Opera
19 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Un exemple d ’utilisationUn exemple d ’utilisationavec XSLT- langage de transformationavec XSLT- langage de transformation
20 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
XSLT - Processus de transformationXSLT - Processus de transformation XSLT est un langage de transformation ==> il
transforme un document XML en un document en n'importe quel langage
Moteur de Transformation(Processeur XSLT)
XSLT
XML HTML (ou texte ou XML)
XML2aires
XML2aires
21 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Les données sont fournies par les applications format sortie SGBD (exemple Oracle 8i) fichier plats
Les données sont présentées en XML et validées parseur externe parseur en entrée du composeur
Un exempleUn exemple - a - - a - APPLICATIONS
Production
Composition automatique
Extracteur
Basede
Données
DocumentXML
22 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Un exempleUn exemple- b -- b -
Fichier XML CLIENT<Nom>MARTIN</Nom><Prénom>Paul</Prénom><Adresse1>1 AVENUE CHARLES DE GAULLE</Adresse1><Ville>92200 BOULGNE</Ville>
FICHIER XML LIGNES<Row> <PrimaryKey>1</PrimaryKey> <ForeignKey>0</ForeignKey> <Date>13.01</Date> <DateValeur>13.01</DateValeur> <Débit>500,00-</Débit> <LIBELLE>RETRAIT DAB</LIBELLE> <TypeOpération>CARTE</TypeOpération></Row><Row> <PrimaryKey>2</PrimaryKey> <ForeignKey>0</ForeignKey> <Crédit>1.747.373,81+</Crédit> <Date>26.01</Date> <DateValeur>24.01</DateValeur> <Débit>1.269,16-</Débit> <LIBELLE>CHEQUE 6282595</LIBELLE> <TypeOpération>CHEQUE</TypeOpération></Row>Exemple : base MDB
fichiers XML
23 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Exemple - c-Exemple - c-
Fichier XML CLIENT<Nom>MARTIN</Nom><Prénom>Paul</Prénom><Adresse1>1 AVENUE CHARLES DE GAULLE</Adresse1><Ville>92200 BOULGNE</Ville>
FICHIER XML LIGNES<Row> <PrimaryKey>1</PrimaryKey> <ForeignKey>0</ForeignKey> <Date>13.01</Date> <DateValeur>13.01</DateValeur> <Débit>500,00-</Débit> <LIBELLE>RETRAIT DAB</LIBELLE> <TypeOpération>CARTE</TypeOpération></Row><Row> <PrimaryKey>2</PrimaryKey> <ForeignKey>0</ForeignKey> <Crédit>1.747.373,81+</Crédit> <Date>26.01</Date> <DateValeur>24.01</DateValeur> <Débit>1.269,16-</Débit> <LIBELLE>CHEQUE 6282595</LIBELLE> <TypeOpération>CHEQUE</TypeOpération></Row>
24 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
Soap: XML et OOSoap: XML et OO
L’Objet est plus riche (comportement) que la donnée « passive » XML
Mais on peut tout exprimer en XML D’où l’idée d’un appel de fonction en XML
XML-RPC (Remote Procedure Call) SOAP: Simple Object Access Protocol
Transport par HTTP Plus de message en binaire (Corba) On capitalise sur l’existant autour de XML et HTTP
25 Séminaire Novembre 2001 – PLB – J.M.VanelSéminaire Novembre 2001 – PLB – J.M.Vanel
ConclusionConclusionXML en 2001 et aprèsXML en 2001 et après
Adopté par toute l’industrie Outils de base largement disponibles:
analyseurs syntaxiques, transformeurs, éditeurs, moteurs de requêtes, "AGL"
Des standards en pleine construction : vocabulaires et applications, protocoles, browsers, bases de données
et demain : le Web sémantique les services Web