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

CSI 3125, Automne 2001 Une introduction au XML * par Stan Szpakowicz, based sur les sources et inspirations suivantes: Erik T. Ray, "Learning XML", 1 st.

Présentations similaires


Présentation au sujet: "CSI 3125, Automne 2001 Une introduction au XML * par Stan Szpakowicz, based sur les sources et inspirations suivantes: Erik T. Ray, "Learning XML", 1 st."— Transcription de la présentation:

1 CSI 3125, Automne 2001 Une introduction au XML * par Stan Szpakowicz, based sur les sources et inspirations suivantes: Erik T. Ray, "Learning XML", 1 st ed., OReilly Robert Eckstein with Michel Casabianca, "XML Pocket Reference", 2 nd ed., OReilly the World-Wide Webthousands of places Go O'Reilly! ---------------- * Et a plein dautres acronymes

2 CSI 3525 XML, page 2 GML et SGML Tout a commence avec le GMLGeneralized Markup Language, invente en 1969 par Goldfarb, Mosher et Lorie dIBM afin de permettre aux sous-processus dedition de texte, de mise en page et dextraction dinformation le partage de documents. En 1978-1986 GML a ete substantivement elargi, puis standardise par ANSI et ISO en tant que SGMLStandard Generalized Markup Language. http://www.sgmlsource.com/history/sgmlhist.htm http://www.oasis-open.org/cover/general.html

3 CSI 3525 XML, page 3 Annotations en SGML http://www.arbortext.com/data/getting_started_with_SGML/getting_started_with_sgml.html

4 CSI 3525 XML, page 4 HTML SGML nest pas seulement un langage dannotation (markup language). Cest un standard pour la creation de langages dannotation. HTML (HyperText Markup Language) est lun de ces langages. HTML a eu un debut modeste. En 1993, Tim Berners-Lee a base son premier systeme de browsing et d authoring pour le Web avec un tout petit nombre de markup tags. La version presente de HTML (version 4.01) a ete grandement elargie, mais HTML est reste un seul langage. Les standards de HTML sont maintenus par W3C (the World-Wide Web Consortium): http://www.w3.org/MarkUp/ http://www.w3.org/TR/REC-html40/

5 CSI 3525 XML, page 5 XML XML (Extensible Markup Language) a ete developpe en 1996, et standardise par W3C en 1998. Cest un sous-ensemble du SGML. Le XML fait partie dune grande (et grandissante) famille de langages interconnectes et cooperatifs: DTD, XSL, XSTL, CSS, XPath, XPointers, XLinks, XML Schema... Et ce nest que le debut!. [Mais que serait la vie dun programmateur sans acronymes?] http://www.w3.org/XML/

6 CSI 3525 XML, page 6 XML en 7 points 1. XML est une methode qui permet de mettre des donnees structurees dans un fichier de texte. 2. XML ressemble a lHTML mais ce nest pas de lHTML. 3. XML est du texte, mais il na pas ete concu pour etre lu 4. XML est une famille de technologies 5. XML engendre de tres grand fichiers, mais ce nest pas un probleme. 6. XML est nouveau, mais pas si nouveau. 7. XML est gratuit, plateforme-independent et bien supporte. http://www.w3.org/XML/1999/XML-in-10-points

7 CSI 3525 XML, page 7 XHTML Lappatition du XML a incite la re-reflexion du HTML. Le nouveau "best thing since sliced bread" est le XHTML 1.0: The Extensible HyperText Markup Language, Une Reformulation du HTML 4 en XML 1.0. Le nouveau document (en progres) du W3C (2 nd ed.) du standard XHTML 1.0 est appearu le 4 Oct., 2001. Cest donc tout nouveau! http://www.w3.org/TR/2001/WD-xhtml1-20011004/

8 CSI 3525 XML, page 8 Mais quest ce que le HTML?

9 CSI 3525 XML, page 9 La structure des documents HTML head elements body elements A quick checklist text, images, multimedia resource identifiers, URLs element placement fonts, colours paragraphs, divisors tables forms scripts, applets frames document type, title, content descriptors,... OPTIONALOPTIONAL

10 CSI 3525 XML, page 10 Liens en HTML Le pouvoir du HTML reside, naturellement, dans les liens dHyperText. Un click sur un lien est une requete pour un contenu specifique: une chaine, une image, un nouveau document, un endroit spcial dans un document. Il y a deux liens ici: une ancre (pointant a une location sur le Web) et laddresse dune image (pointant a un fichier local). XML generalise les liensvoir un peu plus loin.

11 CSI 3525 XML, page 11 HTML de plus pres (1) CSI 3125, Fall 2001: Concepts of Programming Languages <body background="gifs/3125.gif" bgcolor=#eeeeee text=#000066 link=#0066ff vlink=#9900cc alink=#ff0000> Javascript

12 CSI 3525 XML, page 12 HTML de plus pres (2) Welcome to the CSI 3125/3125B Web site! <TABLE BORDER=0 CELLSPACING=10 CELLPADDING=0 WIDTH=352> <img src="gifs/news.gif" width=136 height=34 border=0 alt="[What's new?]"> eight buttons start here

13 CSI 3525 XML, page 13 HTML de plus pres (3) <img src="gifs/forum.gif" width=136 height=34 border=0 alt="[Discussion forum]"> <img src="gifs/syllabus.gif" width=136 height=34 border=0 alt="[The syllabus]"> <img src="gifs/handouts.gif" width=136 height=34 border=0 alt="[The handouts]"> and two other rows of buttons

14 CSI 3525 XML, page 14 HTML de plus pres (4) Instructors' email addresses: <a href="mailto:szpak@site.uottawa.ca">szpak@site.uottawa.ca <img src="gifs/rtarrow.gif" align=bottom border=0 alt="To "> <img src="gifs/home.gif" border=0 align=bottom alt="my home page"> <a href="mailto:awilliam@site.uottawa.ca">awilliam@site.uottawa. ca

15 CSI 3525 XML, page 15 HTML de plus pres (5) Updated on September 13, 2001 <form method=get action="http://www.google.com/search"> <img src="gifs/Logo_25.gif" border="0" alt="google"> <input type=text name=q size=25 maxlength=256 value=""> Google

16 CSI 3525 XML, page 16 HTML de plus pres (6) <img src="gifs/macspin.gif" width=176 height=40 alt="[A Spinning Apple]"> <!-- <applet align=bottom code="gifs/rotate.class" height="72" width="72"> --> commented out

17 CSI 3525 XML, page 17 De retour au XML… Le HTML melange, en un langage, deux des aspects principaux du SGML: lannotation procedurale dun document (sa structure) et son annotation descriptive (sa presentation). Par exemple, et sont des elements de structure, alors que et decrivent le format. Dans le monde du XML, les deux aspects ont ete de nouveau separes. Un DTD (Document Type Definition) definie le langage dannotation, et un document dXML valide doit etre de ce type. DTD existe depuis le debut du SGML. XML Schema est une nouvelle alternative, pas encore standardisee.

18 CSI 3525 XML, page 18 Un tout petit document en XML... Revolver, top two The Beatles Eleanor Rigby 2:45 For No One formatting (discussed later) structure cd.xml

19 CSI 3525 XML, page 19... son DTD... <!ATTLIST cd type (single | regular) #REQUIRED> cd.dtd

20 CSI 3525 XML, page 20... Et sa validation Il y a trois etapes toutes simples pour valider un document XML: Log in to any Linux machine Have the document and its DTD in the same directory. Invoke the XML validator xmlvalid. {rebel1}szpak(1)$ ls cd.* cd.dtd cd.xml {rebel1}szpak(2)$ xmlvalid cd.xml cd.xml is valid (Vous aussi, vous devrez valider un ou deux documents de XML )

21 CSI 3525 XML, page 21 Simple statistiques Vous pouvez aussi voir un certain nombre d informations sur un document XML valide. Le program dbstat (en Perl et poste sur le site Web du cours) le fait pour vous: Element frequency: 1 2 1 2 % dbstat cd.xml Node frequency: 2 PI nodes 8 element nodes 0 comment nodes 2 attribute nodes 19 text nodes 0 CDMS nodes 32 total nodes

22 CSI 3525 XML, page 22 Elements et attributs Container elements content For No One Empty elements

23 CSI 3525 XML, page 23 Petits Elements de la Syntaxe du DTD Elements of cd in this order, with one or more track. Parsed-character data: entity references resolved. time is optional. <!ATTLIST cd type (single | regular) #REQUIRED> One of these two values must be present. Character data, default is Paul. An identifier (more or less), optional, no default.

24 CSI 3525 XML, page 24 Le XML est plus strict que le HTML XML est sensible aux majuscule/minuscules. Les valeurs dattributs doivent etre entre guillemets. Un element a contenu (non vide) doivent avoir un tag douverture et de fermeture. Un element vide doit avoir une bar oblique finale. Les tags doivent etre correctement encapsules (voir la page suivante) Dans le contenu dun element, les espaces sont preserves. Un document XML est un peu comme un document HTML mais avec des tags sur-mesure (et bien plus, comme vous allez le voir ci-dessous), mais souvenez-vous du fait que le XML est beaucoup plus controlle que le HTML.

25 CSI 3525 XML, page 25 Un document est un arbre Revolver, top two The Beatles Eleanor Rigby 2:45 For No One

26 CSI 3525 XML, page 26 Entites en HTML HTML nous permet de referer a des caracteres qui napparaissent pas sur le clavier en utilisant la convention &. Par example: non-breaking space ëë aa àà éé Ceci a ete grandement etendu en XML. Une entite est une cellule pour contenu; une entite peut denoter nimporte quoi: meme un fragment dannotation. Les entites sont resolues ou remplaces de la meme facon que les macros.

27 CSI 3525 XML, page 27 Entites en XML (1) Nous avons des entites generales (ou bien definies localement, ou bien externes et disponibles publiquement) et des entites parametriques utilisees dans les DTDs. Nous avons aussi des entites de caracteres predefinies, dont 5 necessaires pour eviter la confusion avec la syntaxe dannotation: && &apos;' >> << ""

28 CSI 3525 XML, page 28 Entites en XML (2) <!ATTLIST cd type (single | regular) #REQUIRED> cd3.dtd parameter entity general entity references

29 CSI 3525 XML, page 29 Entites en XML (3) <!DOCTYPE cd SYSTEM "cd3.dtd" [ ] > Revolver, top two &bestever; Eleanor Rigby 2:45 &favourite; cd3.xml local entity reference

30 CSI 3525 XML, page 30 La philosophie du stylesheet La presentation des documents XML se fait de maniere elegante et generale: par transformation de structure. Un stylesheet definie des templates qui peuvent transformer les elements dun document XML valide en une autre structure. Par example, en HTML. Laccess aux elements est facilite par XPath, un langage riche qui nous permet le deplacement a linterieur dun document et lapplication de nombreuses conditions (malheureusement, nous nauront pas le temps de voir le Xpath dans ce cours. )

31 CSI 3525 XML, page 31 Un simple stylesheet (1) <xsl:stylesheet id="cds" version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> cd.xls...... ------ This is an XML document!

32 CSI 3525 XML, page 32 Un simple stylesheet (2).... ----

33 CSI 3525 XML, page 33 Un simple stylesheet (3)... ---

34 CSI 3525 XML, page 34 Liens en XML, sur un exemple <elementname xlink:type = "simple" xlink:href = "target" xlink:show = "showhow" xlink:actuate = "showwhen" >some content target is any local or public resource. showhow is new, embed or replace. (In HTML: open a new window, embed a graphic, follow a link in the same window.) showwhen is onLoad or onRequest. /> if element empty

35 CSI 3525 XML, page 35 Un plus grand exemple: checkbook Cet exemple, ecrit par Erik T. Ray ("Learning XML"), se trouve sur le Web dans les fichiers: checkbook.dtd checkbook.xml checkbook.xsl Visiter http://www.site.uottawa.ca/~szpak/teaching/ 3125/handouts/other/perl_xml.html Et amusez vous bien. Et maintenant...

36 CSI 3525 XML, page 36 Dans un autre cours XML Schema (encore plus de controle sur le format des donnees quavec les DTDs) CSS (Cascading Style Sheetsplus ancien mais utile) XSLBeaucoup de details Namespaces XSLT (Extensible Style Language for Transformations) XPath (trouver des objects dans des documents) XLink, XPointer (liens entre documents) XML tools (parsers, verificateurs de syntaxe, validateurs, processeurs darbres, etc.) Standards, documents publiques, ressources sur le Web


Télécharger ppt "CSI 3125, Automne 2001 Une introduction au XML * par Stan Szpakowicz, based sur les sources et inspirations suivantes: Erik T. Ray, "Learning XML", 1 st."

Présentations similaires


Annonces Google