Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

XML XML EXtensible Markup Language XML DTD. Hva er XML  XML står for EXtensible Markup Language  XML er et tag språk lik HTML  XML beskriver data 

Liknende presentasjoner


Presentasjon om: "XML XML EXtensible Markup Language XML DTD. Hva er XML  XML står for EXtensible Markup Language  XML er et tag språk lik HTML  XML beskriver data "— Utskrift av presentasjonen:

1 XML XML EXtensible Markup Language XML DTD

2 Hva er XML  XML står for EXtensible Markup Language  XML er et tag språk lik HTML  XML beskriver data  XML definerer egne tagger i XML  XML bruker Document Type Definition (DTD) eller et XML Schema for å beskrive data  XML med DTD eller XML Schema er designet for å være selv - deskriptiv.

3 Hva er XML  Et rammeverk for å definere nye tag - språk.  Ingen ferdig definerte tagger  Hvert xml språk er en applikasjon.  MathML, VoiceXML,CML(Chemical Markup L..)  XHTML...  Skiller data fra hvordan data vises.  Benytter XSL for å rendre inhold ut til nettleseren.

4 XML vs. HTML  XML beskriver data og fokuserer på hva data er.  HTML viser data og fokuserer på. hvordan data ser ut.  HTML viser informasjonen.  XML beskriver informasjonen.

5 XML vs. HTML Rabarbra grøt Ons, 14 Jun 2002 Rabarbragrøt med bananer 2 1/2 kopp Opphakket rabarbra 2 sp sukker 2 modne bananer 1/4 teskje kanel krm muskat Bland alt sammen og bruk som grøt eller pai. Andre desserter: PlommeKompott

6 XML vs. HTML Rabarbra grøt Ons, 14 Jun 95 Rabarbragrøt med bananer 2 1/2 kopp opphakket rabarbra 2 sp sukker 2 modne bananer 1/4 ts kanel 1 krm muskat bland alt sammen og kok grøt eller lag pai av blandingen PlommeKompott

7 XML vs. HTML  Med XML kan vi lage vårt eget oppskriftsspråk basert på XML.  Eksempelet viser:  at taggene er valgt for deres logiske struktur.  at dette er kun en av mange strukturer av av en oppskrift.  at vi trenger å definere hvilke XML dokumenter vi regner som oppskrifter.  at vi trenger et stylesheet for å definere hvordan nettleseren skal vise denne informasjonen

8 En konseptuell modell  Et XML dokument kan forstås som et ordnet hierarkisk tre.  Element noder, som er merket med:  Navn (ofte kalt element type)  Et sett med attributter som består av navn - verdi par.  Bladnoder, som innehoder den aktuelle data (tekst strenger).

9 En konseptuell modell oppskrift id 117 kategori dessert tittelforfatterdatoingredienser Rabarbra grøt epost ingred maaltype IE

10 XML syntaks Tove 4. Janni 5. Huskelapp 6. Ikke glem avtalen til helgen 7. •1. linje viser xml deklarasjonen med versjon og tegn standard. •2. linje viser rot elementet •Linje 3 – 6 viser fire barn av rot elementet •7. Linje viser slutt taggen til rot elementet.

11 XML syntaks  Noen regler som gjelder for XML dokumenter.  Alle XML elementer må lukkes:   Skiller mellom små og store bokstaver:  !=  Må være nestet riktig...  Må ha et rotelement par. Alle andre elementer må være innenfor disse.  Alle attributt verdier må stå inne i anførselstegn.   XML tar vare på mellomrom:  Hei hvordan går det

12 Elementer  Elementer er utvidbare:  XML dokumenter kan bli utvidet til å inneholde mer informasjon.  Ved å legge til en element tagg: Tove 5. Janni 6. Huskelapp 7. Ikke glem avtalen til helgen 8.

13 Elementer  Elementer har relasjoner.  Tre typer:  Foreldre  Barn  Søsken

14 Elementer og relasjoner Mitt første XML dokument Intro til XML Hva er HTML Hva er XML XML Syntaks Elementer må lukkes med / Elementer må være riktig nestet • bok er rot – element. • tittel, prod, og kapittel er barn av bok. • bok er foreldre til tittel, prod og kapittel. • tittel, prod og kapittel er søsken fordi de har samme forelder.

15 Elementer og innhold  Elementer har innhold.  4 typer:  Element innhold.  Div innhold (mixed).  Enkelt innhold (simpel).  Tomt innhold (empty).  Elementer kan også ha attributter.

16 Elementer og innhold  I bok eksempelet ovenfor ser vi følgende:  bok har element innhold fordi den inneholder andre elementer.  kapittel har div (mixed) innhold fordi den inneholder både tekst og andre elementer.  para har enkelt innhold (tekstlig) fordi den inneholder bare tekst.  prod har tomt innhold fordi den ikke bærer informasjon  Prod elementet har attributter...

17 Attributter  Attributter el ikke? Anna Smith mann Anna Smith Her gir kjonn attributtet ekstra informasjon om person elementet. Her er kjonn lagt inn som et barn av person. Begge eksempler gir samme type informasjon

18 Attributter  Hvorfor unngå bruk av attrib.  Attributter kan ikke beskrive struktur  Attributter er vanskelig å manipulere med programkode.  Attributter er tyngre å validere via DTD.  Bruk elementer til å beskrive data  Bruk attributter for å gi informasjon som ikke er relevant til dataene.  For ekesmpel:

19 Attributter  Et unntak...  Bruk av en ”id” referanse, til å referere de ulike notatene Tove Janni Huskelapp Ikke glem avtalen til helgen Janni Tove Re: Huskelapp Mottat!

20 XML deklarasjon  Alle xml dokumenter må ha følgende linje:   Kan også angi character encoding   Hjelper applikasjoner å dekode innholdet av dokumentet.  Spesielt nyttig på flerplattform / flerspråklige miljøer.

21 Nettlesere  Hvilke?  I.E 5.0 og høyere har best støtte for XML  Har en grafisk framstilling av kildekoden ved lasting av en xml fil.  Netscape 6  Tekstlig framstilling av innhold (dvs. tekst noder).  Må velge å se på kildekoden.  Netscape 7.01  Grafisk fremstilling  Opera 7  Tekstlig framstilling av innhold (dvs. tekst noder).

22 URI, URN, URL( sidesprang )  Begrepene:  URI - Uniform Resource Identifier  URN - Uniform Resource Name  URL - Uniform Resource Locator  Internettet består av eller inneholder et (stort) sett med punkter med innhold.  Filer av en eller annen sort.  Punktene identifiserer vi ved hjelp av stringer som vi generelt kaller URI'er.

23 URI, URN, URL( sidesprang )  Videre identifiserer vi disse punktene ved å angi enten navn (URN), eller nøyaktig adresse (URL)  Med URN forutsettes det at det finnes en mekanisme som oversetter navn til adresse  Dette er en fordel framfor URL  Kan flytte eller duplisere ressursen uten at navnet må endres.

24 URI, URN, URL( sidesprang )

25 Namespaces  Gir en måte å forhindre element - navn konflikter.  I et XML dokument kan vi definere et navnerom innenfor en start tagg. Navnerommet gjelder da for hele innholdet av det elementet.  Hvert navnerom krever en URI (Uniform Resource Identifier) som identidiserer den.  Hvilket som helst ord kan brukes, men vanligst er å bruke en URL( Uniform Resource Locator).  For å definere et navnerom bruker man xmlns attributtet.  .... 

26 Namespaces  Foregående så vi eksempel på et standard navnerom.  En kan også opprette lokale identifikatorer for å plassere dem i utvalgte elementer med et prefix.  NB! Er ikke med i eks navnerommet Navnerom  En kan selvsagt definere både standard og et lokalt navnerom:   Nå vil være innenfor standard navnerom.

27 Namespaces Tove Janni Huskelapp Ikke glem avtalen til helgen 3ip802 prosjekt Ferdigstilling av database Ble ferdig med databasen etter en del arbeid med ordrelinje problem... Sett at begge disse dokumentene Skal behandles samtidig. Kan Oppstå en navnekonflikt.

28 Validering  Et gyldig XML dokument er i samsvar med en Document Type Definition eller et XMLSchema  En DTD definerer de lovlige elementene til et XML dok.  Følgende kommer en innføring i DTD og XMLSchema

29 DTD  En DTD definerer dokumentstrukturen og en liste med lovlige elementer.  En DTD kan defineres inline eller eksternt.  Inline med følgende syntaks: 

30 DTD - eks Tove Janni Huskelapp Ikke glem avtalen til helgen IE Linje 2: definerer at dokumentet er av type notat. Linje 3: definerer at ”notat” Elementet har fire elementer (til,fra,tittel og melding). Linje 4: definerer ”til” Elementet til typen #PCDATA. Osv...

31 DTD  Ekstern DOCTYPE deklarasjon: ...

32 DTD  For å kunne bygge komplekse strukturer i våre DTD som reflekterer strukturen i XML dok. må vi bruke noen deklarasjons elementer:  DOCTYPE:  Deklarerer dokument entiteten som er rot elementet og startpunktet til XML dokumentet. Definerer også roten til DTD deklarasjonene  ELEMENT:  Deklarerer en element type innenfor DTD.  ATTLIST:  Deklarerer attributter av elementtyper. Spesifiserer elementtypen, typen av attributter og evt. en standard verdi. IE

33 DTD  Sett fra et DTD’s synspunkt består et XML dokument av følgende byggestener:  Elementer  Tagger ( )  Attributter  Entiteter  #PCDATA  Parset tekst, tegn som,&; osv er ikke tillatt og blir kodet om: <.  #CDATA  Rå tekst, tegn som <>& blir tatt med.

34 DTD - Elementer eller  Elementer deklarert som ”ANY”  Elementer deklarert som ”EMPTY”  Element deklarasjon med følgende synt.:

35 DTD - Elementer  Elementer med bare tekstlig data ( character data ): eller  Elementer med barn:

36 DTD - Elementer  Vi kan angi ulike regler for hvordan elementer forekommer.  Kun en forekomst   Minst en forekomst   Null eller flere forekomster   Null eller en forekomst 

37 DTD - Elementer  Forts.  Enten/ eller   Må inneholde til,fra,tittel og enten melding eller body elementer.

38 DTD - Attributter  Attributter blir deklarert som følgende:  Eksempelet viser at attributtet ”itemtype” kan ha tre mulig verdier og at ”book” er standard type. Eks:

39 DTD - Attributter  Her kommer noen av de mulige verdiene til attributt type:  CDATA verdien består av rå tekst.  (v1,v2,...) verdien er en av en liste.  ID verdien er en unik id ...

40 DTD - Attributter  Standard verdier:  4 ulike verdier:  Verdi, standard verdien til attributtet  #REQUIRED Attributtet må ha en verdi   #IMPLIED Attributtet trenger ikke ha en initiell verdi  #FIXED Atributt verdien er satt og kan ikke forandres i XML dokumentet. 

41 DTD - Entiteter  Bruker entitets referanser for å legge til en tekstlig verdi fra en entitet eller et tegn inn i et dokument.  Dette kjenner vi til i fra HTML:  <, >  Dette kan vi også gjøre i XML  Syntaks intern:   &copoyright  Syntaks ekstern:   Se eks...

42 XMLSchema  Hvorfor ikke bare bruke DTD?  Fordi XMLSchema er enklere  Spesifiserer element data typer  Forenkler design  Bedre støtte for navnerom  Tillater gjenbruk av elementer via arv.  De er utvidbare.  DTD syntaks forholder seg til SGML syntaks  XMLSchema er skrives i XML  DTD er mer kompleks, menes det altså.

43 XMLSchema  Hva er så et XMLSchema:  definerer elementer som kan forekomme i et dokument  definerer attributter som kan forekomme i et dokument  definerer hvilke elementer som er barn  definerer rekkefølgen på elementene som er barn  definerer antall barn  definerer hvorvidt et element er tomt eller kan inneholde tekst.  definerer data typer for elementer og attributter  definerer standard og faste verdier for elementer and attributter.

44 XMLSchema  XMLSchema er en W3C anbefaling og foreligger nå som en stabil spesifikasjon.  XMLSchema var først et Microsoft forslag.

45 XMLSchema  Innledende eksempler: Tove 4. Janni 5. Huskelapp 6. Ikke glem avtalen til helgen 7. Vi har sett DTD’en til dette xml dok. Her kommer XMLSchema til samme dokument:

46 XMLSchema

47 XMLSchema  I eksempelet ovenfor kan en se at notat er av kompleks type, fordi den inneholder flere elementer.  De andre elementene er av simple typer fordi de ikke inneholder andre elementer.  Referanse til et XMLSchema: Tove Janni Huskelapp Ikke glem avtalen til helgen

48 XMLSchema  elementet er rot elementet i et XMLSchema.  En schema deklarasjon ser ofte slik ut:  Følgende linje:  xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema  Indikerer at elementer og datatyper (schema, element, complexType, sequence, string, boolean, etc.) kommer fra navnerom, og at elementene og datatypene som kommer fra navnerommet skal ha :xs som prefiks. (denne url har til hensikt å beskrive navnerommet.)

49 XMLSchema  xmlns=http://www.osir.hihm.no/sfi/kurs/3ip80  Standard navnerom  targetNamespace=http://www.osir.hihm.no/sfi/kurs/3ip80  Indikerer at et xml dokument hvor elementene er deklarert til å tilhøre navnerommet til schemaet, skal valideres mot XMLScema.

50 XMLSchema  Referanse til et XMLSchema:  Første og andre linje:  xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xsi:schemaLocation="notat.xsd”  For å assosiere Schema med xml dokumentet.  Bruker schemaLocation for å spesifisere schema fila.


Laste ned ppt "XML XML EXtensible Markup Language XML DTD. Hva er XML  XML står for EXtensible Markup Language  XML er et tag språk lik HTML  XML beskriver data "

Liknende presentasjoner


Annonser fra Google