270 likes | 431 Views
Presentatie XML. Marc de Graauw 2 maart 2000. Presentatie XML. Wat is XML? Waarom XML? Toepassingen van XML. XML nu. State of the art, toekomst. Wat is XML?. Extensible Markup Language, v 1.0 World Wide Web Consortium (W3C) Recommendation 10 februari 1998 Extensible: uitbreidbaar
E N D
Presentatie XML Marc de Graauw 2 maart 2000 (c) Marc de Graauw 2000
Presentatie XML • Wat is XML? • Waarom XML? Toepassingen van XML. • XML nu. State of the art, toekomst. (c) Marc de Graauw 2000
Wat is XML? • Extensible Markup Language, v 1.0 • World Wide Web Consortium (W3C) Recommendation 10 februari 1998 • Extensible: uitbreidbaar • Markup Language: opmaaktaal (c) Marc de Graauw 2000
Wat is XML? • XML is een opmaaktaal voor Internet • XML is een volgende stap na HTML • HTML en XML zijn afgeleid van SGML • SGML: uitgevers, gestructureerde complexe documenten • XML is “versimpeld” SGML (c) Marc de Graauw 2000
HTML - een voorbeeld <HTML> <HEAD> <TITLE>Marc de Graauw</TITLE> </HEAD> <BODY> <H1>Marc de Graauw</H1> <P>Geslacht: Man</P> <H2>Opleidingen</H2> <OL> <LI>VWO</LI> <LI>kandidaats Biologie</LI> <LI>doctoraal filosofie</LI> </OL> </BODY> </HTML> (c) Marc de Graauw 2000
XML - een voorbeeld <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE persoon SYSTEM "persoon.dtd"> <persoon> <persoonsgegevens geslacht="Man"> <achternaam> Graauw </achternaam> <voorvoegsel> de </voorvoegsel> <voornaam> Marc </voornaam> </persoonsgegevens> <opleiding> VWO </opleiding> <opleiding> kandidaats Biologie </opleiding> <opleiding> doctoraal filosofie </opleiding> </persoon> (c) Marc de Graauw 2000
Document Type Definition <!ELEMENT persoon (persoonsgegevens , opleiding* )> <!ELEMENT persoonsgegevens (achternaam , voorvoegsel? , voornaam )> <!ATTLIST persoonsgegevens geslacht CDATA #REQUIRED > <!ELEMENT achternaam (#PCDATA )> <!ELEMENT voorvoegsel (#PCDATA )> <!ELEMENT voornaam (#PCDATA )> <!ELEMENT opleiding (#PCDATA )> (c) Marc de Graauw 2000
XML en DTD • XML is gestructureerd document • <begintag>inhoud<eindtag> • elementen, attributen, tekst • DTD beschrijft de structuur van een XML-document • welke elementen en attributen zijn toegestaan • welke inhoud is toegestaan • validatieregels (volgorde, optionaliteit et cetera) • met DTD kan XML-document gevalideerd worden (c) Marc de Graauw 2000
XML versus HTML • HTML kent vaste set elementen • <P>, <H1>, <H2>, <LI> • XML is uitbreidbaar • in DTD wordt structuur beschreven • in XML zit “kennis” over betekenis • <voornaam>Marc</voornaam> • <bedrag valuta=“EUR”>10000</bedrag> • XHTML: HTML wordt XML-dialect (c) Marc de Graauw 2000
XML hulpmiddelen • parser • valideert XML-source a.h.v. DTD • gedrag vastgelegd in XML-specificatie • browser • laat XML zien (IE5 ondersteunt groot deel XML) • valideert XML-source m.b.v. parser • geeft elementen door aan b.v. Javascript • editors • schrijven van valide XML o.b.v. DTD (c) Marc de Graauw 2000
W3C Recommendations • XML versie 1.0 • DOM: Document Object Model • stelt XML document beschikbaar aan programmeertaal • gedrag is vastgelegd in W3C Recommendation • geen vendor lock-in: DOM is gelijk bij Microsoft, IBM, etc. • Namespaces • XML Schema • XSL: Extensible Stylesheet Language (c) Marc de Graauw 2000
XML Schema • beschrijft structuur van XML bestand • vergelijkbaar met DTD • maar: is zelf XML bestand • krachtiger: datatypes, validatie, hergebruik • nu: W3C Working Draft (c) Marc de Graauw 2000
Waarom XML?Toepassingen van XML • stylesheets, views op een XML-document • integratie data en document • XML, mens en applicatie • XML en EDI (c) Marc de Graauw 2000
Stylesheets 1 • hoe laat de browser XML zien? • 1) standaardoplossing in IE5: boomstructuur • 2) zelf stylesheet maken • stylesheet beschrijft hoe XML weergegeven moet worden • twee mogelijkheden: • Cascading Style Sheets (CSS, ook in HTML) • Extensible Stylesheet Language (XSL) (c) Marc de Graauw 2000
XML, DTD en stylesheet auteur_dezes.xml ... <?xml:stylesheet href="http://...auteur.xsl" ...> <!DOCTYPE auteur SYSTEM "http://...auteur.dtd"> ... <naam>Marc de Graauw</naam> ... auteur.dtd ... <!ELEMENT naam (#PCDATA)> ... auteur.xsl ... naam {font-size:16pt;} ... (c) Marc de Graauw 2000
Stylesheets 2 • stylesheet doet twee dingen • 1) conversie • XML XML • XML HTML • XML ASCII • XML EDIFACT • 2) opmaak (bij XML XML) • WWW • CDROM • hardcopy (c) Marc de Graauw 2000
Data en document • documenten • krant, boek, webpagina • structuur: hoofdstuk, paragraaf, plaatje • opmaak belangrijk • tekstverwerker, DTP, WWW • data • formulier, tabel, kaartenbak • structuur: veld, record, rij, kolom • database, spreadsheet • XML verenigt kracht document en data! (c) Marc de Graauw 2000
XML, mensen en applicaties 1 <?xml version=“1.0”?> <achternaam> Graauw </achternaam> <voorvoegsel> de </voorvoegsel> <voornaam> Marc </voornaam XSL DOM applicatie database (c) Marc de Graauw 2000
XML, mensen en applicaties 2 DTD <?xml version=“1.0”?> <achternaam> Graauw </achternaam> <voorvoegsel> de </voorvoegsel> <voornaam> Marc </voornaam XML editor database applicatie DOM (c) Marc de Graauw 2000
XML, mensen en applicaties 3 voorraad- database verkoop- database bestelling DTD applicatie browser XML editor applicatie XML prijslijst XML bestelling (c) Marc de Graauw 2000
XML en EDI 1 • uitwisseling tussen applicaties • platte bestanden (ASCII) • EDIFACT, X12 • geprogrammeerde applicatie-interface (RPC) • platte bestanden • structuur is te simpel • aanvullende regels nodig (begindatum < einddatum, geslacht = M of V) • deze regels worden veelal geprogrammeerd bij zender én ontvanger (c) Marc de Graauw 2000
XML en EDI 2 • EDI traditioneel • rijke structuur • dure ISP, dure software • complex • volume nodig voor ROI • redelijk succesvol bij grote bedrijven, niet bij kleinere • RPC • maatwerkoplossing per interface • programmeerwerk • is complex over bedrijfsgrenzen heen (c) Marc de Graauw 2000
XML en EDI 3 • XML voor EDI • veel (goedkope) tools • sterk gekoppeld aan Internet • rijke structuur • presentatie naar mensen toe eenvoudig • XML heeft momentum (c) Marc de Graauw 2000
XML nu, state of the art • Recommendations • XML 1.0 • DOM • Namespaces • XSLT (transformaties) • Working Drafts • XML Schema (voorjaar 2000) • XSL Formatting Language (c) Marc de Graauw 2000
Ondersteuning software • parsers • browsers: Internet Explorer 5.0 • DTD editors • XML editors • middleware • databaseinterfaces • native XML databases (c) Marc de Graauw 2000
Actieve partijen • Microsoft: XML staat centraal • Biztalk: repository, standaardformaat, infrastructuur • Internet Explorer 5.0: XML, DOM, deel XML Schema en deel XSLT • Oracle • XML als standaard dataformaat “buiten” de database • tools voor interfacing Oracle XML, XML Oracle • alle grote partijen • IBM, SUN, HP et cetera (c) Marc de Graauw 2000
bijlage: XML op het Internet (c) Marc de Graauw 2000