La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

XML (eXtensible Markup Language) The eXtensible Markup Language W 3 C (World Wide Web Consortium)

Présentations similaires


Présentation au sujet: "XML (eXtensible Markup Language) The eXtensible Markup Language W 3 C (World Wide Web Consortium)"— Transcription de la présentation:

1 XML (eXtensible Markup Language) The eXtensible Markup Language W 3 C (World Wide Web Consortium)

2 Un exemple en HTML extrait de « XML expliqué aux débutants » dEmmanuel Lazinier Bibliographie XML Jean-Christophe Bernadac et François Knab, Construire une application XML, Paris, Eyrolles, 1999 Alain Michard, XML, Langage et Applications, Paris, Eyrolles, 1998 William J. Pardi, XML en Action, Paris, Microsoft Press, 1999, adapté de l'anglais par James Guerin Le « source » avec balises de mise en page :

3 Visualisation dans un navigateur Aucune indication de sémantique par les balises

4 Problèmes dus en partie à HTML Les balises HTML sont prédéfinies, Un seul type de document, Structuration et contenu non séparés, Une seule vue du même document, Sémantique des liens rudimentaire, Adaptation en utilisant des scripts, Interopérabilité limitée (échanges d'informations limité)

5 Même si... Facilité d'apprentissage de HTML, disponibilités d'outils (de création, de visualisation), génération dynamique de documents, langages de scripts pour des comportements dynamiques,...

6 En XML : Jean-Christophe Bernadac François Knab Construire une application XML Eyrolles Paris 1999 ….

7 Différences ? Sémantique Balises : firstname, lastname Attributs Hiérarchie Biblio Book Author Translator Title … Firstname Lastname Aucune balise de présentation

8 Ce que XML permet (ou va permettre ?) Taper une seule fois le contenu, sans se soucier de la présentation de ce contenu Visualiser/Exploiter ce contenu de plusieurs manières

9 Le contenu sans se soucier de la présentation ou des traitements futurs ; sans avoir à saisir des libellés tels que'"auteur", "année de parution : à la manière dont on alimenterait une base de données.

10 La présentation de multiples présentations (en tableau, en texte suivi…), avec éventuellement tris, sélections, réorganisations, génération automatique de libellés, tables des matières, index, etc. et ce sur de multiples médias (écran, papier, terminal Braille, réfrigérateur, PDA, etc.)

11

12

13 Le code XML est intégré à une page HTML et exploité par un script => interactivité.

14 Lexploitation Comprendre/exploiter au mieux le contenu de ces pages, grâce au balisage spécifique, indépendant de toute application.

15 Les apports d'XML

16 Au départ : l'arbre d'éléments Un élément est un composant identifiable d'un document (paragraphe, numéro de partie, date, listes, titre, …) Un élément : peut avoir un contenu (données, autres éléments), peut être un pointeur sur de l'information (lien hypertexte), doit être "contigu" : un début –une fin … sans "trou"

17 L'arbre d'éléments (suite) Chaque élément est délimité par des crochets (balise de fermeture obligatoire sauf pour les éléments vides exemple : ), Un élément peut avoir plusieurs attributs pour décrire ses propriétés exemple de balise ouvrante :

18 livre Chapître Section Exemple

19 Rmq : le document est un arbre : les éléments ne doivent donc pas se chevaucher !

20 HTML : Description physique et structurelle mêlées Durée de vie courte (= celle des technologies qui donnent un sens aux éléments de mise en page) Plusieurs formes d'un même document => plusieurs versions de ce document !

21 Présentation Contenu Structure Doc. HTML Présentation Contenu Structure Doc. XML Contrôle de validité

22 Doc. bien formé - doc. valide Bien formé : Règles syntaxiques de XML respectées = bonne formulation. Valide : c'est un document bien formé qui respecte une DTD ou un schéma.

23 Modularité et réutilisation Structure définie à part, dans une "Document Type Definition" (DTD) ou dans un Schéma Utilisation de structures normalisées, publiques (ex : pour un tableau, une liste de références bibliographiques, …) Définition de nouveaux types de documents

24 Extensibilité et structure 1999 Octobre 14 ou

25 Sémantique dans les balises Hubert McDaniel 20 Fev Oct 2000 Des données auto-documentées

26 Autres avantages Reste indépendant des constructeurs Norme du W3C Codage universel (UNICODE)

27 Ce qu'XML n'est pas Ce n'est pas un langage de programmation, Ce nest pas un protocole réseau, Ce n'est pas un format propriétaire, Ce n'est pas une base de données, … mais XML permet le stockage d'informations "semi structurées".

28 Pour plus de détails… quelques éléments de syntaxe

29

30 Structure dun document XML Le prologue Le corps Une racine unique, Larbre déléments

31 Le prologue La déclaration XML La version de la spécification utilisée, Le type de codage (le jeu de caractères) La déclaration de la DTD ou du schéma Des commentaires ( ) Les instructions de traitement (pour traiter le contenu non xml) La déclaration dentités

32 Déclaration de type On indique le type du document (titlepage) SYSTEM permet de définir la ressource qui contient la DTD : une URL ( ) La référence à une DTD ou à un schéma n'est pas obligatoire… mais recommandée !!! ( )

33 Le corps d'un doc XML Une racine unique, Larbre déléments.

34 Une racine unique......

35 L'arbre d'éléments Un élément se compose: Dune balise douverture Un contenu Une balise de clôture Si lélément est vide il peut sécrire uniquement avec la balise douverture et un "slash" avant le chevron fermant exemple : Un élément peut contenir d'autres éléments imbriqués.

36 Un doc bien formé Cela signifie : Une racine unique, Une racine unique début et fin explicites pour chaque élément, Pas de superposition de définitions d'éléments, Les attributs respectent les règles suivantes :règles

37 Balises et attributs : règles des noms Les noms commencent par une lettre ou _ (caractère souligné) les noms peuvent contenir : des lettres de tous les alphabets (Unicode), des chiffres et les 3 caractères _ -.

38 Balises et attributs : règles des noms Les noms ne peuvent pas contenir : d'autres ponctuation (sauf :) des blancs ou des retours à la ligne) La "casse" (majuscule/minuscule) est importante.

39 Règles sur les attributs un espace sépare un attribut d'un élément ou deux attributs entre-eux, les attributs sont nommés, utilisation de l'égalité et des quotes (simples ou doubles)

40 Erreurs "classiques" de "bonne formation" Absence de déclaration XML mauvaise formation des noms XML mauvaise syntaxe des balises pas d'élément racine caractères spéciaux mal utilisés

41 Validité d'un doc XML Après le test de "bonne formation" Test de la conformité à la structure définie dans la DTD ou le schéma associé.

42 Document Type Definition

43 DTD Permet de définir un modèle d'un type de document, appelé aussi "Doctype": message , article de journal, livre …

44 DTD (suite) Un ensemble de règles de définition de la structure d'un document, En général dans un fichier à part, Permet de connaître la structure d'un document sans accéder à son contenu, Une DTD peut être partagée par plusieurs documents et plusieurs sites Web.

45 DTD (suite) Un exemple de définition dune liste qui est constituée ditems : les items contiennent du texte (parsable character data)

46 DTD (suite) Pas nécessairement incluse dans un fichier unique : sections internes et sections externes. Plusieurs sections externes (mais pas de déclaration du même élément dans 2 sections différentes : conflit de noms) domaines nominaux…

47 Quelles déclarations ? Eléments types, listes d'attributs, entités, notations, (des commentaires)

48 Eléments types Exemple : introduction, partie, chapitre et conclusion obligatoires, préface et avant-propos facultatives au moins une fois : partie, chapitre une seule fois : introduction, conclusion

49

50

51

52 Eléments déclarés "ANY" Le contenu est : un groupe ou répétable, il peut contenir : des chaînes (#PCDATA) ou tout autre élément de la DTD.

53 Eléments déclarés "EMPTY" Le contenu est vide On lui associe des attributs.

54 Les attributs Il est associé à un élément, Il fournit des informations supplémentaires sur l'élément, Il est limité à un ensemble de valeurs définies.

55 Les attributs (suite) Il contient en général : des informations de sécurité, de contrôle (version, statut, diffusion, …) des compléments d'information (date, langue, …) des informations de formattage.

56 Les attributs prédéfinis xml:lang essai Quein même xml:space pour indiquer à l'application si le contenu d'un élément doit être traité en préservant les espaces (xml:space='preserve') ou application du traitement par défaut (xml:space='default'). à la norme ISO 3166 par défaut

57 Exemple

58 Listes d'attributs Un attribut : une paire (nom, valeur) associée à un élément Types d'attributs : CDATA, ID ou IDREF ou IDREFS, ENTITY ou ENTITIES, NMTOKEN ou NMTOKENS, NOTATION

59

60 Exemple Dans la DTD : Dans le document XML :

61

62 Un exemple

63 Attributs ID, IDREF Un attribut de type ID affecte un identificateur unique à un élément XML, t.q. : Le parser peut tester s'il est unique à l'interieur du document, Un attribut IDREF peut référencer un élément nommé par ID les paires ID/IDREF sont utilisées pour : des références croisées et des liens internes. référencer des objets dans le document.

64 Exemple Exemple de déclarations pour ID/IDREF dans la DTD :

65 Exemple (suite) Dans le document : Fish come in many sizes As we see in the figure above ( ) we must consider size when selecting a fishtank.

66

67 Les déclarations d'entités Celles déclarées dans un document : entités générales, Celles déclarées dans une DTD pour être utilisées dans la DTD : entités paramètres

68 Exemple : les entités d'un livre Ceci est le titre &toc; &chap1; &chap2; Les entités seront remplacées par leur valeur (ici, le contenu des fichiers)

69 Entité paramètre exemples : Déclaration dans la partie interne ou externe d'une DTD Dans la partie interne d'une DTD (entre les crochets ouvrant et fermant de la déclaration DOCTYPE) : utilisables en pratique pour inclure le contenu d'un fichier externe

70 Adressée par identificateur public FPI (Formal Public Identifier) Pas toujours gérés par les applications Hérité de SGML Indirection entre le nom symbolique donné à l'entité et son URL de la forme : Utilisé si l'application ne peut pas résoudre l'identificateur public

71 Quelques règles d'écriture Modulariser / réutiliser

72 Quelques règles d'écriture Ordonner Les déclarations d'entités se placent en tête

73 Les outils nécessaires Un éditeur adapté (vision arborescente, indentation, etc…) Un "parseur", pour vérifier la bonne formulation : il peut être validant ou non. Une "visionneuse" : qui permet d'appliquer une feuille de style à un document XML et d'afficher le document formaté.

74 En résumé : Editeur Document Navigateur Lecteur Écrit le Montré au Chargé dans le Vérifié par le "Parseur"

75 Une vue d'ensemble d'XML

76 Les origines d'XML SGML XML HTML GM GM = Generalized Markup WWW Internet

77 XML c'est (1/2) Des recommandations du W3C (XML 1.1 le 4 février 2004 : xml / xml / X : eXtensible / Ouvert ML : Markup Language (comme HTML) Métalangage pour créer d'autres langages

78 XML c'est (2/2) Séparation du contenu, de la structure et de la forme Ajout de sémantique Internationalisation : Unicode

79

80 SGML ? Trop complexe (beaucoup d'options différentes, …), omission possible de balises : pb de lisibilité, "XML = 80% des fonctionnalités de SGML et 20% de sa difficulté" d'après J.C. Bernadac et F. Knab

81 Sous ses apparences… Ressemble au premier abord à du HTML Est un sous-ensemble de SGML (Standard Generalised Markup Language) Offre plus de flexibilité que HTML pour personnaliser et gérer des documents du Web

82 ...trompeuses un méta-langage et non un langage de marquage sans liste d'éléments prédéfinis : tout élément possible utilisation optionnelle d'une DTD (Document Type Definition) ou d'un schéma contrôle possible de la structure logique du document écrit en SGML

83

84 De nouveaux enjeux Edition collaborative, Diffusion ciblée, Personnalisation, Adaptation Échange de données Partage de ressources, …

85 Les documents Des gisements d'information (veille, analyse, …), En énorme quantité (Web, mises en ligne,…) Hétérogénéité des origines, des logiciels utilisés (Word, LateX, ps, pdf, numérisé,…)

86 Quels traitements ? Recherche dinformation (pb de la lecture séquentielle), Filtrage, Tri, Transformation, mise à jour, Traitements complexes (traitements conditionnels, extraction de données, changements simultanés dans plusieurs fichiers, …)

87 Prise en compte dUnicode Codage sur deux octets. Comment écrire du XML en unicode ? Rédaction dun texte avec un jeu de caractères puis conversion (Framemaker le gère automatiquement) Insertion de références à des caractères Unicode (é pour le é)

88 Unicode : à quoi sert-il ? Actuellement, environ symboles issus dau moins 24 alphabets internationaux (près de pour les idéogrammes du han (Chine), et pour les syllabes du hangul coréen). Permet de représenter pratiquement toutes les langues de la planète « The unicode standard » ISBN dAddison-Wesley ou

89 Unicode, quelques outils "recode" "native2ascii" dans le java development kit : Converts a file with native-encoded characters (characters which are non-Latin 1 and non-Unicode) to one with Unicode- encoded characters. dans le parser XML : RXP (option –c) (http://www.cogsci.ed.ac.uk/~richard/rxp.ht ml)http://www.cogsci.ed.ac.uk/~richard/rxp.ht ml

90 Les problèmes liés au Web Quantité d'informations "Infinie " > Pb de recherche d'informations (pertinence, "Invisible Web", déterminisme, …) > Comment retrouver ? Structuration des informations Certification des informations

91 Les problèmes liés au Web (suite) Pérennité des informations Adaptation à l'utilisateur "Privacy", copyright,... Limites du protocole HTTP Toujours de nouvelles normes

92 Le(s) "successeur(s)" dHTML XML (Extensible Markup Language, ou Langage Extensible de Balisage) Comme HTML (Hypertext Markup Language) c'est un langage de balisage (markup), c'est-à-dire un langage qui présente de l'information encadrée par des balises.

93 Contrairement à HTML HTML : un jeu limité de balises orientées présentation (titre, paragraphe, image, lien hypertexte, etc.) XML est un métalangage, Permet d'inventer à volonté de nouvelles balises pour isoler toutes les informations élémentaires (titre d'ouvrage, prix d'article, numéro de sécurité sociale, référence de pièce…), ou agrégats d'informations élémentaires, que peut contenir une page Web.


Télécharger ppt "XML (eXtensible Markup Language) The eXtensible Markup Language W 3 C (World Wide Web Consortium)"

Présentations similaires


Annonces Google