1 / 89

Introduction et Concepts : De SGML à XML

Introduction et Concepts : De SGML à XML. 1. Origines et Objectifs 2. SGML et HTML 3. Introduction à XML 4. XML pour quoi faire ?. Au commencement…. SGML Standard Generalized Markup Language Langage à balises pour représenter des documents structurés Complexe, difficile à apprendre

fineen
Download Presentation

Introduction et Concepts : De SGML à XML

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction et Concepts : De SGML à XML 1. Origines et Objectifs 2. SGML et HTML 3. Introduction à XML 4. XML pour quoi faire ?

  2. Au commencement… • SGML • Standard Generalized Markup Language • Langage à balises pour représenter des documents structurés • Complexe, difficile à apprendre • Réservé aux professionnels de la documentation • Difficilement extensible au Web • HTML ! (dérive de SGML) • Conçu dans l’optique d’afficher des « pages webs » • C’est ce qui a fait son succès • Problème de ces langages • Un document peut se définir par le fondet par la forme. • Forme = structure + présentation • Fond = structure + sémantique

  3. SGML • 1969 C. Goldfarb, E. Mosher, R. Lorie inventent GML chez IBM • GML a été créé pour éditer des documents, les mettre en page et les partager au sein de systèmes de gestion éditoriaux • 1978 Goldfarb prend la tête d’un comité « Computer Language for the Processing of Text » au sein de l’American National Standards Institute (ANSI). SGML

  4. Qu'est-ce que SGML ? • Une norme internationale : • Standard Generalized Markup Language • ISO 8879 - 1989 • Un métalangage de balisage de documents • lisible par l’être humain et traitable par une machine • permet de définir des langages de balisage • Les documents sont balisés conformément à une grammaire (la DTD Document Type Definition) • permet un balisage sémantique du fond. • Implique la notion de validité d'un document SGML

  5. SGML : objectifs • Séparation du fond et de la forme • possibilité de multiples présentations • un seul document en SGML • plusieurs formats : Postcript, HTML, etc. • Support de traitements sur le contenu des documents sans prise en compte de la forme • Proposition d’un cadre défini pour l’expression des modèles documentaires (validité, contrôle) • Intégration d'un format de stockage et d’échange normalisé SGML

  6. SGML : critiques • Très lourd et complexe pour la mise en œuvre de documents respectant ce format • Une grande rigueur est demandée à l'entrée des documents • Standard complexe et complet pour le traitement des documents • Liens hypertextes possibles mais complexes SGML

  7. HTML : présentation • Proposé par le W3C comme format de documents sur le Web. • Langage simple avec des balises standardisées permettant la mise en forme d’un texte. • Standard reconnu par tous les navigateurs. • Langage très populaire sur le Web <HTML> <HEAD> <TITLE> Exemple </TITLE> </HEAD> <BODY> <H1>Contenu du document</H1> <A HREF = "http://www.server.fr/Info /dir/test.html"> une référence externe </A> </BODY> </HTML> HTML

  8. HTML : inconvénients • Normalisation des différentes balises difficile : • les constructeurs ont eu tendance à définir leurs propres balises pour répondre à leurs besoins (incompatibilité) • HTML 4.0 • boutons, tables, applets, objects, graphiques, maths, ... • styles, frames, protections, ... • Mises à jour difficiles : • Données utiles et mises en forme ; • restructuration ou remise en forme de l’ensemble des pages du site fastidieux. • Pas de vérification syntaxique • Mélange le fond et la forme • méta-données avec la présentation • La sémantique du contenu est perdue • Pages conçues pour 1 type de terminal HTML

  9. Feuilles de style • Introduite pour diversifier les présentations • CSS (Cascading Style Sheet) • mécanisme d'héritage entre nœuds • une balise hérite de la parente • seulement ce qu'elle spécifie est redéfini • Recommandation W3C en décembre 1996 • Mécanisme simple pour ajouter un style aux documents Web • fonte, taille, couleur, etc. • Utilisables avec XML HTML

  10. XML : objectifs • XML= un nouveau langage d'échange basé sur le balisage • XML= plus simple que SGML • XML= plus complexe et performant que HTML • XML = développé par XML Working Group dirigé par le W3C (depuis 1996) • XML 1.0 = recommandation officielle du W3C depuis le 10 février 1998 Origines

  11. les 10 objectifs d ’XML • XML doit pouvoir être utilisé sans difficulté sur Internet • XML doit soutenir une grande variété d'applications • XML doit être compatible avec SGML et HTML • Il doit être facile d'écrire des programmes traitant les documents XML • Le nombre d'options dans XML doit être réduit au minimum, idéalement à aucune Origines

  12. les 10 objectifs D ’XML • Les documents XML doivent être lisibles par l'homme et raisonnablement clairs • La spécification de XML doit être disponible rapidement • La conception de XML doit être formelle et concise • Il doit être facile de créer des documents XML • La concision dans le balisage de XML est peu importante Origines

  13. Introduction à XML • XML est un méta-langage universel pour les données sur le Web qui permet au développeur de délivrer du contenu depuis les applications à d'autres applications ou aux browsers • XML promet de standardiser la manière dont l'information est : • Échangée (XML) • Personnalisée (XSL) • Retrouvée (XQuery) • Sécurisée (Encryption, Signature) • Liée (XLink) • ... XML

  14. Document bien formé: <a> <b>…</b> <c> <d>Bourgogne</d> <e>Dijon</e> </c> </a> SGML   XML  HTML XHTML XML : la base Les utilisateurs peuvent définir leurs propres tags Il est possible d'imposer une grammaire spécifique (DTD, Schéma) Les tags indiquent la signification des sections marquées XML

  15. Concepts de base • Balise (ou tag ou label) • Marque de début et fin permettant de repérer un élément textuel • Forme: <balise> de début, </balise> de fin • Elément de données • Texte encadré par une balise de début et une de fin • Les éléments de données peuvent être imbriquées <producteur> <adresse> <rue>A. Briand</rue> <ville>Dijon</ville> </adresse> </producteur> • Attribut • Doublet nom="valeur" qualifiant une balise • <producteur no="160017" region="Bourgogne"> XML

  16. Pourquoi utiliser XML? • Définir vos propres langages d’échange • Lisible : texte balisé avec marquage • Clair : séparation du fond et de la forme • Extensible : supporte les évolutions applicatives • Publier des informations • Commande, facture, bordereau de livraison, etc. • neutre du point de vue format • mise en forme avec des feuilles de style • Archiver des données (auto-description des archives) • Développé par le W3C • Pour le Web (Internet, Intranet) • S'étend à l'entreprise et ses partenaires • Supporté par les grands constructeurs • IBM, Microsoft .net, SUN, BEA, etc. • Des outils génériques et ouverts Pourquoi XML ?

  17. Publication multi-supports Middleware XMLizer XML Application de publication (XSL) Base de Données TV Numérique Pourquoi XML ?

  18. Échange de données Mapper Extractor JDBC JDBC BD relationnelle Datawarehouse Datamining Pourquoi XML ?

  19. Gestion documents semistructurés Amendement Serveur d’Applications HTTP GET Requêtes Requêtes HTTP POST Mapping XML-SQL SGBDR Feuille de style XSL Feuille de style XSL Processeur XSL Feuille de style XSL HTML généré Interface avec les applications bureautiques Pourquoi XML ?

  20. Échange B2B XML EDI XML EDI XMLizer Donneur d’ordre Internet (SOAP) Fournisseur Pourquoi XML ?

  21. Forces et faiblesses de XML • Une technologie structurante • Clarifie tous les échanges • Des standards internes et externes • Transversale à l'entreprise • Échanges de données • Bureautique • GED • Sites Web • EDI • Bases de données • Intégration e-business • … • Une syntaxe bavarde • Un méta-langage, mais de nombreux langages • Coûteux en CPU • Parsing • Coûteux en mémoire • Instanciation Pourquoi XML ?

  22. eXtensible Markup Language

  23. Plan • De HTML à XML • Documents bien formés • Documents valides • Liens • Feuilles de style • Traitement de documents XML • Applications

  24. de HTML à XML Généralités

  25. HTML • Langage à balises • Balises obligatoires (head, body, …) • Balises à valeur sémantique (h1, meta, …) • Balises à valeur d’habillage (center, small, ..) • Nombre fini de balises • Balises différentes suivant les navigateurs Pas d’évolution possible pour l’utilisateur

  26. HTML • Aucune séparation de la forme et du fond • Balises de fond (Meta, Head, …) • Balises de forme (center, small, …) • Balises de fond & forme (h1, h2, …) Durée de vie limitée à la durée de vie des outils capables de visionner ces documents.

  27. L’apport de XML • Ensemble non fini de balises • L’utilisateur peut créer de nouvelles balises • Séparation de la forme et du fond • Un document XML sera constitué d’au moins deux entités (le fond et la forme) • Séparation du contenu et de la grammaire • Permet la validation des documents

  28. Historique • XML est un standard un W3C (World Wide Web Consortium) • XML est basé sur le standard SGML • Les travaux de XML ont commencé en 1996 • En 1999, XML est considéré comme étant le standard d’échange d’information du futur

  29. Documents bien formés règles syntaxiques de XML

  30. Un document XML bien formé • Exemple de document XML : <livre> <titre> le super livre </titre> <chapitre> <numero> 1 </numero> <titre> titre du chapitre 1 </titre> <contenu> blabla blabla </contenu> </chapitre> <chapitre> … </chapitre></livre>

  31. Documents XML bien formés • Un document XML bien formé est un document qui est conforme aux règles syntaxiques du langage XML. • Un document bien formé pourra être traité par un parseur XML sans générer d’exception. • Un document XML bien formé pourra être associé avec une feuille de style.

  32. Règles syntaxiques XML • Un document XML est constitué de : • Un prologue : qui contient un ensemble d’informations sur le document • Un ensemble d’éléments avec leurs contenus : les éléments et leurs contenus sont les données du document • Des commentaires qui peuvent être inclus n’importe où dans le document

  33. Le prologue • La déclaration XML<?xml version=“1.0” encoding=‘ISO-8859-1’ standalone=‘yes’ ?> • Permet de préciser la version du document • Permet de préciser l’encodage utilisé • Permet de savoir si le document est autonome ou pas (lien vers d’autres documents)

  34. Le prologue • XML permet de définir des types de documents. • Un type de documents est une sorte de grammaire, on peut alors valider un document par rapport à une grammaire. • Le prologue permet de déclarer le type d’un document.<!DOCTYPE livre SYSTEM "livre.dtd" >

  35. Ensemble d’éléments • Les éléments des documents XML sont composés d’une balise d’ouverture, d’un contenu et d’une balise de clôture. <nom> contenue de l’élément </nom> • Le nom d’une balise est composé de caractères alphanumériques, du tiret-souligné, du signe moins ou du point. Il ne faut pas qu’il soit composé d’espaces. Un nom doit commencer par un caractère alphabétique ou du caractère tiret-souligné. Un nom ne doit pas commencer par XML/Xml/xML/...

  36. Ensemble d’éléments • Une balise d’ouverture peut avoir un ensemble d’attributs. Ex : <livre date=‘ 01-01-2000 ’> … • Un attribut est une paire nom=valeur • Les noms des attributs suivent les mêmes règles que les noms des éléments • La valeur est une chaîne de caractères encadrée par les caractères guillemets ou apostrophe • L’attribut xml:lang est prédéfini et sa valeur représente le langage utilisé dans le document Ex : <p xml:lang=‘ fr ’> ...

  37. Ensemble d’éléments • Le contenu d’un élément peut être : • un ensemble d’éléments • et/ou des données sous forme de chaînes de caractères ne contenant pas les caractères & et < • et/ou des références

  38. Ensemble d’éléments • Une référence peut être : • une référence à un caractère alphanumérique, elle doit commencer par &#x, puis inclure le numéro du caractère et finir par ; Ex : &#x38; est une référence vers & • une référence prédéfinie comme par exemple &amp; ou &apos; qui sont deux références vers & et ‘  • une référence vers quelque chose défini dans la DTD (Data Type Definition). Elle commence alors par &, puis par le nom de la référence, et finit par ; Ex : &ma_reference; (avec ma-reference=‘ texte long … ’ • Ce couple (nom, valeur) est appelé une entité

  39. Ensemble d’éléments • Les balises de clôture sont composées des noms correspondant aux balises d’ouvertures précédés du caractère / Ex : </livre> • En élément peut être vide (sans contenu), dans ce cas, il n’a qu’une seule balise (composée du nom suivi du caractère /) Ex : <Element_vide/>

  40. Sections littérales • Lorsque le parseur scanne un élément, il remplace toutes les références par leurs valeurs. • Pour empêcher cela, il faut utiliser une section littérale. Une section littérale est encadrée par <![CDATA[ et par ]]>Ex : <![CDATA[ <auteurs> Dupond &amp; ]]>

  41. Instructions de traitement • Il est possible d’inclure des instructions de traitement dans un document XML • La déclaration d’une instruction de traitement se fait de la facon suivante :<?nom arg1 arg2 .. ?> • nom est le nom de l’application cible • arg1, arg2, … sont les arguments de l ’application • Les noms XML, XmL, … sont réservés

  42. Commentaire • Des commentaires peuvent être inclus dans le contenu d’un élément XML. Ils doivent être encadrés par les marques <!-- et --> • Un commentaire est une chaîne de caractères quelconque qui ne contient pas la chaîne -- • Exemple :<!-- un commentaire --><!-- un commentaire qui n’est -- pas bien formé -->

  43. Documents bien formés • Le plus petit :<?xml version=“1.0” encoding=‘ISO-8859-1’ standalone=‘yes’ ?><livre/> • Un autre :<?xml version=“1.0” encoding=‘ISO-8859-1’ standalone=‘yes’ ?><livre date=‘ 01-01-2000 ’> <chapitre> XML &amp; HTML </chapitre> <!-- préciser la version de HTML--></livre>

  44. Documents valides XML et grammaire

  45. Document Type Definition • En XML, un type de document représente une structure (une grammaire) Ex : le type livre précise qu’un livre est composé de chapitres, qui sont composés de parties … • Un type de document est défini dans une DTD (Document Type Definition) • Une DTD peut être inclue ou référencée par un document XML

  46. Document Type Definition • On peut vérifier la validité d’un document par rapport à la DTD qu’il référence ou qu’il inclut. On parlera alors de document XML valide • Un document XML valide est donc un document XML bien formé qui a une DTD et qui est conforme à cette DTD • Il existe déjà de nombreuses DTD, il est alors possible de les utiliser pour construire des documents XML valides Ex : La DTD MathML pour les équations

  47. Document Type Definition • Pour associer un document XML à une DTD, il faut le faire avec l’élément <!DOCTYPE>Ex : <!DOCTYPE livre SYSTEM "livre.dtd" > • On considère qu’un document XML est constitué de deux choses : La DTD et la donnée. • Un document XML bien formé peut ne pas être composé de DTD • Un document XML valide doit avoir une DTD

  48. Data Type Definition • Une DTD est définie dans l’élément<!DOCTYPE name SYSTEM "fichier.dtd" [delaration] > • name est le nom du type de document • SYSTEM "fichier.dtd" est une référence vers le fichier.dtd. Ce fichier contient tout ou une partie de la DTD. C’est la partie externe de la DTD • [declaration] permet de définir tout ou une partie de la DTD. C ’est la partie interne de la DTD

  49. Contenu d’une DTD • Déclarations des entités • Déclarations des éléments et de leurs contenus • Déclarations des attributs des éléments • Commentaires

More Related