Dataudveksling og xml
This presentation is the property of its rightful owner.
Sponsored Links
1 / 82

Dataudveksling og XML PowerPoint PPT Presentation


  • 40 Views
  • Uploaded on
  • Presentation posted in: General

Dataudveksling og XML. η επικοινωνία είναι δύσκολη. 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?. Hvad udveksler vi?. Dokumenter. Alt muligt!

Download Presentation

Dataudveksling og XML

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Dataudveksling og xml

Dataudveksling og XML


Dataudveksling og xml

η επικοινωνία είναι δύσκολη

  • 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


Hvad udveksler vi

Hvad udveksler vi?

Dokumenter

  • 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!

Lyd

Billeder

Video

SMS

RHS – Informationsteknologi


Hvad er dit forbrug

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


Hvad er information egentlig

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


Meta data

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


Meta data1

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


Meta data i sproget 1

Meta-data i sproget - 1

  • Vi bruger formen med data og meta-data hele tiden i vores sprog

  • ”Skoene koster800 kroner”

  • ”Min hund hedderVagn”

  • ”Jonas’ bil er enOpel Kadett”

  • Data

  • Meta-data

RHS – Informationsteknologi


Meta data i sproget 2

Meta-data i sproget - 2

  • Men ofte er vi meget upræcise og indforståede i vores formuleringer

  • ”Skoene koster800 kroner” – hvilke sko?

  • ”Min hund hedderVagn” – ”min”, men hvem er du selv?

  • ”Jonas’ bil er enOpel Kadett” – hvem er Jonas, og hvilken type Opel Kadett er det?

RHS – Informationsteknologi


Computerer kan ikke lide indforst ethed

Computerer kan ikke lide indforståethed…

Huh!?!?

”Syntax error detected at line 3, insufficient memory”

Øhmm, start lige det der, øhhh, program-halløj til at lave regn-skab i, eller noget…

RHS – Informationsteknologi


Pr cis kommunikation

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


Markeringssprog markup language

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


Markeringssprog

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


Markeringssprog1

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


Typer af markeringssprog

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


Enter the xml

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


What is xml

What is XML…?

  • eXtensible

  • Markup

  • Language

Lær det!

RHS – Informationsteknologi


E x tensible m arkup l anguage

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


At f et f lles ordforr d er ikke altid s let

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


Adresse som xml

Adresse som XML

<Adresse>

<Vejnavn>Skolevej</Vejnavn>

<Husnummer>12</Husnummer>

<Postnummer>4000</Postnummer>

<Bynavn>Roskilde</Bynavn>

</Adresse>

RHS – Informationsteknologi


Ej hvor ser det tosset ud

Ej, hvor ser det tosset ud…

Suk – det hedder XML, din ¤#&!!@* bamsegøglerklovn…

Nøj, Kylling, hvor ser det der ÆgsEmÆl altså mærkeligt ud…

BORKK!

RHS – Informationsteknologi


Adresse som xml igen

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


Elementer i xml

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


Dataloger elsker rekursion

Dataloger elsker rekursion…

RHS – Informationsteknologi


Rekursion

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


Adresse som xml igen igen

Adresse som XML – igen, igen

Adresse er en sammensat type: Består af Vejnavn, osv…

<Adresse>

<Vejnavn>Skolevej</Vejnavn>

<Husnummer>12</Husnummer>

<Postnummer>4000</Postnummer>

<Bynavn>Roskilde</Bynavn>

</Adresse>

Postnummer er en simpel type: er bare et tal

RHS – Informationsteknologi


Person som xml

Person som XML

Person er en sammensat type: består af Navn og Adresse

<Person>

<Navn> Hans Jensen </Navn>

<Adresse>

<Vejnavn>Skolevej</Vejnavn>

<Husnummer>12</Husnummer>

<Postnummer>4000 </Postnummer>

<Bynavn>Roskilde</Bynavn>

</Adresse>

</Person>

Adresse er en sammensat type: Består af Vejnavn, osv…

RHS – Informationsteknologi


Xml er hierakisk

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


Velse i xml

Ø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


Xml kontra html

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


Xml kontra html1

XML kontra HTML

XML, jeg vælger deeeeej!

  • 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 skrive

    Det <b>andet</b> ord er med fed skrift

  • Her betyder markeringen, at det mellem <b> og </b> skal skrives med fed (eng.: bold) skrift

RHS – Informationsteknologi


Xml kontra html2

XML kontra HTML

  • Med andre ord – i HTML er der ingen information om meningen med data, kun information om præsentationen af data

RHS – Informationsteknologi


Hvem har spist min xml

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


Ford jelse af xml

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


Ford jelse af xml1

Fordøjelse af XML

Afsender af XML

Modtager af XML

XML

Parser

Noget XML…

Data, som

modtageren

kan forstå

Her er data bare noget tekst

”Ahh, det var noget XML der kom”, tænker parseren…

RHS – Informationsteknologi


Xml ligger godt i maven

Familie

Medlem

Medlem

Medlem

Navn

Hobbyer

Alder

Og så videre…

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æ”

RHS – Informationsteknologi


Nu kommer der noget smart

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


Nu kommer der noget smart1

Nu kommer der noget smart…

Kunne f.eks være et offentligt register

Afsender af XML

(ved alt muligt

om personer)

Modtager af XML

(vil gerne udregne

et gennemsnit

for alder)

Noget XML

med persondata

  • Modtager ved kun at:

  • Hver person har én alder

  • Alder markeret med <alder>

RHS – Informationsteknologi


On a need to know basis

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>

Modtager behøver kun kende <person> og <alder>

Afsender ved alt dette om en person

RHS – Informationsteknologi


Hvad er det smarte

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


En afsender mange modtagere

En afsender, mange modtagere

System til

alders-statistik

XML

Afsender af XML

(ved alt muligt

om personer)

System til

adresselister

XML

XML

System til analyse af

hospitalsindlæggelser

XML

Samme data sendes til alle modtagere

System til

(og så videre…)

RHS – Informationsteknologi


Pr sentation af xml data

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


Pr sentation af xml data1

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


Ingen panik

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


L s kobling igen

Løs kobling igen…

  • 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


Vigtigt

<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


Her er det vigtige

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


Vigtigt1

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


En xml mange xslt

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


Eksempel facebook data

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


Eksempel facebook data1

Eksempel: Facebook-data

Database med

Facebook-data

Data som

XML

Data som

HTML

Transformation

(XSLT)

Forespørgsel

Databasen rummer meget information om hver person

Præsentation af Facebook-data som vi kender det

RHS – Informationsteknologi


Eksempel facebook data2

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


Eksempel facebook data3

Eksempel: Facebook-data

Database med

Facebook-data

Data som

XML

Data som

HTML

Transformation

(XSLT)

Forespørgsel

Kun selve trans-formationen er ændret!

Den genererede HTML-kode er nu tilpasset en mobil-telefon (kun en lille mængde data vises)

RHS – Informationsteknologi


Med andre ord og billeder

Med andre ord (og billeder)

Data som HTML

(til Internet

Explorer)

Transformation til

Internet Explorer

Database med

Facebook-data

Data som HTML

(til mobil)

Data som

XML

Transformation til

mobiltelefon

Forespørgsel

Transformation til

Word dokument

Data som Word

dokument

Transformationen behøver ikke kun være til præsentation!

RHS – Informationsteknologi


Til at t nke over

Til at tænke over…

  • 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?

  • 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?

  • 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


Lidt flere xml detaljer

Lidt flere XML-detaljer

  • Der er en smule mere at vide om XML

    • Attributter

    • Prolog

    • Navnegrupper (namespace)

RHS – Informationsteknologi


Attributter

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>

bliver til

<Adresse Vejnavn=”Skolevej”Husnummer=”12” Postnummer=”4000” />

RHS – Informationsteknologi


Attributter1

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


Prolog

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


Prolog1

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


Navnegruppe namespace

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


Navnegruppe namespace1

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


Navnegruppe namespace2

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


Navnegruppe namespace3

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


Meningsfyldt xml

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


Mere end syntaks

Mere end syntaks

XML

  • 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.

XSD

HTML

XSLT

RHS – Informationsteknologi


Dataudveksling og xml

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


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>

Rigtigt og forkert

To fornavne…

RHS – Informationsteknologi


Ford jelse af xml nu med xsd

Fordøjelse af XML – nu med XSD

Afsender af XML

Modtager af XML

Noget XML…

XML Kontrol

(XSD)

XML

Parser

Data, som

modtageren

kan forstå

HTML – f.eks

vist i Internet

Explorer

XML præsen-

tation (XSLT)

RHS – Informationsteknologi


Og hvad skal vi s huske

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


Og hvad skal vi s mere huske

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


Flere ting at t nke over

Flere ting at tænke over…

  • XML er en åben standard, men…hvem beslutter så, hvordan reglerne for XML er?

  • Hvilke ulemper kan der være ved XML, sammenlignet med et binært format?

  • 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


Dataudveksling i den virkelige verden

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


Xml specialisering

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


Xml specialisering eksempler

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


Oio xml

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


Offentlig data udveksling eksempel

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


E faktura

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


E faktura l sninger

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


E boks

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


E boks1

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


Opgaver

Opgaver

Arhh, sådan noget nymodens pjank…

  • Din bedstefar er meget skeptisk ved at bruge e-Boks – hvilke argumenter kunne måske overbevise ham?

  • 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?

  • Hvilke nye krav stiller brugen af e-Boks og e-Faktura til borgeren og til virksomheder?

RHS – Informationsteknologi


  • Login