XML. Initiation. ou comment décrypter ce langage cla ssé X

Documents pareils
Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

SII Stage d informatique pour l ingénieur

Faculté de Génie Chaire industrielle en infrastructures de communication. La technologie XML. Wajdi Elleuch

Programmation Internet Cours 4

Formation HTML / CSS. ar dionoea

Autour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

XML : documents et outils

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème

Les outils de création de sites web

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition

HTML, CSS, JS et CGI. Elanore Elessar Dimar

.. CSS. Damien Nouvel. Damien Nouvel (Inalco) CSS 1 / 15

Gestion Électronique de Documents et XML. Master 2 TSM

XML et DOM. Matériel de cours. mars 1999 version 0.3 dernière modification: 24/3/99

STID 2ème année : TP Web/PHP

7.0 Guide de la solution Portable sans fil

<?xml version="1.0" encoding="iso " standalone="yes"?>

Sommaire. -1-Computer en bref. Web en bref. Le web 3.0,...la mobilité. Evolution du Web web1.0, web2.0, web2.b, web3.0...

Module BD et sites WEB

Sommaire : Pourquoi créer un site web? Qu est-ce qu un site Web? Les différents types de sites. Quelles solutions peuvent être employées?

Pack Fifty+ Normes Techniques 2013

Travaux dirigés n 10

Notes pour l utilisation d Expression Web

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Introduction à Microsoft InfoPath 2010

Celui qui vous parle. Yann Vigara

Adobe Technical Communication Suite 5

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

HMTL. Exemple de fichier HTML. Structure d un document HTML. Exemple de fichier HTML. Balises HTML. IFT1147 Programmation Serveur Web avec PHP

Livre Blanc WebSphere Transcoding Publisher

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall

< Atelier 1 /> Démarrer une application web

Modules du DUT Informatique proposés pour des DCCE en 2014/2015

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

HTML. Notions générales

les techniques d'extraction, les formulaires et intégration dans un site WEB

Logiciels de référencement

Le codage informatique

PIVOT. Pivot/Querier Documentation technique XML/XSD/XSLT

Intégrateur Web HTML5 CSS3

ING & NEWSLETTER NEWSLETTER RESPONSIVE

Bibliothèque numérique de l enssib

Petite définition : Présentation :

TP 5 Les CMS, la forme et le fond Internet et Outils (IO2)

Les services usuels de l Internet

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

Installation de DocBook sur un système Linux

ECLIPSE ET PDT (Php development tools)

Les types de fichiers

02/02/2011. test 1. Communication visuelle & web. Pao. Principes fondamentaux. Les six principes de base. La mise en page. Module sur trois journées

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

Tutoriel : Feuille de style externe

Quelques formats de fichiers courants

3. RÉALISATION ET QUALIFICATION D UN PROTOTYPE 3.1 Réalisation d un prototype CRÉATION D UNE PAGE WEB STATIQUE AU FORMAT HTML

Pelleas : Le projet XML pour le systeme d information documentaire du polytechnicum de Marne- la Vallée

Formation Site Web. Menu du jour. Le web comment ça marche? Créer un site web Une solution proposée pour débuter La suite?

From supply chain to demand chain

PROSOP : un système de gestion de bases de données prosopographiques

Survol des nouveautés

L'essentiel de XML. Cours XML. Olivier Carton

Normes techniques 2011

Optimiser moteur recherche

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

Outils logiciels pour l'ingénierie documentaire

WEBSEMINAIRE INTRODUCTION AU REFERENCEMENT

LES GRANDES ETAPES DE CREATION D UN WEB DESIGN

4. SERVICES WEB REST 46

HTML5 et CSS3 pour des sites Responsive Web Design

Initiation à html et à la création d'un site web

JPEG, PNG, PDF, CMJN, HTML, Préparez-vous à communiquer!

«Expertise de ressources «pour l édition de revues numériques

! Text Encoding Initiative

DESS Arts, création et technologies

Services sur réseaux. Trois services à la loupe. Dominique PRESENT Dépt S.R.C. - I.U.T. de Marne la Vallée

Les sites web avec NVU

Couches 4 à 7 : Traitement des données

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Introduction à Eclipse

Référencement de votre site Web Google et autres moteurs de recherche (4ième édition)

Manuel d'utilisation du navigateur WAP Palm

Sana Sellami. Licence Professionnelle SIL

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

UE 8 Systèmes d information de gestion Le programme

Formation : WEbMaster

Les architectures 3-tiers Partie I : les applications WEB

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Ecrire pour le web. Rédiger : simple, concis, structuré. Faire (plus) court. L essentiel d abord. Alléger le style. Varier les types de contenus

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

FTP : File TRansfer Protocol => permets d envoyer des gros fichiers sur un serveur (ou de télécharger depuis le serveur)

LAB-Multimedia CMS. Guide d'auto-formation. Copyright by LAB-Multimedia 1/22

Présentation Internet

Zen, SASS, responsive design

Glossaire. ( themanualpage.org) soumises à la licence GNU FDL.

Transcription:

Dr Jean-Charles Dufour LERTIM, Service du P r Fieschi Faculté de Médecine Marseille Université de la Méditerranée Novembre 2009 XML Initiation ou comment décrypter ce langage cla ssé X

Objectifs Énumérer les avantages et les inconvénients de XML Citer des applications utilisant XML Créer un document XML bien formé (wellformed) Créer une DTD et un document XML valide Afficher un document XML grâce à une feuille de style CSS

extensible Markup Language Langage de marquage extensible Un exemple vite! Exemple de document XML <?xml version="1.0" encoding="iso-8859-1"?> <cours> <titre>initiation à XML</titre> <enseignant>jean-charles Dufour</enseignant> <date>01 avril 2004</date> </cours>

XML HTML? XML n'est pas "la relève" de HTML XML seul ne présente aucune donnée XML est moins éprouvé que HTML XML est plus difficile à utiliser que HTML Pourtant : XML s est imposé!

Pourquoi XML? Standardisation des formats de documents Fédérer différentes applications Palier les inconvénients du HTML : Exclusivement conçu pour affichage Web Stock limité de balises Mélange structure et mise en page HTML : +/- une page HTML par affichage (écran, imprimante, WAP, PDA, ) XML : format de base identique quelle que soit l'utilisation finale

Avantages Séparation structure, contenu, présentation Lisibilité universelle : codage texte versus codage binaire Indépendant des plates-formes et des programmes Extensible Structure arborescence aisément compréhensible

Avantages Standard gratuit sans droit de licence Métalangage permettant de créer d'autres langages (SMIL, MathML, WML ) Internationalisable : XML peut utiliser n'importe quel jeu de caractères (Latin, Chinois, Arabe, Grec etc ) Assure la pérennité des documents (!? ) XML est particulièrement adapté pour l'échange des données et des documents

Inconvénients Espace de stockage plus important que le format binaire (petit inconvénient!) Mise en page nécessite un langage tiers (C'est aussi un avantages!)

Quelques applications du XML WAP XHTML Open Office FileMaker Microsoft Office (version XP, 2003, 2007)

L'histoire du XML Il était, encore une fois, le SGML GML : 1969 C.F. Goldfab, IBM SGML : 1986 standard ISO (Standardized Generalized Markup Language) WWW et HTML : 1989 T. Berners-Lee, Centre Rech. Nucléaire Zürich HTML = Stock limité de balises SGML + balise pour les liens hypertexte XML v1.0 : 1998 Recommandation du World Wide Web Consortium (W3C)

HTML : un beau B Bazard! HTML mélange : 1. Présentation <i> <u> <b> <font> 2. Structure <p> <h1> <h2> 3. Sémantique <title> <code> <cite> <q> 4. Interaction <form> <input> <button>

Structure Contenu - Présentation Langage HTML Langages XML Présentation Contenu Structure Présentation Contenu Structure XSL, CSS XML DTD, Schema Un contexte d'utilisation : Web Plusieurs contextes d'utilisations : Web, gestion, échange d'info, fédération,

XML seul n'est d'aucune utilité! Langage de structuration de données pur : XML ne donne aucune propriété de mise en page XML seul ne permet aucun traitement des données : stockage ou échange seulement

Principe d'utilisation(s) du XML 1 document XML n utilisations Utilisation1 <?xml version="1.0" encoding="iso-8859-1?> <cours> <titre>initiation à XML</titre> <enseignant>jean-charles Dufour</enseignant> <date>6 décembre 2002</date> <duree unite="heure">3</duree> <participants> <participant>pierre Dupond</participant> <participant>sylvie Dumas</participant> <participant>paul Martin</participant> <participant>paul Gontran</participant> <participant>henri Boultra</participant> <participant>eric Josse</participant> <participant>emile Triche</participant> <participant>claire Bennilla</participant> <participant>andré Grobo</participant> <participant>bill Gate</participant> </participants> </cours> Traitement(s) Utilisation2 Utilisation3

Ce que vous connaissez maintenant L'origine du XML Les avantages et inconvénients de XML Quelques applications utilisant XML Présentation Contenu XSL, CSS XML Structure DTD, Schema Contextes d'utilisations

Règles de base Jamais d'espace ni de caractères spéciaux pour nommer les balises <une balise>contenu</une balise> <em@il>monemail@monfournisseur.fr</em@il > Jamais de balise commençant par xml ou un chiffre <1balise> <xmlbalise> <balise1> <balisexml>

Règles de base XML est sensible à la casse <UneBalise> <unebalise> <UNEBALISE> Les balises sont toujours fermés <unebalise>contenu</unebalise> <unebalise></unebalise> OU <unebalise/> (si ne contient rien) Imbrication rigoureuse des balises Toujours une balise racine (root)

Règles de base Une balise peut avoir des attributs <unebalise attribut1="valeur 1" attribut2="valeur2"> La valeur d'un attribut : Toujours entourée de " ou ' (double ou simple cote) Toujours spécifiée (même si vide) <unebalise attribut1> <unebalise attribut1=> <unebalise attribut=""> <unebalise attribut1=''> 2 doubles cotes OU 2 simples cotes

Règles de base Document XML débute par le prologue <?xml version="1.0" encoding="iso-8859-1"?> Respect des règles de bases = document bien formé (well-formed) Prologue Élément racine Éléments fils de cours <?xml version="1.0" encoding="iso-8859-1"?> <cours niveau="1" durée="3 heures"> <titre>initiation à XML</titre> <enseignant>jean-charles Dufour</enseignant> <date>01 avril 2006</date> </cours>

Exercice 1. Créez un document XML décrivant un film de votre choix 2. Vérifiez qu'il est bien formé en l'affichant dans Internet Explorer (analyser ou parser) Une possibilité parmi une infinité! <?xml version="1.0" encoding="iso-8859-1"?> <film type="cinéma"> <titre>psychose</titre> <annéeréalisation>1963</annéeréalisation> <réalisation>alfred Hitchcock</réalisation> <interprètes> <interprète>anthony Perkins</interprète> <interprète>janet Leigh</interprète> </interprètes> </film>

Exercice Ce document est-il bien formé? <?xml version="1.0" encoding="iso-8859-1"?> <Lettre>Cher confrère, je vous adresse Mr <Nom>Dupond</Nom>, <Prénom>Jean</Prénom> qui se plaint d'une <Symptôme code="r060">dyspnée</symptôme> et d'une <Symptôme code="r05">toux</symptôme>. Je pense qu'il s'agit d'une <Diagnostic code="j42" statut="hypothèse">bronchite</diagnostic> mais il me faut votre avis pour éliminer un <Diagnostic code="j459" statut="hypothèse">asthme</diagnostic>. </Lettre>

Solution OUI! Il respecte la syntaxe XML La balise <Lettre> contient un succession de textes et de balises filles correctement imbriquées

Ce que vous savez faire maintenant Respecter la syntaxe XML pour créer un document bien formé Présentation Contenu Structure XSL, CSS XML DTD, Schema Contextes d'utilisations

Problème! Autant de structures XML film que d'étudiants Regroupement, travail collaboratif compromis!

Solution! 1. Donner des indications strictes pour structurer le document film 2. Puis, vérifier que chaque document film respecte ces règles

Contrôler la structure d'un document DTD : Document Type Definition DTD définit : Nom des balises autorisées L'ordre des balises Les imbrications Les attributs autorisés L'obligation ou non de spécifier des attributs Les valeurs possibles des attributs

Syntaxe d'une DTD Spécifier (déclarer) une balise (ELEMENT) : <!ELEMENT nomdelabalise (contenudelabalise)> Spécifier (déclarer) un ou plusieurs attributs : <!ATTLIST nomdelabalise nomattribut1 TYPE #OPTION nomattribut2 TYPE #OPTION>

Exemple Le document XML <?xml version="1.0" encoding="iso-8859-1"?> <cours niveau="1" durée="3 heures"> <titre>initiation à XML</titre> <enseignant>jean-charles Dufour</enseignant> <date>6 décembre 2002</date> <participants> <participant>pierre Dupond</participant> <participant>sylvie Dumas</participant> <participant>paul Martin</participant> </participants> </cours> sa DTD <!ELEMENT cours (titre, enseignant, date, participants)> <!ATTLIST cours niveau CDATA #REQUIRED durée CDATA #REQUIRED> <!ELEMENT titre (#PCDATA)> <!ELEMENT enseignant (#PCDATA)> <!ELEMENT date (#PCDATA)> <!ELEMENT participants (participant+)> <!ELEMENT participant (#PCDATA)>

Comment définir le contenu d'une balise? <!ELEMENT nomdelabalise (contenudelabalise)> Symbole Signification Exemple () Regroupe le contenu <!ELEMENT cours (titre, enseignant, date)>, Liaison ET : tous les éléments doivent être présents et dans cet ordre Liaison OU EXCLUSIF : un seul des éléments doit être présent (titre, enseignant, date) (TP magistral TD) Aucun symbole L'élément doit être présent 1 seule fois (titre) + L'élément doit être présent 1 fois ou plus Le groupe doit être présent 1 fois ou plus? L'élément est optionnel. Il peut apparaître 0 ou 1 fois (enseignant+) (commentaire, description)+ (titre, enseignant, date?) * L'élément peut apparaître 0 ou plusieurs fois (participant*) #PCDATA L'élément peut contenir n'importe quelles chaînes de caractères(parsed Character Data) <!ELEMENT TP (#PCDATA)>

Comment définir l'existence d'un attribut? <!ATTLIST nomdelabalise nomattribut TYPE #OPTION> Définition de l'option de l'attribut Symbole Signification Exemple #REQUIRED L'attribut doit être présent <!ATTLIST cours durée CDATA #REQUIRED> #IMPLIED L'attribut est optionnel <!ATTLIST cours début CDATA #IMPLIED> #FIXED "valeur" Aucun symbole suivit de "valeur" La valeur de l'attribut est fixée L'attribut prend une valeur par défaut. <!ATTLIST cours durée CDATA #FIXED "3 h"> <!ATTLIST cours début CDATA "9 h">

Comment définir le contenu d'un attribut? <!ATTLIST nomdelabalise nomattribut TYPE #OPTION> Définition du type de l'attribut Symbole Signification Exemple CDATA (valeur1 valeur2) La valeur de l'attribut est une chaîne de caractères L'attribut peut avoir la valeur1 ou la valeur2 <!ATTLIST cours durée CDATA #REQUIRED> <!ATTLIST cours niveau (1 2 3) #REQUIRED>

Associer document XML et DTD - DTD Externe - <!DOCTYPE baliseracine SYSTEM "chemin/fichier.dtd"> Le chemin est absolu ou relatif Le document XML associé à <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE cours SYSTEM "cours.dtd"> <cours niveau="2" duree="3h"> <titre>initiation à XML</titre> <enseignant>jean-charles Dufour</enseignant> <date>6 décembre 2002</date> <participants> <participant>pierre Dupond</participant> <participant>sylvie Dumas</participant> <participant>paul Martin</participant> </participants> </cours> sa DTD <!ELEMENT cours (titre, enseignant, date, participants)> <!ATTLIST cours niveau CDATA #REQUIRED duree CDATA #REQUIRED> <!ELEMENT titre (#PCDATA)> <!ELEMENT enseignant (#PCDATA)> <!ELEMENT date (#PCDATA)> <!ELEMENT participants (participant+)> <!ELEMENT participant (#PCDATA)>

Associer document XML et DTD - DTD Interne - <!DOCTYPE baliseracine [la_syntaxe_de_la_dtt]> La DTD est incluse directement dans le document XML <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE Message [ <!ELEMENT Message (Expediteur, Destinataire, Titre, Texte)> <!ELEMENT Expediteur (#PCDATA)> <!ELEMENT Destinataire (#PCDATA)> <!ELEMENT Titre (#PCDATA)> <!ELEMENT Texte (#PCDATA)> ]> <Message> <Expediteur>Jean</Expediteur > <Destinataire>Pierre</Destinataire > <Titre>Salut</Titre> <Texte>Comment vas-tu depuis notre dernière rencontre?</texte> </Message>

Document XML Valide Document XML valide : sa structure correspond à la structure décrite dans sa DTD Valider un document Internet Explorer : parser non-validant Add-in de validation : Internet Explorer Tools for Validating XML and Viewing XSLT Output (iexmltls.exe) Puis : click droit sur msxmlval.inf Installer click droit sur mscmlvw.inf Installer Formulaire de validation online (DTD Interne seulement) http://www.w3schools.com/dom/dom_validate.asp (pour IE seulement) http://www.xmlvalidation.com/?l=0 (pour IE et FireFox)

Exercice Créez un document XML valide pour cette DTD : <!ELEMENT Personne (Nom, Prenom?, Adresse*, Telephone+)> <!ELEMENT Nom (#PCDATA)> <!ELEMENT Prenom (#PCDATA)> <!ELEMENT Adresse (#PCDATA)> <!ELEMENT Telephone (#PCDATA)>

Une solution <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE Personne SYSTEM "Personne.dtd"> <Personne> <Nom>Dupond</Nom> <Prenom>Jean</Prenom> <Telephone>04.12.85.98.56</Telephone> <Telephone>06.12.56.48.45</Telephone> </Personne>

Exercice Créez un document XML valide pour cette DTD : <!ELEMENT Parking (ListeDeVoitures)> <!ATTLIST Parking nombreniveaux (1 2 3 4) #REQUIRED proprietaire CDATA #IMPLIED tarif CDATA #FIXED "1 euro / heure" > <!ELEMENT ListeDeVoitures (Voiture*)> <!ELEMENT Voiture (Marque, Proprietaire)> <!ELEMENT Marque (#PCDATA)> <!ELEMENT Proprietaire (#PCDATA)>

Une solution <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE Parking SYSTEM "parking.dtd"> <Parking nombreniveaux="2"> <ListeDeVoitures> <Voiture> <Marque>Renault</Marque> <Proprietaire>Jean Dupond</Proprietaire> </Voiture> <Voiture> <Marque>BMW</Marque> <Proprietaire>Pierre Paul</Proprietaire> </Voiture> </ListeDeVoitures> </Parking>

Exercice Créez une DTD pour valider votre document XML décrivant un film Ma solution <!ELEMENT film (titre, annéeréalisation, réalisation, interprètes)> <!ATTLIST film type (cinéma télévision) #REQUIRED > <!ELEMENT titre (#PCDATA)> <!ELEMENT annéeréalisation (#PCDATA)> <!ELEMENT réalisation (#PCDATA)> <!ELEMENT interprètes (interprète+)> <!ELEMENT interprète (#PCDATA)>

Ce que vous savez faire maintenant Expliquer le rôle d'une DTD Pré-déterminer la structure d'un document XML grâce à une DTD Créer une DTD pour un document XML préexistant Vérifier qu'un document XML est valide pour une DTD donnée

Ce que vous savez faire maintenant Présentation Contenu Structure XSL, CSS XML DTD, Schema Contextes d'utilisations

Afficher du XML (une première utilisation) Principe : Appliquer une feuille de style CSS au document XML <?xml version="1.0" encoding="iso-8859-1"?> <?xml-stylesheet href="feuillestyle.css" type="text/css"?> <Document> <Question>Comment afficher un message?</question> <Reponse>Simplement avec une feuille de style!</reponse> </Document> Méthode : 1 sélecteur CSS 1 balise XML

Modifier l'affichage : modifier la CSS! feuillestyle.css Reponse { font-family: Arial; font-weight: bold; color: red } feuillestyle.css Reponse { font-family: Arial; font-weight: bold; color: red } Question { display: block; font-family: Arial; background: yellow; font-size: 21px; }

Exercice Créer une feuille de style CSS pour afficher votre document XML décrivant un film

Une solution film.css titre { display : block; background-color : white; font-size: 40px; font-family: "Monotype Corsiva"; } anneerealisation { font-family : Arial; font-size: 20px; } realisation { font-family : Arial; font-size: 20px; font-style: italic; color: Blue; } Attention : Dans une feuille CSS, seules les balises sans accent peuvent être référencées interprete { display : block; background-color: #FFF8DC; border: 1px solid #D2691E; margin-right: 80%; margin-left: 20px; margin-bottom: 2px; font-family: Tahoma; font-size: 14px; font-variant: small-caps; font-weight: bold; }

Ce que vous savez faire maintenant Afficher un document XML à l'aide d'une feuille de style Modifier l'affichage sans modifier le document XML Présentation Contenu XSL, CSS XML Structure DTD, Schema Contextes d'utilisations

Ce que nous n'avons pas vu Les espaces de noms (NameSpace) Toutes les possibilités des DTD (ENTITY, NOTATION, ANY, combinaison de groupe, ) Schema XSL

Testez vos connaissances! Quiz du W3Schools [date d'accès 2/12/2002] http://www.w3schools.com/quiztest/quiztest.asp?qtest=xml Vous devez obtenir au moins 13/20, sinon revoyez ce cours et aidez-vous des références ci-après

Ressources XML pour débutants Johann-Christian Hancke Compétence Micro n 27 (5,80 ) Dispo. en kiosque ou sur commande (http://www.competencemicro.com) Comment ça marche (cf. section XML) Jean-François PILLOU http://www.commentcamarche.com W3Schools.com (cf. section XML tutorials) Refsnes Data http://www.w3schools.com/ Exemples de pages Web entièrement développées avec XML http://www.xml.com/1999/03/ie5/first-x.xml http://www.xmlguru.de/xml/neu.xml http://www.xml.com/1999/04/holman/gkh-19990418.xml Exemple d'un document xml plusieurs présentations (utilisation de XSL) http://msdn.microsoft.com/downloads/samples/internet/xml/multiple_views/default.asp (puis cliquez sur Demo)