Dataudveksling og XML
description
Transcript of Dataudveksling og XML
Dataudveksling og XML
RHS – Informationsteknologi 2
η επικοινωνία είναι δύσκολη
• Udveksling af information er stort set det, IT (Informationsteknologi) drejer sig om!
• Mængden af information der udveksles, stiger eksplosivt
• Hvor meget information udveksler du på én dag?
RHS – Informationsteknologi 3
Hvad udveksler vi?• Alt muligt!• Efter Internettes fremkomst
er mængden af udvekslet data blevet enorm
• Hvor meget data rummer Internettet…?
• Ingen ved det… Men det anslås, at det hvert år genereres 100 milliarder milliarder bytes!
Video
Billeder
Lyd
Dokumenter
SMS
RHS – Informationsteknologi 4
Hvad er dit forbrug?
• Hvor mange e-mails/dag?
• Hvor mange SMS/dag?
• Hvor mange MMS/dag?
• Hvor meget download/dag?
• Hvor meget kopiering/dag?
• Hvor meget surf/dag?
RHS – Informationsteknologi 5
Hvad er information egentlig?
• Information er data…
• Lidt mere detajleret, information er:
– Data selv
– Data om data
• Det sidste kaldes også for meta-data
Arrrhhh, sådan noget forbandet kommunist-sludder!!!
RHS – Informationsteknologi 6
Meta-data???
• ”Data om data” lyder lidt tåget…
• Forestil dig, at en person kommer hen til dig og siger ”44” – og ikke andet
• Hvad i alverden mener han!?
• Vedkommende har givet dig et stykke data, men har ikke fortalt meningen med data – han har ikke givet dig ”data om data”
RHS – Informationsteknologi 7
Meta-data???
• Data om data – meningen med data.
• Personen burde i stedet have sagt ”Mit skonummer er 44”
• ”44”: er data
• ”Mit skonummer er”: er meta-data
• Meta-data giver os en ”kontekst” for selve data, så vi kan forstå meningen med det.
RHS – Informationsteknologi 8
Meta-data i sproget - 1
• Vi bruger formen med data og meta-data hele tiden i vores sprog
• ”Skoene koster 800 kroner”
• ”Min hund hedder Vagn”
• ”Jonas’ bil er en Opel Kadett”
• Data
• Meta-data
RHS – Informationsteknologi 9
Meta-data i sproget - 2
• Men ofte er vi meget upræcise og indforståede i vores formuleringer
• ”Skoene koster 800 kroner” – hvilke sko?
• ”Min hund hedder Vagn” – ”min”, men hvem er du selv?
• ”Jonas’ bil er en Opel Kadett” – hvem er Jonas, og hvilken type Opel Kadett er det?
RHS – Informationsteknologi 10
Computerer kan ikke lide indforståethed…
Øhmm, start lige det der, øhhh, program-halløj til at lave regn-skab i, eller noget…
Huh!?!?”Syntax error detected at line 3, insufficient memory”
RHS – Informationsteknologi 11
Præcis kommunikation
• Hvordan kan vi fortælle en computer – eller rettere, et program til en computer – noget, så den kan regne meningen af det vi siger ud?
• Prøv at give et bud på, hvordan du entydigt kan fortælle en computer, hvilken adresse du bor på – du må kun bruge almindelig tekst…
RHS – Informationsteknologi 12
Markeringssprog (markup language)
• Hvis vi skal kunne fortælle en computer noget meningsfuldt, skal computeren have et vist ordforråd.
• For adresse kunne det være• Postnummer• By• Vejnavn• Husnummer
RHS – Informationsteknologi 13
Markeringssprog
• Hvis computeren har et vist ordforråd, kan vi sende meningsfyldt data (data + metadata) til den.
• Vi skal dog også blive enige om en syntaks for data, så computeren kan forstå data.
• Syntaks: Den sproglige opbygning, som data har
• Vi kan også bruge termen ”format”
RHS – Informationsteknologi 14
Markeringssprog
• I et markeringssprog anvender man en ”markering” til at fortælle noget om data selv.
• Eksempel; hvis jeg vil have et ord i en sætning til at blive skrevet med fed skrift, kunne jeg f.eks markere dette ved at skrive:Det FED(andet) ord er med fed skrift
• Markeringen FED(…) fortæller, at det inden i parentesen skal skrives med fed
RHS – Informationsteknologi 15
Typer af markeringssprog
• Mange programmer definerer sit eget, ”lukkede” markeringssprog, som ikke uden videre kan bruges af andre.
• Eksempel er (lidt ældre versioner af) Office-programmer; et word-dokument kan ikke bare åbnes med Notepad.
• Word-dokument er et eksempel på et binært format, hvor man bruger sin egen standard for at gemme meta-data.
RHS – Informationsteknologi 16
Enter the XML…
• Andre typer markeringssprog er mere ”åbne”, og kan nemmere benyttes af andre
• Meget stor fordel at have en standard for åbne markeringssprog– Kun en standard at lære (og følge)– Programmer kan meget nemmere kommunikere, selv
på tværs af ”platforme” (Windows, Mac, Linux,…)
• Den p.t. fremherskende standard for (åbne) markeringssprog er XML
RHS – Informationsteknologi 17
What is XML…?
• eXtensible
• Markup
• LanguageLær det!
RHS – Informationsteknologi 18
eXtensible Markup Language
• XML er – overordnet set – en meget simpel standard for definition af data og meta-data.
• XML er ikke ”født” med noget ordforråd som sådan – er ”bare” en beskrivelse af syntaks for data og meta-data
• Man kan selv definere sit ordforråd – men afsenderen skal være enig med modtageren om, hvad de enkelte ord betyder
RHS – Informationsteknologi 19
At få et fælles ordforråd er ikke altid så let…
..og Fluks Drog Jeg Min Økse med Tvende
Ægge, og Kløvede Hans Pandebrask, så Marsken Vædedes og Tidsel samt
Sorturt Besudledes
Omfg lolz u r0x0r m8 – u shd l2p cs asap for pwnage
RHS – Informationsteknologi 20
Adresse som XML
<Adresse>
<Vejnavn> Skolevej </Vejnavn>
<Husnummer> 12 </Husnummer>
<Postnummer> 4000 </Postnummer>
<Bynavn> Roskilde </Bynavn>
</Adresse>
RHS – Informationsteknologi 21
Ej, hvor ser det tosset ud…
Nøj, Kylling, hvor ser det der ÆgsEmÆl altså mærkeligt ud…
BORKK!
Suk – det hedder XML, din ¤#&!!@* bamsegøglerklovn…
RHS – Informationsteknologi 22
Adresse som XML - igen<Adresse> <Vejnavn> Skolevej </Vejnavn> <Husnummer> 12 </Husnummer> <Postnummer> 4000 </Postnummer> <Bynavn> Roskilde </Bynavn></Adresse>
Vi har:Data (det vi egentlig gerne vil fortælle)Meta-Data (meningen med det vi fortæller)Kontroltegn/Koder (for at skille data fra meta-data)
RHS – Informationsteknologi 23
Elementer i XML
• <noget> betyder: Nu begynder jeg på noget data af typen ”noget”
• </noget> betyder: Nu er jeg færdig med noget data af typen ”noget”
• Imellem <noget> og </noget>: her kommer selve data
• Selve data kan så have en simpel type, eller en mere sammensat type
RHS – Informationsteknologi 24
Dataloger elsker rekursion…
RHS – Informationsteknologi 25
Rekursion…?
• Rekursion betyder – løst sagt – at noget består af nogle dele, som selv kan være af samme type som helheden.
• I XML: En sammensat type kan bestå af dele, som selv er af en simpel type eller en sammensat type.
B.S. ville aldrig bruge ordet rekursion
RHS – Informationsteknologi 26
Adresse som XML – igen, igen<Adresse>
<Vejnavn> Skolevej </Vejnavn>
<Husnummer> 12 </Husnummer>
<Postnummer> 4000 </Postnummer>
<Bynavn> Roskilde </Bynavn>
</Adresse>
Adresse er en sammensat type: Består af Vejnavn, osv…
Postnummer er en simpel type: er bare et tal
RHS – Informationsteknologi 27
Person som XML<Person>
<Navn> Hans Jensen </Navn>
<Adresse>
<Vejnavn> Skolevej </Vejnavn>
<Husnummer> 12 </Husnummer>
<Postnummer> 4000 </Postnummer>
<Bynavn> Roskilde </Bynavn>
</Adresse>
</Person>
Person er en sammensat type: består af Navn og Adresse
Adresse er en sammensat type: Består af Vejnavn, osv…
RHS – Informationsteknologi 28
XML er hierakisk
• I XML beskrives ting i et hierarki: en ting (f.eks en Person) rummer dele (f.eks Navn, Adresse,…), som igen kan rumme ting, og så videre…
• Kan sammenlignes lidt med tabeller og felter i en database (hvis felter så selv kunne være tabeller)
RHS – Informationsteknologi 29
Øvelse i XML
• Prøv at beskrive din familie i XML• Du kan selv vælge det ordforråd du vil benytte• Tip; hvis flere elementer af samme type
forekommer, skrives de blot efter hinanden:<Familie>
<Familiemedlem> …</Familiemedlem>
<Familiemedlem> …</Familiemedlem>
…
</Familie>
RHS – Informationsteknologi 30
XML kontra HTML
• Hvad er HTML?• HyperText Markup Language• Dette er sproget, som langt de fleste web-sider
er skrevet i.• Hvis man laver en web-site i FrontPage, laver
FrontPage en masse HTML-kode for en• HTML kom før XML, men HTML er faktisk bare
en speciel type af XML…
RHS – Informationsteknologi 31
XML kontra HTML
• Hvad er så forskellen på HTML og XML?
• HTML bruges primært til at beskrive, hvordan data skal præsenteres.
• I HTML kan man f.eks skriveDet <b>andet</b> ord er med fed skrift
• Her betyder markeringen, at det mellem <b> og </b> skal skrives med fed (eng.: bold) skrift
XML, jeg vælger
deeeeej!
RHS – Informationsteknologi 32
XML kontra HTML
• Med andre ord – i HTML er der ingen information om meningen med data, kun information om præsentationen af data
Information om XML HTML
Selve data Ja Ja
Mening Ja Nej
Præsentation Nej Ja
RHS – Informationsteknologi 33
Hvem har spist min XML??
• Fint, jeg kan lave noget XML nu – men hvem skal jeg give det til…?
• Den som skal ”forbruge” det XML vi har lavet, skal– Forstå XML i det hele taget (syntaks)– Have et ordforråd, som gør det muligt at forstå
indholdet i vores XML– Men bemærk; modtageren behøver ikke have præcis
det samme ordforråd som os!
RHS – Informationsteknologi 34
Fordøjelse af XML
• Første trin i at fordøje noget modtaget XML, er at sende det gennem en parser
• Hvad er en parser? En stump program-kode, som laver det modtagne XML om til data inden i det modtagende program?
• Når modtageren modtager XML, er det jo bare et stykke tekst, derfor er dette første led i fordøjelsen nødvendigt
RHS – Informationsteknologi 35
Fordøjelse af XML
Afsender af XML
Noget XML…
Modtager af XML
XMLParser
Data, som modtageren
kan forståHer er data bare noget tekst ”Ahh, det var noget
XML der kom”, tænker parseren…
RHS – Informationsteknologi 36
XML ligger godt i maven…
• Parseren laver XML om til data, som modtageren kan forstå.
• Da XML er hierakisk, vil det data parseren laver have en tilsvarende hierakisk struktur
• Tænk på en hierakisk struktur som et slags ”træ”
Familie
Medlem Medlem Medlem
Navn Hobbyer Alder
Og så videre…
RHS – Informationsteknologi 37
Nu kommer der noget smart…
• Modtageren af vores XML kan nu løbe data igennem, og behandle de dele der er relevante for præcis denne modtager.
• Hvorfor er det smart? Fordi vi og modtageren kun behøver være enige om ordforrådet for netop denne del.
• Det er ikke forbudt at sende data til modtageren, som modtageren ikke ved hvad betyder…
RHS – Informationsteknologi 38
Nu kommer der noget smart…
Afsender af XML(ved alt muligt om personer)
Noget XML med persondata
Modtager af XML(vil gerne udregne
et gennemsnitfor alder)
Kunne f.eks være et offentligt register
Modtager ved kun at:1. Hver person har én alder2. Alder markeret med <alder>
RHS – Informationsteknologi 39
On a need-to-know basis
<person>
<navn>…</navn>
<adresse>…</adresse>
<alder>…</alder>
<børn>
<person>…</person>
<person>…<person>
</børn>
<job>…</job>
<hospitalshistorik>
<indlæggelse>…</indlæggelse>
</hospitalshistorik>
</person>
Afsender ved alt dette om en person
Modtager behøver kun kende <person> og <alder>
RHS – Informationsteknologi 40
Hvad er det smarte…?
• Det smarte er, at modtager og afsender ikke behøver vide særligt meget om hinanden– Afsender behøver ikke kende modtager– Mange modtagere kan bruge data fra samme
afsender, og bruge dem til forskellige formål– Afsender kan ændre på typen af data der afsendes,
uden at modtager skal bekymre sig om det
• Generelt anses det for en stor fordel mht udveksling af data, at systemerne er så ”løst koblede” som muligt
RHS – Informationsteknologi 41
En afsender, mange modtagere
Afsender af XML(ved alt muligt om personer)
System til alders-statistik
System til adresselister
System til analyse af hospitalsindlæggelser
System til (og så videre…)
XML
XML
XML
XML
Samme data sendes til alle
modtagere
RHS – Informationsteknologi 42
Præsentation af XML-data
• Hvis vi åbner en fil med XML-data i Internet Explorer, ser det nogenlunde sådan her ud:
• Men har vi ikke lige sagt, at XML ikke rummer oplysninger om præsentation af data…?
RHS – Informationsteknologi 43
Præsentation af XML-data
• XML beskriver ikke i sig selv, hvordan data skal præsenteres – måske skal det ikke præsenteres overhovedet!
• Der skal noget mere til…• Dette ”mere” er en samling regler for, hvordan
hver type element skal præsenteres• Sådan en samling regler beskrives ofte i et
sprog kaldet XSLT (eXtensible Stylesheet Language Transformations)
RHS – Informationsteknologi 44
Ingen panik!
• Vi skal ikke lære noget om XSLT – det er ret kompliceret…
• Hvad kan XSLT? Det kan trans-formere XML-data til en anden form, som specificeres ved hjælp af en samling regler.
• Denne ”anden form” kan være alt muligt, blandt andet HTML
RHS – Informationsteknologi 45
Løs kobling igen…
Information om
XML HTML XSLT XML + XSLT
Selve data Ja Ja Nej Ja
Mening Ja Nej Nej Ja
Præsentation Nej Ja Ja Ja
• Lad os udvide tabellen fra før med XSLT:
• Kombinationen af XML og XSLT giver os både mening og præsentation – men uafhængigt!
RHS – Informationsteknologi 46
<Vigtigt>
• I HTML kan vi for eksempel skrive en sætning på denne måde:
Brug <b>altid</b> sikkerhedsbriller!
• Altså har vi valgt, at vi benytter fed skrift (husk at <b> betyder bold (fed) i HTML) for at frem-hæve noget vigtigt…
• …men så har vi ”bundet” os til denne måde at fremhæve noget vigtigt på.
RHS – Informationsteknologi 47
Her er det vigtige
• I XML kan vi skrive samme sætning på denne måde:
Brug <vigtigt>altid</vigtigt> sikkerhedsbriller!
• Dette siger ikke noget om, hvordan vi vælger at noget vigtigt skal fremhæves
• I en XSLT kan vi så definere, at
<vigtigt> <b> eller <vigtigt> <i>
RHS – Informationsteknologi 48
</Vigtigt>
• Ved at skille data og præsentation ad, har vi meget større fleksibilitet med hensyn til, hvordan vi vil præsentere data
• På en meget simpel måde kan præsentation ændres radikalt.
• Leverandøren af data skal ikke bekymre sig om præsentationen af data
RHS – Informationsteknologi 49
En XML, mange XSLT
• En smart ting er således, at man ved hjælp af forskellige samlinger af regler (skrevet som XSLT) kan transformere samme XML-data til flere forskellige formater, alt efter formål
• Dette giver meget stor fleksi-bilitet i brugen af XML data til flere former for præsentation
RHS – Informationsteknologi 50
Eksempel: Facebook-data
• De data der vises på Facebook, ligger i en (meget stor) database.
• Når data for en person trækkes ud fra data-basen, skal det laves om (transformeres) til HTML, så det kan vises i en browser (f.eks Internet Explorer)
• Denne transformation kunne meget vel være lavet i XSLT
RHS – Informationsteknologi 51
Eksempel: Facebook-data
Database med Facebook-data
Data som XML
Data som HTML
ForespørgselTransformation
(XSLT)
Præsentation af Facebook-data som vi kender det
Databasen rummer meget information om hver person
RHS – Informationsteknologi 52
Eksempel: Facebook-data
• Dette er alt sammen fint; vi får alt data om personen præsenteret i browseren.
• Selv når informationen vises i en browser på en almindelig computer, er der så meget informa-tion, at den er delt op på mange sider
• Hvad hvis vi vil vise Facebook-data på en mobil-telefon, hvor skærmen er meget mindre…?
RHS – Informationsteknologi 53
Eksempel: Facebook-data
Database med Facebook-data
Data som XML
Data som HTML
ForespørgselTransformation
(XSLT)
Den genererede HTML-kode er nu tilpasset en mobil-telefon (kun en lille mængde data vises)
Kun selve trans-formationen er ændret!
RHS – Informationsteknologi 54
Med andre ord (og billeder)
Database med Facebook-data
ForespørgselData som
XML
Transfo
rmatio
n til
Inte
rnet E
xplore
r
Transformation til mobiltelefon
Transformation til
Word dokument
Data som HTML(til Internet Explorer)
Data som Worddokument
Data som HTML(til mobil)
Transformationen behøver ikke kun være til præsentation!
RHS – Informationsteknologi 55
Til at tænke over…
1) Det blev tidligere sagt, at ”Afsender kan ændre på typen af data der afsendes, uden at mod-tager skal bekymre sig om det” – er det nu også helt rigtigt?
2) Hvis man kunne få Facebook-data som XML, hvordan skal de, som vil benytte dette data til noget, vide hvilket ordforråd de skal benytte?
3) En parser kontrollerer, at et givent stykke tekst er XML, altså at det overholder reglerne for XML-syntaks. Kan man så være sikker på, at data altid vil give mening?
RHS – Informationsteknologi 56
Lidt flere XML-detaljer
• Der er en smule mere at vide om XML– Attributter– Prolog– Navnegrupper (namespace)
RHS – Informationsteknologi 57
Attributter
• Hvis vi har et XML-element med en simpel type, kan vi skrive værdien som en såkaldt attribut i stedet:
<Adresse> <Vejnavn> Skolevej </Vejnavn> <Husnummer> 12 </Husnummer> <Postnummer> 4000 </Postnummer></Adresse>
<Adresse Vejnavn=”Skolevej” Husnummer=”12” Postnummer=”4000” />
bliver til
RHS – Informationsteknologi 58
Attributter
• En attribut-værdi står inde i selve koden for elementet.
• Værdien skal stå i ”” (gåseøjne)• Man kan godt have flere attributter for et element• Man kan godt benytte attributter for simple typer
i et element, og så derudover have sammen-satte typer i elementet
• Hvad er bedst? Svært at sige, men attributter gør XML-koden lidt mere kompakt
RHS – Informationsteknologi 59
Prolog• Prolog betyder ”start” eller
”indledning”• For XML er prologen en ind-
ledende beskrivelse af, hvilken type XML der følger
• Den kan rumme information som– XML version– Sprog-opsætning– Anden information, som gælder for
hele det XML-data som følger
RHS – Informationsteknologi 60
Prolog
• En meget simpel prolog kunne være:
<? xml version=”1.0” encoding=”windows-1258” ?>
• Bemærk at– Prologen står i koden <? … ?>– Værdierne står som attributter– ”encoding” attributten angiver sprog (her Dansk)
RHS – Informationsteknologi 61
Navnegruppe (Namespace)
• Husk på, at afsender og modtager skal være enige om ordforrådet.
• Man kan sagtens forestille sig, at forskellige afsendere bruger det samme ord om forskellige typer data, hvis konteksten er forskellig
• Tænk f.eks på reklamerne for Oddset.– I konteksten Fodbold betyder ”klippet” at blive ulovligt
nedlagt af en modstander– I konteksten Frisør betyder ”klippet” at få klippet hår
RHS – Informationsteknologi 62
Navnegruppe (Namespace)
• For at forhindre sammenfald mellem typer, kan man bruge navnegrupper (eng. namespace)
• En navnegruppe er et ”efternavn” for en samling af typer, som bruges i den samme kontekst
• Vi kunne f.eks definere en navnegruppe kaldet HHFag, som rummer typerne (IT, afsætning, dansk, tysk, matematik,…)
• En navn på en type skrives så som f.eks HHfag::dansk, altså navnegruppe::typenavn
RHS – Informationsteknologi 63
Navnegruppe (Namespace)
<Fag klasse=”2d08”>
<HHFag::dansk lærer=”…” />
<HHFag::IT lærer=”…” />
<HHFag::afsætning lærer=”…” />
</Fag>
For s…. da for noget christianit-sludder!!
RHS – Informationsteknologi 64
Navnegruppe (Namespace)
• Før man bruger en navnegruppe, skal man indsætte en henvisning til den i sin XML
• Henvisningen kan være til en anden fil, eller til en web-side.
• Dette kan hjælpe parseren til at afgøre, om der er brugt lovlige navne på typerne.
RHS – Informationsteknologi 65
Meningsfyldt XML
• Hvis vores XML-data kan komme forbi parseren, har den en korrekt syntaks.
• Derfor kan det godt være noget sludder alligevel…
• ”…Jeg stod højre ved giraffen om snoren, men fire efterfølger to værre cementsten…”
• Sikkert ”syntaktisk korrekt” dansk, men giver ingen mening
HVA’ BA’ !?
RHS – Informationsteknologi 66
Mere end syntaks
• Vi må udføre yderligere kontrol, for at sikre at vores XML er meningsfyldt.
• Hvad skal vi kontrollere meningen imod…?
• Man kan definere regler for opbygningen af XML-data – dette gøres i en såkaldt XSD.
XML
XSLT
XSD
HTML
RHS – Informationsteknologi 67
XSD
• XML Scheme Definition (flere forkortelser…)• Ligesom XSLT er det (bare) en samling regler,
denne gang for opbygningen af XML-data• Eksempel: typen Navn er opbygget af:
– Netop ét Fornavn– Nul, ét eller flere Mellemnavn– Netop ét Efternavn
RHS – Informationsteknologi 68
Rigtigt og forkert<Navn> <Fornavn> Per </Fornavn> <Mellemnavn> Storgaard </Mellemnavn> <Mellemnavn> Lillevang </Mellemnavn> <Efternavn> Laursen </Efternavn></Navn>
<Navn> <Fornavn> Per </Fornavn> <Fornavn> Bent </Fornavn> <Mellemnavn> Lillevang </Mellemnavn> <Efternavn> Laursen </Efternavn></Navn>
To fornavne…
RHS – Informationsteknologi 69
Fordøjelse af XML – nu med XSD
Afsender af XML Noget XML…
Modtager af XML
XMLParser
Data, som modtageren
kan forstå
XML Kontrol(XSD)
XML præsen-tation (XSLT)
HTML – f.eks vist i Internet
Explorer
RHS – Informationsteknologi 70
Og hvad skal vi så huske?• XML
– eXtendible
– Markup
– Language
• XML er en åben standard for at beskrive data, samt meta-data (data om data)
..and remember, XML will be with you,
always…
RHS – Informationsteknologi 71
Og hvad skal vi så mere huske?• En afsender og modtager skal være enige
om, hvilket ordforråd der kan benyttes, samt meningen med de specifikke typer
• XML rummer kun meningen med data, ikke præsentationen
• Værktøjer som XSLT og XSD hjælper os med at fortolke og bearbejde XML data.
RHS – Informationsteknologi 72
Flere ting at tænke over…
1) XML er en åben standard, men…hvem beslutter så, hvordan reglerne for XML er?
2) Hvilke ulemper kan der være ved XML, sammenlignet med et binært format?
3) I XML er data hierakisk, mens det er relationelt i en (relationel) database som f.eks Access. Hvilke problemer kan dette give, hvis man vil repræsentere data fra en database som XML?
RHS – Informationsteknologi 73
Dataudveksling i den virkelige verden
• I den virkelige verden udveksles der information på mange formater, XML er kun et af dem…
• Dog ses der en tendens til mere og mere udbredt brug af XML
• Skal XML benyttes til dataudveksling, skal afsender og modtager være enige om ordforrådet – dette gøres ved at lave en specialisering af XML til et specifikt formål.
RHS – Informationsteknologi 74
XML specialisering
• At specialisere XML til et specifikt formål betyder blot, at der defineres– Et ordforråd– Regler, som den specialiserede XML skal
følge (f.eks ved definition af en XSD)
• I praksis er der defineret et stort antal specialiserede versioner af XML.
RHS – Informationsteknologi 75
XML specialisering - eksempler
• XBRL – eXtensible Business Reporting Language• MathML (XML til matematik)• CML – Chemistry XML• XAML – eXtensible Application Markup Language• OIO-XML (Offentlig Information Online XML)• Se også http://en.wikipedia.org/wiki/List_of_XML_markup_languages
• Den sidste er interessant – det er en version af XML beregnet til dataudveksling i det offentlige Danmark
RHS – Informationsteknologi 76
OIO-XML
• Intentionen med OIO-XML er at (elektronisk) udveksling af data mellem offentlige inistitutioner – samt det offentlige og private – skal følge denne standard
• Citat fra vejledning fra IT- og telestyrelsen:
Kravet om at anvende OIOXML gælder, når der foregår regelmæssig og systematisk udveksling af data fra eller til en myndighed. Eksem-pelvis når en styrelse stiller krav om regelmæssige indberetninger fra kommunale myndigheder.
RHS – Informationsteknologi 77
Offentlig data- udveksling eksempel
• En virksomhed kaldet KMD (Kommunedata) laver systemer til den offentlige sektor i Danmark
• Et (ud af mange) af disse systemer bruges til sagsadministration i landets kommuner
• Dette ene system foretager udveksling med andre systemer mere end 40 millioner gange årligt (mere end en pr. sekund, året rundt)
• Datamængden kan variere, men i alt adskillige Terabytes pr. år
RHS – Informationsteknologi 78
e-Faktura
• Der er nu tillige krav om, at leverandører til det offentlige skal sende deres faktura på elektronisk form (e-Faktura)
• Hvad skal nu den lille ikke-så-computer-kyndige hånd-værksmester nu gøre…?
RHS – Informationsteknologi 79
e-Faktura løsninger
• Læs-ind bureau– Der findes nu bureauer, som mod betaling ”over-
sætter” gammeldags papir-fakturaer til elektronisk form, og indberetter dem til det offentlige
• Faktura-portal– Via en ”portal” på nettet kan man indtaste og afsende
sine fakturaer, ved hjælp af en slags faktura-editor
• Eget system– Man køber et program, hvori man både kan oprette
og afsende fakturaer elektronisk (C5, XAL, …)
RHS – Informationsteknologi 80
e-Boks
• e-Boks er en slags e-mail konto, hvor offentlige (og andre) institutioner kan sende information til borgeren.
• Dette kan være– Skatteopgørelser– Lønsedler (for offentligt ansatte)– Ejendomsvurderinger– …og så videre…
RHS – Informationsteknologi 81
e-Boks
• En del virksomheder har også tilsluttet sig e-Boks, f.eks mange banker, forsikringsselskaber, med videre, så de kan sende– Kontoudtog– Pensionsoversigter– Forsikringsoplysninger– …og så videre…
• Hvilket format skal alle disse data mon sendes på…?
RHS – Informationsteknologi 82
Opgaver1) Din bedstefar er meget
skeptisk ved at bruge e-Boks – hvilke argumenter kunne måske overbevise ham?
2) Hvilke fordele og ulemper er der ved at bruge e-Boks og e-Faktura, både set fra den enkelte, og fra hele samfundets, synspunkt?
3) Hvilke nye krav stiller brugen af e-Boks og e-Faktura til borgeren og til virksomheder?
Arhh, sådan noget nymodens
pjank…