Langages à balises : une introduction



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

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

Programmation Internet Cours 4

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

Les services usuels de l Internet

SII Stage d informatique pour l ingénieur

Les outils de création de sites web

Petite définition : Présentation :

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

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

Gestion Électronique de Documents et XML. Master 2 TSM

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

Master Technologies numériques appliquées à l'histoire Deuxième année

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

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

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

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

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

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

4. SERVICES WEB REST 46

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

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

!" #$%&'(&)'*'+,--./&0'1&23,+2.)$4$%52'&%'6.%&2'

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Introduction aux Technologies de l Internet

Internet et Programmation!

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

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?

News - Letter, comment ça marche? Agen, 03 décembre D'après un powerpoint du Pôle Normand des Echanges Electroniques. avec sa newsletter

Installation de DocBook sur un système Linux

Quelques formats de fichiers courants

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

Serveurs de noms Protocoles HTTP et FTP

Les sites web avec NVU

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

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

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

Introduction à Microsoft InfoPath 2010

XML : documents et outils

Le réseau Internet.

FORMATION / CREATION DE SITE WEB / 4 JOURNEES Sessions Octobre 2006

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

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

Manuel d intégration API FTP SMS ALLMYSMS.COM

1 ère Université WEB. Courbevoie Samedi 21 octobre Votre site interactif sur internet.

Fascicule 1.

Programmation Web. Madalina Croitoru IUT Montpellier

Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année

creer votre site internet en html/css

Module http MMS AllMySMS.com Manuel d intégration

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

Présentation Internet

C r é a t i o n D e S i t e s. P o l C R O V A T T O

Projet Gestion des Formats de Fichier

Théorie : internet, comment ça marche?

Présentation. Référenciel : textes officiels

Programmation Web. Introduction

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

XML et travail collaboratif : vers un Web sémantique

Présentation générale du projet data.bnf.fr

Notes pour l utilisation d Expression Web

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Application Web et J2EE

Adobe Technical Communication Suite 5

18 TCP Les protocoles de domaines d applications

Comment récupérer un document OOo corrompu. Distribué par Le projet OpenOffice.org

Les Architectures Orientées Services (SOA)

Système de gestion de contenu

Bibliothèque numérique de l enssib

Gestion documentaire (Extraits du CCI version 1.2)

Hébergement de site web Damien Nouvel

SECTION 5 BANQUE DE PROJETS

Algorithmique et langages du Web

INTERNET, C'EST QUOI?

Echosgraphik. Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet

SP1 : Intégration d'une vidéo dans une mardi 21/01/2014. page web, fonction du format vidéo et 3 mercredi 22/01/2014

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

Je catalogue, tu FRBRises, il/elle googlise. L évolution des catalogues et les bibliothécaires Vendredi 29 mars 2013 Manufacture des tabacs

Plan. Programmation Internet Cours 3. Organismes de standardisation

Publier dans la Base Documentaire

Formation Webmaster : Création de site Web Initiation + Approfondissement

UE 8 Systèmes d information de gestion Le programme

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09

TIC 12 ATELIER INTEGRATION CAHIER DES CHARGES. Page 1/5

Quels sont les enjeux?

CHAPITRE I INTRODUCTION CHAPITRE I E-COMMERCE. PLAN 1. Commerce électronique 2. Méthodologie de développement 3. Création de trafic

La conservation à long terme de contenus numériques

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

SMPMKPOO=aKbKbKpK=qÉÅÜåáèìÉë=kìã êáèìéë=éí= jìäíáã Çá~=J=abbpqkj

Les types de fichiers

Présentation Alfresco

nom : Collège Ste Clotilde

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

Les nouveaux sites documentaires de l IRD

La gestion électronique de documents

Audit de site web. Accessibilité

SYSTÈMES DE PUBLICATION POUR L INTERNET. Beatep Marie-France Landréa - Observatoire de Paris

Transcription:

Langages à balises : une introduction Yannick Prié UFR Informatique Université Lyon UE2.2 Master SIB M 2004-2005 Objectif généraux du cours Comprendre les grands principes de la représentation de données et de documents numériques à l aide d un langage à balises. Découvrir XML, son histoire et son fonctionnement Définir des langages basés sur XML à l aide de DTD S initier à la transformation de documents en utilisant XSL et un moteur XSLT Apprendre les bases de XHTML pour la génération de pages web UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 2 Objectifs de ce cours introductif Introduction aux langages à balise et à leurs principes arbres grammaires langages à balises Histoire de ces langages Présentation de la galaxie XML et de la suite du cours auteur Nat : Fr Victor Hugo Idée générale Représenter de l information dans des structures arborescentes Coder ces structures dans des fichiers, qui pourront être échangés notice titre Quatre vingt treize mots-clés terme navire terme Type : pers Marat terme Type : lieu Paris 2 ;078 43 03.4/ 3 $ <notice> <auteur nat="fr">victor Hugo </auteur> <titre>quatre vingt treize</titre> <mots-clés> <terme>navire</terme> <terme Type="pers">Marat</terme> <terme Type="lieu">Paris</terme> </mots-clés> </notice> UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 3 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 4 Parler des arbres Les arbres sont partout! Arbre Noeud nœuds fils et pères Racine Feuille Chemin suite de nœud dont chaque élément a pour père le précédent), Branche chemin se terminant sur une feuille Ancêtres et descendants Taille d un arbre nombre de nœuds Profondeur d un nœud 2 3 4 5 6 7 8 9 0 chemin E:\prie\Enseignement\2004-2005\ Master SIB\SIB2.2-bloc2-XML UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 5 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 6

Parcours d arbre Exemple de parcours Largeur d abord 2 3 4 5 6 7 8 9 0 Profondeur d abord 2 5 6 3 7 9 0 4 8 2 3 4 5 6 7 8 9 0 Objectif : compter les nœuds entourés Comptage local : compter_localement (nœud) Si il y a un cercle Alors n n + Pour tous les nœuds fils n_i, Compter_localement (n_i) Appel général : n 0 compter_localement (nœud ) afficher n Remarques Parcours en profondeur d abord Autant de comptages locaux que de nœuds Marche sur n importe quel arbre : on part de la racine et on parcours tout Pas de vision globale de l arbre 2 3 4 5 6 7 8 9 0 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 7 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 8 Notion de grammaire Autre exemple Système formel vocabulaire + règles de production permet de définir un arbre Exemple vocabulaire D (Dossier) F (fichier) règle D (D F)* Avec * == zéro ou plus == ou F D D D F F Vocabulaire A, B, C, D Règles A B+ Avec + == ou plus B BC* D C ( D B ) Question Quel est l arbre le plus petit que l on peut écrire avec cette grammaire? A B B C C D D B B C D D UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 9 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 0 Arbres et séquences d octets Arbres et séquences Fichier suite d octets Objectif représenter un arbre dans un fichier Solution décrire l arbre comme un ensemble d éléments qui se contiennent les uns les autres. représenter les éléments entre deux balises balises ouvrantes on les notera par exemple <nom> balises fermantes on les notera par exemple </nom> A B 2 B C 4 C 3 5 D D B 6 7 8 B C 9 0 D D 2 Eléments A B2 B2 B3 C4 C5 B3 D6 C4 D7 C5 B8 C0 B8 B9 B9 D C0 D2 Eléments et balises <A> <B> <B> <D></D> </B> <C> <D></D> </C> <C> <B> <B><D></D></B> <C><D></D></C> </B> </C> </B> </A> UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 2 2

Langages à balises Familles de langages à balises Tous les langages ayant pour objectif de représenter de l information en utilisant des balises Définis par vocabulaire noms des éléments grammaire mode d organisation des éléments des éléments en contiennent d autres + attributs des éléments un peu plus de structure (voir cours XML) Une description ensemble d éléments organisés dans un fichier contenus terminaux (texte) Décrire une notice bibliographique notice, titre, auteur, motsclés, terme, résumé,... Décrire un poème : poeme, quatrain, tercet, vers,... <poeme type="sonnet"> <quatrain> <vers>je vis, je meurs ; je me brûle et me noie.</vers> <vers>j'ai chaud extrême en endurant froidure ; </vers> <vers>... </vers> <vers>... </vers> </quatrain>... </poeme> <notice> <auteur nat="fr">victor Hugo </auteur> <titre>quatre vingt treize</titre> <mots-clés> <terme>navire</terme> <terme Type="pers">Marat</terme> <terme Type="lieu">Paris</terme> </mots-clés> </notice> vocabulaires différents grammaires différentes mais même manière d exprimer les descriptions UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 3 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 4 Notion de métalangage Langage avec lequel on peut définir d autres langages Pour les langages à balises langage exprimant la manière dont on peut décrire une famille de langages à balise comment exprimer les éléments? comment organiser les éléments? Exemples de métalangages SGML permet de définir : TEI, HTML,... XML permet de définir : SVG, TEI, XHTML,... Dans la suite Petite histoire des langages à balises et des applications liées de SGML à XML UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 5 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 6 (d après http://sophia.univ-lyon2.fr/didacticiel/unite/module2.html) Représentation de documents Structures logique / physique Document numérique manipulations et gestion par des ordinateurs Document structuré séparation de la structure physique et de la structure logique séparation forme / contenu D où possibilité de manipuler la structure logique des documents d accéder au texte des différentes parties logiques des documents de générer plusieurs structures physiques à partir d une structure logique Structure physique : typographie, blocs, espacements,... Structure logique : organisation des contenus UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 7 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 8 3

Balisage de texte SGML Idée marquer des zones des textes pour les qualifier les balises ouvrantes et fermantes délimitent les éléments de description la structure logique est un arbre «ajouté» au texte <p>il est de tradition de présenter un langage de programmation à l'aide d'un premier exemple comme : <eg> CHAR*20 GRTG GRTG = 'BONJOUR TOUT LE MONDE' PRINT *, GRTG END </eg></p> <p>dans cet exemple, on commence par déclarer la variable <ident>grtg</ident>, dans la ligne <kw>char*20 GRTG</kw>, qui identifie <ident>grtg</ident> comme formée de 20 octets de type <kw>char</kw>. On affecte alors à cette variable la valeur <mentioned>bonjour TOUT LE MONDE</mentioned>. Suivent alors l'ordre d'impression <kw>print</kw> et l'instruction finale <kw>end</kw>.</p> p : servira à la mise en page eg, kw,mentioned : seront mis en évidence dans la structure physique kw,mentioned : utilisés pour construire un index etc. Objectif : représenter l'information contenue dans un document indépendamment des systèmes utilisés pour la saisie et le traitement de la forme physique qu'il sera amené à prendre (papier, CD-ROM, web...) des langues et des alphabets, latins ou non des applications Naissance chez IBM (années soixante) GML Gestion de la documentation technique Normalisation 986 ISO-8879 une dizaine d années de travail Utilisation Description des documents dans les grosses organisations Complexité des langages Lourdeur et cherté des outils (chaîne de traitement) Journal Officiel, grosses entreprises/documenations, éditeurs... Echange des documents UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 9 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 20 (d après http://www.cavi.univ-paris3.fr/ilpga/ilpga/tal/) SGML : principes Métalangage permet de décrire des modèles (grammaires) Notion de DTD Document Type Definition Permet de décrire un modèle un type de document Un document SGML Est une instance du type de document Doit être conforme à la DTD associée SGML : exemple Instance <!DOCTYPE memo SYSTEM "memo.dtd"> <memo statut="conf"> <auteur>serge Fleury</auteur> <dest> <nom>andré Salem</nom> <nom>pollet Samvelian</nom> </dest> <sujet>cours SLFE6</sujet> <corps> <par>veuillez noter que le cours SLFE6 sur les documents électronique aura bel et bien lieu au mois de mai 2002</par> <par>s'il y avait des changements de votre côté, veuillez m'en aviser dans les plus brefs délais.</par> </corps> </memo> DTD (memo.dtd) <!-- DTD utilisable pour baliser les memos en SGML --> <!ELEMENT memo -- ((auteur & (date?) & sujet & dest & (cc?)), corps)> <!ATTLIST memo statut (conf pub) pub> <!ELEMENT (dest cc) -- (nom+)> <!ELEMENT corps -- (par*)> <!ELEMENT (auteur date sujet nom par) -- (#PCDATA)> UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 2 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 22 (d après cours PCI Web http://pci.univ-lyon.fr) HTML 99 CERN Tim Berners Lee Basé sur Principes de l hypertexte Client/serveur sur IP Principes Des serveurs peuvent fournir des documents hypertextes Les documents seront décrits en suivant une DTD SGML HTML (HyperText Markup Language) Les liens sont décrits avec leur cible (URL) Un client (navigateur) permet de lire (présenter) les documents HTML charge un nouveau document quand on active un lien Protocole d échange : HTTP (HyperText Transfert Protocol) Le Web en un schéma Serveur Web Internet HTTP Serveur Web HTML Page Web Navigateur = Client Web UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 23 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 24 4

HTML : notion d URL HTML : exemple Uniform Ressource Locator permet d identifier une ressource sur le réseau Une ressource peut être une page Web une image (seule ou utilisée dans une page Web) un programme un fichier à télécharger Une URL indique un protocole (langage de communication entre deux programmes sur deux machines) FTP (File Transfert Protocol), HTTP (HyperText Transfert Protocol) l adresse d un serveur un chemin dans l arborescence des fichiers Forme générale : protocole://adresse/chemin Exemples http://www.univ-lyon.fr/ http://www70.univ-lyon.fr/~yprie/enseignement/sib/sib-ue3- bloc4/cm4.6-7.pdf lien UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 25 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 26 Une première remarque : URLs et URIs Une URL indique une ressource sur une machine accessible par un protocole Généralisation URI (Uniform Ressource Identifier) Identifier une ressource disponible sur internet : URL simplement en lui donnant un nom (URName) urn:ietf:rfc:2396 http://yannick.prie.org/mescollegues/lionel.medini UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 27 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 28 Une deuxième remarque : sur la normalisation Pourquoi XML? Norme industrielle Référentiel publié par un organisme officiel (ISO, AFNOR...). En anglais : standard Standard Référentiel publié par une entité privée Si diffusion large : standard de fait Consortium Ensemble d entreprises, de centres de recherche, de particuliers qui s allient pour définir des normes et standards sur tout et n importe quoi Gain : fournir les outils au moment où le référentiel est publié JPEG (Joint Picture Expert Group) norme ISO MPEG (Moving Picture Expert Group) norme ISO W3C (World Wide Web Consortium) standards... Objectif représenter et échanger des données et des documents sur le web SGML un peu vieux trop complexe HTML trop basique document = en-tête + corps mélange logique / présentation balise b = bold (mise en gras) : <bold>attention!</b> bonne approche <important>attention!</important> présenter la chaine de caractères importante avec une mise en forme particulière (italique, rouge, gras, etc.) UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 29 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 30 5

Objectifs XML XML = métalangage XML doit être facilement utilisable sur le Web XML doit supporter une grande variété d'applications XML doit être compatible avec SGML Il doit être facile d'écrire des programmes qui traitent des documents XML Le nombre d'options doit être réduit au minimum, idéalement à zéro Les documents XML doivent être lisibles et raisonnablement clairs La conception de XML doit être menée rapidement La description de XML doit être formelle et concise Les documents XML doivent être faciles à créer La concision du balisage XML est d'une importance minime Permet de décrire des types de documents DTD, Schémas Permet de définir des instances Documents XML Répondant à un type de document Classique Simplement bien construits Nouveau Les instances peuvent décrire des documents (texte balisé) Classique, cf. SGML des données structurées quelconques Nouveau! UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 3 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 32 Principe général XML Schéma récapitulatif DTDs, Schéma Comment décrire les données et les documents? Documents XML Les données et les documents eux-mêmes, dans des fichiers Feuilles de style Manière de présenter les données et les documents Remarque On ne sait plus trop bien où sont les données, et les documents! est conforme à DTD décrit Document XML Feuille de style FS FS3 FS2 Page web Doc XML PDF UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 33 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 34 Troisième remarque : Intégration de XML dans les SI Stockage de données Simples fichiers (ex. configuration) Bases de données semi-structurées (requêtes, etc.) Bases de données documentaires Documents XML Documents XHTML (web) Echange de données D une base de données vers une autre (format d échange) Serveur vers un navigateur : données + feuille de style Remarque : Circulation de flux XML sur un réseau : Utilisation de l arbre entier (le document) Utilisation à la volée pour les très gros documents (exemple : BiM) UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 35 Différents langages plus ou moins standards liés à XML DTD / Schémas pour décrire Données Documents Normalisation à différents niveaux W3C ISO Organismes liés à un domaine... UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 36 6

Et d autres encore! Suite du module : XML 3 CM / 2 TP XPATH, XSL 2 CM / TP (X)HTML / CSS 2 CM / 2 TP Projet UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 37 UE2.2 Master SIB M 2004-2005 : Représentation des données et des connaissances 38 7