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

D.U. 2003-041 Introduction à XML Université Paris II & LRI Michel de Rougemont 1.Introduction à XML 2.DTD 3.XSL : style.

Présentations similaires


Présentation au sujet: "D.U. 2003-041 Introduction à XML Université Paris II & LRI Michel de Rougemont 1.Introduction à XML 2.DTD 3.XSL : style."— Transcription de la présentation:

1 D.U. 2003-041 Introduction à XML Université Paris II & LRI Michel de Rougemont mdr@lri.fr http://www.lri.fr/~mdr 1.Introduction à XML 2.DTD 3.XSL : style généralisant CSS 4.XSLT : transformations darbres 5.Propriétés régulières et automates darbres

2 D.U. 2003-042 XML eXtensible Markup Language "successeur" de HTML héritier de SGML Standard déchange (EDI) Documents structurés Principe de base. Séparer –Structure d un document: DTD –Contenu: arbre déléments –Affichage de ce que lon souhaite XSL,XSLT, XQuery

3 D.U. 2003-043 Le monde XML Historique –"successeur" de HTML –héritier de SGML Structure DTD –Espaces Nominaux Contenu du document XSL: style daffichage –XSLT –XPATH Permet de rechercher une information en utilisant la structure. Valeur du document?

4 Exemple de document Saint Pétaouchnoque, Le 30 nivose 2004 Editions Duschmol, 12 rue Schmurz YT123 Rapis WindStar 2000 Les rosières en buget AB562 Saint Pétaouchnoque Tel: 012133564 Fax: 879765426 Objet: ben quoi? Monsieur, Bla bla bli, bli blo bla, kkkk vhlg vckjdhklbg fdskjbvhv feje slc ifehfe fhckh c jeflccj n khef iheznf jùkvbc lkhdklvn v Veuillez agréer patati patata vachement sincères. signature Pied de page Logo Date Destinataire Corps Pied de page En-tête Objet Salutation Formule de politesse Signature

5 Représentation XML … 30 Nivose 2004 Monsieur, Premier paragraphe et là le deuxième &abrev-adresse; Mr Schnock rue des églantiers Saint Glin bla bla …

6 D.U. 2003-046 Points importants La représentation de cette lettre en XML ne comporte aucune indication sur sa mise en page. De nombreuses propriétés graphiques ou typographiques sont absentes du source XML. Ces propriétés seront définies par l'intermédiaire d'une feuille de style. Une feuille de style est un ensemble de règles pour spécifier la réalisation concrète d'un document sur un média particulier.

7 D.U. 2003-047 Exemples de documents XML Bonjour! Bonjour! Bonjour!

8 D.U. 2003-048 Structure dun document Un document XML se compose –dun prologue, éventuellement vide –dun arbre déléments –de commentaires et dinstructions de traitement, facultatifs Bonjour!

9 D.U. 2003-049 Prologue Une déclaration XML, facultative –de la forme: –indique au processeur qui va traiter le document: la version du langage XML utilisée le codage de caractères utilisé l'existence de déclarations extérieures au document Une déclaration de type de document, facultative –de la forme –indique la structure particulière à laquelle doit se conformer un document

10 D.U. 2003-0410 Structure d'une DTD Une DTD peut comprendre deux parties –une partie externe la partie externe est définie en dehors du document. Elle est référencée par une référence DTD, le plus souvent un URL. Ce mécanisme permet d'assurer une réutilisation de DTDs souvent utilisées. –une partie interne utilisée pour spécialiser une DTD externe générique ou redéfinir certains types d'éléments

11 D.U. 2003-0411 Structure d'un élément (1) Un élément est de la forme: contenu est la balise d'ouverture est la balise de fermeture. Sa présence est obligatoire, à l'exception très particulière des éléments vides, notés indifféremment ou. contenu est le contenu d'un élément. Il peut s'agir: attr='valeur' représente un ensemble éventuellement vide d'attributs, c'est à dire de paires (nom,valeur). Un élément ne peut posséder qu'un seul attribut de nom donné. – de vide – de texte – d'autres éléments – d'une imbrication de texte et d'éléments – d'instructions de traitement – de commentaires

12 D.U. 2003-0412 Structure d'un élément (2) Un nom d'élément est une suite non vide de caractères pris parmi –les caractères alphanumériques –le tiret-souligné (undescore) –le signe moins –le point –le caractère deux-points (:) est utilisable, mais il a un sens particulier qui doit satisfaire les contraintes suivantes –le premier caractère doit être alphabétique ou un tiret- souligné –les trois premiers caractères ne doivent pas former une chaîne dont la représentation en lettres minuscules est "xml". Exemples de noms d'éléments correctsincorrects _ toto Nom_société xsl:rule X.11 1998-catalogue XmlSpécififica tion nom société

13 D.U. 2003-0413 Syntaxe des attributs Un attribut est une paire nom='valeur' qui permet de caractériser un élément. Un élément peut avoir plusieurs attributs. Dans ce cas, les paires nom='valeur' seront séparées par un espace. Exemples – Le nom d'un attribut obéit aux mêmes règles que le nom d'un élément La valeur d'un attribut est une chaîne encadrée par des guillemets ( " ) ou des apostrophes simples ( ' ).

14 D.U. 2003-0414 Arbre d'éléments Dire qu'un document XML contient un arbre d'éléments, c'est imposer les contraintes suivantes: –Il existe dans un document un et un seul élément père qui contient tous les autres. C'est l'élément racine du document. –Tout élément distinct de la racine est totalement inclus dans son père. Il ne peut donc y avoir recouvrement partiel. Ainsi: bla bla bla n'est pas une structure XML.

15 D.U. 2003-0415 Documents bien formés Un document est dit bien formé si: –son prologue ne contient pas de déclaration de type de document –il contient un arbre d'éléments –Exemple Bonjour!

16 D.U. 2003-0416 Documents valides Un document est dit valide si: –son prologue contient une déclaration de type de document –son arbre d'éléments respecte la structure définie par la déclaration de type <!DOCTYPE document [ ]> Bonjour!

17 D.U. 2003-0417 Notion de DTD Un document valide doit contenir une Déclaration de Type de Document ou DTD. Cette déclaration peut faire référence, par l'intermédiaire d'une URL à un fichier externe. Bonjour!

18 D.U. 2003-0418 Contenu d'une DTD Une DTD peut contenir des déclarations –d'éléments –de listes d'attributs –d'entités générales –d'entités paramètres –de notations ainsi que des commentaires

19 D.U. 2003-0419 Déclaration d'élément Une déclaration d'élément est de la forme –ELEMENT est un mot-clef et s'écrit impérativement en majuscules –nom est un nom valide d'un élément –modèle est le modèle de contenu de cet élément. On distingue cinq modèles de contenu éléments données mixte libre vide

20 D.U. 2003-0420 Modèle de contenu éléments (1/2) Séquence d'éléments fils (..,..,..) –Exemple Un élément chapitre doit contenir, impérativement et dans cet ordre, un sous-élément titre, intro et section. Alternative (..|..|..) –Exemple Indicateurs d'occurrence *, +, ? Un nom d'élément apparaissant dans le modèle d'un élément père peut-être suffixé par un indicateur d'occurrence. p* : p peut apparaître zéro, une ou plusieurs fois dans le contenu d'une instance p+ : p peut apparaître une ou plusieurs fois p? : p peut apparaître zéro ou une fois

21 D.U. 2003-0421 Exemple simple Livre.dtd. <!ELEMENT auteur (#PCDATA) s1.xml <!DOCTYPE livre SYSTEM 'livre.dtd' [ ]> &ionesco; s1.xsl

22 D.U. 2003-0422 Modèle de contenu éléments (2/2) Exemples <!ELEMENT chapitre ( titre, intro?, section+ ) > <!ELEMENT section ( titre-section, texte-section ) >

23 D.U. 2003-0423 Modèle de contenu données La présence de données dans le contenu d'un élément est spécifiée par le mot-clé #PCDATA Exemple

24 D.U. 2003-0424 Modèle de contenu mixte Ce modèle permet de définir des modèles de contenu autorisant de mêler données et éléments Forme du modèle (#PCDATA | nom 1 | …|nom n )* Exemples de déclarations <!ELEMENT p (#PCDATA | em | exposant | indice | renvoi)* > Exemple d'utilisation un paragraphe peut contenir du texte mis en évidence ou en exposant

25 D.U. 2003-0425 Modèle de contenu libre (1/2) Un élément peut être défini comme ayant un contenu quelconque, sous réserve que ce contenu respecte les règles générales du langage XML. Exemple Pour que le contenu d'un élément de modèle de contenu libre soit valide, il faut que, s'il contient des éléments, ceux-ci soient déclarés dans la DTD

26 D.U. 2003-0426 Modèle de contenu libre (2/2) Utilité: ce modèle de contenu est particulièrement utile lors de la création d'un DTD complexe Exemple

27 Saint Pétaouchnoque, Le 30 nivose 2004 Editions Duschmol, 12 rue Schmurz YT123 Rapis WindStar 2000 Les rosières en buget AB562 Saint Pétaouchnoque Tel: 012133564 Fax: 879765426 Objet: ben quoi? Monsieur, Bla bla bli, bli blo bla, kkkk vhlg vckjdhklbg fdskjbvhv feje slc ifehfe fhckh c jeflccj n khef iheznf jùkvbc lkhdklvn v Veuillez agréer patati patata vachement sincères. signature Pied de page...... Si lettre alors enfants Si entete alors … Si corps alors enfants para Si para alors Police new roman, taille 12, décaler première ligne Si … alors … Principe de fonctionnement des feuilles de style

28 D.U. 2003-0428 CSS et XSL <!-- A:link{ COLOR: #B90000;TEXT-DECORATION: none} A:visited{COLOR: #B90000; TEXT-DECORATION: none} A:active{COLOR: #B90000;TEXT-DECORATION: none}.textredcenter { FONT-FAMILY: Verdana, Helvetica, arial, Geneva, SansSerif;FONT-SIZE: 11px;LINE-HEIGHT: 14px;TEXT- ALIGN: center;COLOR: #B90000;font-style: normal; font-weight: normal} #layerinfo { position:absolute; height:235px; left:10px;top: 80px; z-index:10 } AUTEUR { FONT-FAMILY: Verdana, Helvetica, arial, Geneva, SansSerif;FONT-SIZE: 11px;. XSL, règles: (extrait de s3.xsl ) <xsl:template mode='sommaire' match='chapitre'> -

29 D.U. 2003-0429 XML généralise de HTML HTML Hypertext Markup Language. Un ensemble prédéfini et limité de balises, défini par une norme (HTML 2.0, 3.2, 4.0). Ces balises ont des sémantiques variées: –h1,.., h6, title, address, … donnent des indications structurelles –center, hr, b, i, big, small,… ne servent qu'à décrire une mise en page. XSL permet de modifier lordre daffichage

30 D.U. 2003-0430 Transformation de documents Le Web présente de multiples cas de transformation –Formatage –Réutilisation de document –Adaptation aux appareils de présentation –Conversion de format, par exemple XML vers HTML Trois approches –Des programmes utilisant le DOM –Les feuilles de transformation XSLT –Le langage de requêtes XQuery

31 D.U. 2003-0431 XSLT Langage de transformation « le Perl de XML » Une feuille de transformation XSLT contient un ensemble de règles pattern/template Pattern –Contexte structurel dans l'arbre source –Expression XPath Template –Un fragment du résultat à produire pour le pattern correspondant Principe –Quand le pattern est reconnu dans le document source, le template correspondant est engendré dans le document résultat

32 D.U. 2003-0432 XQuery « le SQL de XML » Un modèle de données pour les documents XML Un ensemble d'opérateurs sur ce modèle (algèbre) Un langage de requête fondé sur ces opérateurs (syntaxe) Les requêtes XQuery –Peuvent sélectionner des documents entiers ou des sous-arbres qui répondent à la requête –Peuvent construire des documents nouveaux fondés sur ce qui est sélectionné

33 D.U. 2003-0433 Tree-automata Logical definability on trees Tree grammar Regular expression A DTD is a special tree regular expression. A parser (Xerces for example) is a special tree automaton. A query language is a formal language on classes of structured trees. Monadic Second-Order Logic captures the regular trees. Open problem: robustness, typing (schemas) ….. Foundations of XML

34 D.U. 2003-0434 Tree-automata Logical definability on trees Tree grammar Regular expression Tree properties r(a,b(a,b(a,b(a,b(a,b(a,b)....)r(a(a,b(a,b(a(a,b),b)....),b)

35 D.U. 2003-0435 (q0, q0) q1 (q0,q1) q1 Tree automata q0 q1 q0 q1 q2 (q1,q1) q2 (q1,q0) q2 (q2,-) q2 (-,q2) q2

36 D.U. 2003-0436 Logical definability on a class K of trees Tree properties Equivalence of : Automata definable Monadic Second-order Regular

37 D.U. 2003-0437 Conclusion XML : standard pour les documents WEB Manipulation darbres réguliers –DTD=Automate=Expression régulière. Arbres: –Les arbres réguliers sont testables –On peut les corriger et fonder une notion de valeur relative.


Télécharger ppt "D.U. 2003-041 Introduction à XML Université Paris II & LRI Michel de Rougemont 1.Introduction à XML 2.DTD 3.XSL : style."

Présentations similaires


Annonces Google