(c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

27
(c) Marc de Graauw 2000 1 Presentatie XML Marc de Graauw 2 maart 2000

Transcript of (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

Page 1: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 1

Presentatie XML

Marc de Graauw

2 maart 2000

Page 2: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 2

Presentatie XML

• Wat is XML?

• Waarom XML? Toepassingen van XML.

• XML nu. State of the art, toekomst.

Page 3: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 3

Wat is XML?

• Extensible Markup Language, v 1.0

• World Wide Web Consortium (W3C) Recommendation 10 februari 1998

• Extensible: uitbreidbaar

• Markup Language: opmaaktaal

Page 4: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 4

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

Page 5: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 5

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>

Page 6: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 6

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>

Page 7: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 7

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 )>

Page 8: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 8

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

Page 9: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 9

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

Page 10: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 10

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

Page 11: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 11

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

Page 12: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 12

XML Schema

• beschrijft structuur van XML bestand

• vergelijkbaar met DTD

• maar: is zelf XML bestand

• krachtiger: datatypes, validatie, hergebruik

• nu: W3C Working Draft

Page 13: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 13

Waarom XML?Toepassingen van XML

• stylesheets, views op een XML-document

• integratie data en document

• XML, mens en applicatie

• XML en EDI

Page 14: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 14

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)

Page 15: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 15

XML, DTD en stylesheet

auteur.dtd...<!ELEMENT naam (#PCDATA)>...

auteur_dezes.xml...<?xml:stylesheet href="http://...auteur.xsl" ...><!DOCTYPE auteur SYSTEM "http://...auteur.dtd"> ...<naam>Marc de Graauw</naam>...

auteur.xsl...naam {font-size:16pt;}...

Page 16: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 16

Stylesheets 2

• stylesheet doet twee dingen• 1) conversie

– XML XML– XML HTML– XML ASCII– XML EDIFACT

• 2) opmaak (bij XML XML)– WWW– CDROM– hardcopy

Page 17: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 17

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!

Page 18: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 18

XML, mensen en applicaties 1

<?xml version=“1.0”?><achternaam>Graauw </achternaam><voorvoegsel> de </voorvoegsel><voornaam> Marc </voornaam

XSL

DOM applicatie database

Page 19: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 19

XML, mensen en applicaties 2

<?xml version=“1.0”?><achternaam>Graauw </achternaam><voorvoegsel> de </voorvoegsel><voornaam> Marc </voornaam

DOMapplicatiedatabase

DTD

XML editor

Page 20: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 20

XML, mensen en applicaties 3

verkoop-database

XMLprijslijst

applicatie browser XML editor

XMLbestelling

voorraad-database

applicatie

bestellingDTD

Page 21: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 21

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

Page 22: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 22

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

Page 23: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 23

XML en EDI 3

• XML voor EDI– veel (goedkope) tools– sterk gekoppeld aan Internet– rijke structuur– presentatie naar mensen toe eenvoudig– XML heeft momentum

Page 24: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 24

XML nu, state of the art

• Recommendations– XML 1.0– DOM– Namespaces– XSLT (transformaties)

• Working Drafts– XML Schema (voorjaar 2000)– XSL Formatting Language

Page 25: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 25

Ondersteuning software

• parsers

• browsers: Internet Explorer 5.0

• DTD editors

• XML editors

• middleware

• databaseinterfaces

• native XML databases

Page 26: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 26

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

Page 27: (c) Marc de Graauw 20001 Presentatie XML Marc de Graauw 2 maart 2000.

(c) Marc de Graauw 2000 27

bijlage: XML op het Internethttp://www.w3.org/ Dé bron voor materiaal over XML is het World Wide Web

Consortium. De site van het W3C heeft de Recommendations voorXML 1.0, DOM, Namespaces en Associating Stylesheets, en deWorking Drafts voor onder andere XML Schema en XSL. Diepgaand,niet als inleiding bedoeld.

http://www.xml.com/ Een online magazine, met boeiende inleidende artikelen vanautoriteiten en veel verwijzingen naar materiaal over XML. De moeitewaard als uitgebreide inleiding.

http://www.xmlsoftware.com/ Een overzicht van beschikbare software op het gebied van XML.Vooral de gigantische groei van beschikbare software wordt duidelijk.Veel producten zijn trouwens vrij verkrijgbaar.

http://msdn.microsoft.com/xml/ Microsoft heeft een aantal goede online cursussen over XML, XSLen XML Schema. Uitstekende inleiding voor wie de basics wil wetenover de technieken.

http://biztalk.org/ Het BizTalk initiatief van Microsoft is een poging om een bibliotheekvan XML-standaarden op te bouwen. BizTalk is ook de naam vaneen set applicaties voor XML en E-Commerce die Microsoftaangekondigd heeft.

http://www.marketsite.net/ Een van de twee homepages van Commerce One, een van deleidende partijen in de XML-ontwikkelingen, die met CBL 2.0 een vrijbeschikbare XML-library gepubliceerd heeft.

http://www.sgml-ug.nl/ De homepage van de Nederlandse SGML-XML User Group, metonder andere een agenda met Nederlandse en internationaleactiviteiten op het gebied van XML.