XML EXtensible Markup Language

Slides:



Advertisements
Liknende presentasjoner
Høgskolen i Oslo Webprogrammering Tilstandsbevaring Sessions og cookies.
Advertisements

Hvordan etablere nettbutikk med GoOnline Commerce
GoOnline publisering Hvordan komme i gang med GoOnline. Denne presentasjonen tar deg steg for steg gjennom oppsett av nettsted med bruk av GoOnline Proffesional.
Publisering på internett
HTML og CSS introduksjon Veiledet selvstudium Webpublisering 10. januar 2008 Monica Strand 1Webpublisering – 10. januar 2008.
Nyhetsfôring med RSS ALEPH brukermøte 2006
JSP presentasjon Arild Strømhylden NTNU 26 June 2014.
Programmering i ActionScript - hva er det, og hvordan undervise?
Gjenfinningssystemer og verktøy II
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.
Legge beskjeder på nettsiden som trener eller tillitsvalgt En kort innføring Til nettsiden:
Databaseteori.
IS-102 Klassedefinisjoner
Java Server Faces (JSF) en introduksjon Frode Eika Sandnes.
Databasehåndtering med MySQL
Mars 2008 Ole Husby Nettlesere. Nettlesere finnes På Windows-PC-er på Mac’er på Linux på mobiltelefoner og forskjellige andre steder også.
ANDROID-PROGRAMMERING VÅREN ACTIVITY OG INTENTS Repetisjon fra forrige gang.
Sqlite Et lite eksempel på en SQL- database. SQL kan startes på ulike måter Kommandolinjeversjon or Windows –Programmet må innstalleres Hentes fra
XMLSchema.
Teknikker for å bedre design- prosessen -Design by contract -Prototyping design -Fault-tree analyses.
Blogging med Google Blogger
XML Extended Markup Language - The ASCII of the Future.
Agenda Velkommen til nye medlemmer!
Livet etter Frontpage og Access Tom Heine Nätt. Agenda Frontpage Hvorfor bytte? Krav til et webutviklingsverktøy Alternative webutviklingsverktøy Dreamweaver.
XML.
1 Arrayer og form(ularer) (Kapittel 4). 2 Mål  Forstå assosiative og superglobale arrays  Kunne behandle webformularer (forms)  Kjenne forskjellen.
Høgskolen i Oslo Webprogrammering Filbehandling i PHP.
Structured Query Language Kræsj-kurs
Regulære uttrykk.
Stringmanipulasjon, RegEx og validering
Publisering på verdensveven Kursdag 1 VÅFF, våren 2002.
Skjema/Forms HTML II IT og læring 2/20 november 2001.
ER-modellen, notasjon ENTITETS- Attributter TYPE Relasjon
Eksempel på SQL ”SQL-setninger” har en struktur som likner på ”naturlig språk”, med ”verb, subjekter og adjektiver”. SQL-setningene begynner alltid med.
DATABASE: Oppgave 2 et medlemsregister for en idrettsklubb med flere idrettsgrener (fotball, håndball, osv). klubben ønsker å lagre informasjon om medlemmenes.
Innledning om HTML IT20 oktober Bakgrunn Konseptet WWW ble født i 1983 i CERN, Geneve Opphavsmann: Tim Berners-Lee, MIT Spre informasjon uavhengig.
Dynamiske nettsider PHP Del 1 – variable. PHP  PHP (Personal Home Page)  Fritt tilgjengelig programmeringsspråk  åpen kildekode  Plattformuavhengig.
XSLT The Candy Community. Fiktivt community Godteri-relatert og sukkersøt musikk. To typer metadata: Candy factor Sugar level.
CSS Doing it in style!. CSS Cascading style sheets. Eget språk for presentasjon av dokumenter. Ligner Java-syntaks. Klasser av stiler for gjenbruk. Kaskaderende.
DOM og scripting Making it come alive. Hva er DOM? Standard for å definere trestrukturen til XML-dokumenter. IDL-spesifikasjon av grensesnitt, egenskaper.
Databasen IV Stemmer og kommentarer. Stemmer Avgis på hvorvidt metadata passer på noden. fitness: Hvor godt et egenskap passer til dataene den beskriver.
Kort om XML Språket om språket. XML: Eksempel Hans Tømmerholt.
Kommentarer og stil ”Dette suger!” ”Ne-hei!” ”Jo- hoo”, osv.
Kort om HTML ML meg her og ML meg der. En SV’er til og med.
Kort om HTML ML meg her og ML meg der..
Oblig 2: The Candy-community. Om XML, XSLT, Sablotron og HTML.
Oppgaveformatet. Oversikt XML-format, spesifisert gjennom et XML Schema. Består av et sett lovlige elementer og attributter og hvordan de kan ordnes i.
Andre funksjoner. Her kommer en beskrivelse av søkefunksjoner, knapper og annen funksjonalitet. 2.
Forskningsrapporten: Sjekkliste (empirisk rapport)
Om Internett, World Wide Web, egen hjemmeside Ole Christian Rynning
Juridisk nettviser Dokumentasjon av konvertering.
Skjemaendringer i systemer bestående av XML-data i relasjonsdatabaser Høgskolen i Gjøvik Master i Medieteknikk, Marianne Brattrud.
Formalisering av B2B applikasjoner
DRI H Arild Jansen, AFIN Utviklingen av fritekstsystemer Hovedpunkter for forelesningen Litt repetisjon fra 2. time –Om støtteundervisning.
Generelle definisjoner Oppslagsverk nå og senere! Finnes også i dokumentet Retningslinjer for datamodellering i UML UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet.
Web-grensesnitt Øyvind A. Bratne - April 2004.
Kort om html Forelesning feb Noen begreper i tilknytning til internett nettside (webside) (nesten=) hjemmeside = home page = betegnelse som.
Helseinformatikk Øving 2. Studie av modeller GLIF –Protégé GEM – GEM Cutter.
Konventionel tekstformatering: Her har vi en overskrift fulgt af normal tekst Deskriptiv tekstformatering: Her har vi en overskrift fulgt af normal tekst.
Protokoller Pensum: Olsen, kap. 5 og 6. Kommunikasjonsprotokoll Rutiner for å administrere og kontrollere oversending av data Telefonsamtale (”Hallo”,
Intro til (x)html Del 1. HUMIT1731 uke35b Kåre A. Andersen 2 En mal … Dette er en mal for DTD XHTML 1.0 Transitional Her kommer.
HUMIT1731 Hypermedier Introduksjon til Extensible Markup Language (XML)
HUMIT1731 Hypermedier Eksamen folk.uio.no/kaarean/humit1731/oppgaver/Humit1731_h08.doc.
XML og JDOM Helge Furuseth XML  XML = Extensible Markup Language Basert på SGML – Standard Generalized Markup Language  HTML =
2003 Ontopia AS1 Tanker om standarder for e-læring Emnekart og published subjects Lars Marius Garshol, utviklingsleder Ontopia,
HUMIT1731 Hypermedier Introduksjon til XSL Transformation (XSLT)
Inf1000 (Uke 5) Arrayer, filer og tekst
23. Spillere For spillere i Postenligaen og 1.div.
Se side 8-9. Kapittel 1: HTML5 og CSS Hyper Text Markup Language 1990-årene: Tim Berners-Lee ville strukturere tekster og lage klikkbare henvisninger på.
Intro til WWW, HTML5 og CSS
Utskrift av presentasjonen:

XML EXtensible Markup Language DTD

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.

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.

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.

XML vs. HTML <h1>Rabarbra grøt</h1> <h2>espelid@nrk.no</h2> <h3>Ons, 14 Jun 2002</h3> Rabarbragrøt med bananer <table> <tr><td> 2 1/2 kopp <td> Opphakket rabarbra <tr><td> 2 sp <td> sukker <tr><td> 2 <td> modne bananer <tr><td> 1/4 teskje <td> kanel <tr><td> krm <td> muskat </table> Bland alt sammen og bruk som grøt eller pai. Andre desserter: <a href="#PlommeKompott">PlommeKompott</a>

XML vs. HTML <oppskrift id="117" kategori="dessert"> <tittel>Rabarbra grøt</tittel> <forfatter><epost>espelid@nrk.no</epost></forfatter> <dato>Ons, 14 Jun 95</dato> <beskrivelse> Rabarbragrøt med bananer </beskrivelse> <ingredienser> <ingred><maal>2 1/2 kopp</maal> <type>opphakket rabarbra</type></ ingred > <ingred ><maal>2 sp</maal><type>sukker</type></ ingred > < ingred >< maal >2</maal><type>modne bananer</type> </ ingred > <ingred >< maal >1/4 ts</ maal >< type >kanel</ type ></ ingred > < ingred >< maal >1 krm</ maal >< type >muskat</ type ></ ingred > </ ingredienser > <hvordan> bland alt sammen og kok grøt eller lag pai av blandingen </hvordan> <andre url ="#plommeKompott">PlommeKompott</andre> </oppskrift>

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

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

En konseptuell modell IE oppskrift tittel forfatter dato ingredienser id 117 kategori dessert tittel forfatter dato ingredienser Rabarbra grøt epost espelid@nrk.no ingred maal type IE

XML syntaks 1. linje viser xml deklarasjonen med versjon og tegn standard. 1.<?xml version="1.0" encoding="ISO-8859-1"?> 2.<notat> 3.<til>Tove</til> 4.<fra>Janni</fra> 5.<tittel>Huskelapp</tittel> 6.<melding>Ikke glem avtalen til helgen</melding> 7.</notat> 2. linje viser rot elementet Linje 3 – 6 viser fire barn av rot elementet 7. Linje viser slutt taggen til rot elementet.

XML syntaks Noen regler som gjelder for XML dokumenter. Alle XML elementer må lukkes: </notat> Skiller mellom små og store bokstaver: <NOTAT> != <notat> 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. <!– Kommentarer i XML > XML tar vare på mellomrom: <melding> Hei hvordan går det</melding>

Elementer Elementer er utvidbare: XML dokumenter kan bli utvidet til å inneholde mer informasjon. Ved å legge til en element tagg: 1.<?xml version="1.0" encoding="ISO-8859-1"?> 2.<notat> 3.<dato>2003-03-03</dato> 4.<til>Tove</til> 5.<fra>Janni</fra> 6.<tittel>Huskelapp</tittel> 7.<melding>Ikke glem avtalen til helgen</melding> 8.</notat>

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

Elementer og relasjoner <bok> <tittel>Mitt første XML dokument</tittel> <prod id="33-657" type=”papir"></prod> <kappittel>Intro til XML <para>Hva er HTML</para> <para>Hva er XML</para> </kappittel > < kappittel >XML Syntaks <para>Elementer må lukkes med /</para> <para>Elementer må være riktig nestet</para> </bok> 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.

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

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

Attributter Attributter el ikke? Her gir kjonn attributtet ekstra informasjon om person elementet. <person kjonn=”mann"> <fornavn>Anna</fornavn> <etternavn>Smith</etternavn> </person> <person> <kjonn>mann</kjonn> <fornavn>Anna</fornavn> <etternavn>Smith</etternavn> </person> Her er kjonn lagt inn som et barn av person. Begge eksempler gir samme type informasjon

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:

Attributter Et unntak... Bruk av en ”id” referanse, til å referere de ulike notatene. <?xml version="1.0" encoding="ISO-8859-1"?> <notat id=”n001”> <dato>24.02.04</dato> <til>Tove</til> <fra>Janni</fra> <tittel>Huskelapp</tittel> <melding>Ikke glem avtalen til helgen</melding> </notat> <notat id=”n003”> <dato>02.03.04</dato> <til>Janni</til> <fra>Tove</fra> <tittel>Re: Huskelapp</tittel> <melding>Mottat!</melding>

XML deklarasjon Alle xml dokumenter må ha følgende linje: <?xml version=”1.0” ?> Kan også angi character encoding <?xml version=”1.0” encoding=”UTF-8”?> Hjelper applikasjoner å dekode innholdet av dokumentet. Spesielt nyttig på flerplattform / flerspråklige miljøer.

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

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.

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.

URI, URN, URL( sidesprang )

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. <mittxmld xmlns=”http://www.osir.hihm.no/sfi/kurs/3ip80/”> .... </mittxmld>

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. <mittxmld mlns:eks=”http://www.osir.hihm.no/sfi/kurs/3ip80/”> <eks:eksempel eks:id=”1”> <dato>2003-03-03</dato> NB! Er ikke med i eks navnerommet <eks:tittel>Navnerom</eks:tittel> <eks:eksempel> En kan selvsagt definere både standard og et lokalt navnerom: <mittxmld xmlns=”http://www.osir.hihm.no/sfi/kurs/” xmlns:eks=”http://www.osir.hihm.no/sfi/kurs/3ip80/”> Nå vil <dato> være innenfor standard navnerom.

Namespaces Sett at begge disse dokumentene <?xml version="1.0"?> <notat> <til>Tove</til> <fra>Janni</fra> <tittel>Huskelapp</tittel> <melding>Ikke glem avtalen til helgen</melding> </notat> Sett at begge disse dokumentene Skal behandles samtidig. Kan Oppstå en navnekonflikt. <?xml version="1.0"?> <notat> <arbeid>3ip802 prosjekt</arbeid> <dato>23.02.04</dato> <gjoremaal>Ferdigstilling av database</gjoremaal> <innhold>Ble ferdig med databasen etter en del arbeid med ordrelinje problem...</innhold> </notat>

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

DTD En DTD definerer dokumentstrukturen og en liste med lovlige elementer. En DTD kan defineres inline eller eksternt. Inline med følgende syntaks: <!DOCTYPE rot-element [element-deklarasjoner]>

DTD - eks IE <?xml version="1.0"?> <!DOCTYPE notat [ <!ELEMENT notat (til,fra,tittel,melding)> <!ELEMENT til (#PCDATA)> <!ELEMENT fra (#PCDATA)> <!ELEMENT tittel (#PCDATA)> <!ELEMENT melding (#PCDATA)> ]> <notat> <til>Tove</til> <fra>Janni</fra> <tittel>Huskelapp</tittel> <melding>Ikke glem avtalen til helgen</melding> </notat> 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...

DTD Ekstern DOCTYPE deklarasjon: <!DOCTYPE rot-element SYSTEM "filnavn"> <?xml version="1.0"?> <!DOCTYPE notat SYSTEM "notat.dtd"> <note> ... <!ELEMENT notat (til,fra,tittel,melding)> <!ELEMENT til (#PCDATA)> <!ELEMENT fra (#PCDATA)> <!ELEMENT tittel (#PCDATA)> <!ELEMENT melding (#PCDATA)>

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

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: &lt. #CDATA Rå tekst, tegn som <>& blir tatt med.

DTD - Elementer Element deklarasjon med følgende synt.: <!ELEMENT element-navn katagori> eller <!ELEMENT element-navn (element-innhold)> Elementer deklarert som ”EMPTY” <!ELEMENT element-navn EMPTY> <!ELEMENT br EMPTY> Elementer deklarert som ”ANY” <!ELEMENT element-navn ANY> <!ELEMENT notat ANY>

DTD - Elementer Elementer med bare tekstlig data (character data): <!ELEMENT element-navn (#PCDATA)> eller <!ELEMENT til (#PCDATA)> Elementer med barn: <!ELEMENT element-navn (barn_element_navn,..)> <!ELEMENT notat (til,fra,tittel,melding)>

DTD - Elementer Vi kan angi ulike regler for hvordan elementer forekommer. Kun en forekomst <!ELEMENT element-navn (barn-navn)> Minst en forekomst <!ELEMENT element-navn (barn-navn+)> Null eller flere forekomster <!ELEMENT element-navn (barn-navn*)> Null eller en forekomst <!ELEMENT element-navn (barn-navn?)>

DTD - Elementer Forts. Enten/ eller <!ELEMENT notat (til,fra,tittel,(melding|body))> Må inneholde til,fra,tittel og enten melding eller body elementer.

DTD - Attributter Attributter blir deklarert som følgende: Eksempelet viser at attributtet ”itemtype” kan ha tre mulig verdier og at ”book” er standard type. <!ATTLIST element-navn attributt-navn attributt -type standard-verdi> Eks: <!ATTLIST ITEM ITEMTYPE (BOOK | ARTICLE | PERIODICAL) "BOOK">

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

DTD - Attributter Standard verdier: 4 ulike verdier: Verdi , standard verdien til attributtet #REQUIRED Attributtet må ha en verdi <!ATTLIST person nummer CDATA #REQUIRED> #IMPLIED Attributtet trenger ikke ha en initiell verdi #FIXED Atributt verdien er satt og kan ikke forandres i XML dokumentet. <!ATTLIST sender selskap CDATA #FIXED "Microsoft">

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: <!ENTITY entitet-navn ”entitet-verdi"> <!ENTITY copyright "Copyright Eirik Solend."> <forfatter>&copoyright</forfatter> Syntaks ekstern: <!ENTITY entitet-navn SYSTEM "URI/URL"> <!ENTITY copyright SYSTEM "http://www.osir.hihm.no/sfi/kurs/3ip80/entiteter.txt"> Se eks...

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

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.

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

XMLSchema Innledende eksempler: Vi har sett DTD’en til dette xml dok. 1.<?xml version="1.0" encoding="ISO-8859-1"?> 2.<notat> 3.<til>Tove</til> 4.<fra>Janni</fra> 5.<tittel>Huskelapp</tittel> 6.<melding>Ikke glem avtalen til helgen</melding> 7.</notat> Vi har sett DTD’en til dette xml dok. Her kommer XMLSchema til samme dokument:

XMLSchema <?xml version="1.0"?> <xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema xmlns="http://www.osir.hihm.no/sfi/kurs/3ip80" targetNamespace="http://www.osir.hihm.no/sfi/kurs/3ip80"> <xs:element name="notat"> <xs:complexType> <xs:sequence> <xs:element name="til" type="xs:string"/> <xs:element name=”fra" type="xs:string"/> <xs:element name=”tittel" type="xs:string"/> <xs:element name=”melding" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>

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: <?xml version="1.0" encoding="ISO-8859-1"?> <notat xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="notat.xsd"> <til>Tove</til> <fra>Janni</fra> <tittel>Huskelapp</tittel> <melding>Ikke glem avtalen til helgen</melding> </notat>

XMLSchema <schema> elementet er rot elementet i et XMLSchema. En schema deklarasjon ser ofte slik ut: <xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema targetNamespace =http://www.osir.hihm.no/sfi/kurs/3ip80 xmlns="http://www.osir.hihm.no/sfi/kurs/3ip80"> 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 http://www.w3.org/2001/XMLSchema navnerom, og at elementene og datatypene som kommer fra http://www.w3.org/2001/XMLSchema navnerommet skal ha :xs som prefiks. (denne url har til hensikt å beskrive navnerommet.)

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.

XMLSchema Referanse til et XMLSchema: Første og andre linje: <notat xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="notat.xsd"> 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.