XML-skjema

XSD (XML Schema Definition) er et skjemaspråk som brukes til å beskrive strukturen og innholdsbegrensningene til XML-dokumenter på en veldig presis måte, utover de syntaktiske reglene som er pålagt av selve XML -språket . På denne måten oppnås en oppfatning av typen dokument med et høyt abstraksjonsnivå. Den ble utviklet av World Wide Web Consortium (W3C) og nådde anbefalingsnivå i mai 2001.

Terminologi

Begrepet "XML Schema" brukes med ulike betydninger innenfor samme dokumentbeskrivelseskontekst, og det er viktig å ta hensyn til følgende hensyn:

  1. "XML Schema" er det offisielle navnet gitt til W3C-anbefalingen, som produserte det første skjemaspråket atskilt fra XML (dokumenttypedefinisjonen ( DTD ) er en del av XML).
  2. Det er vanlig å referere til skjemaer som "XML-skjema" generisk, men det anbefales å bruke begrepet " skjemadokument " eller " skjemadefinisjon " , og reservere "XML-skjema" for navngivning av dette spesifikke språket.
  3. Selv om "XML-skjemaer" brukes generisk, er XSDL ( XML Schema Definition Language ) det tekniske navnet på XML-skjemaspråk som:

W3C Schema XML

World Wide Web Consortium (W3C) begynte arbeidet med XML Schema i 1998. Den første versjonen ble en offisiell anbefaling i mai 2001. En revidert andre utgave har vært tilgjengelig siden oktober 2004 .

Denne anbefalingen er utviklet i tre deler:

(se Eksterne lenker )

Komponenter

XML Schema er et skjemaspråk skrevet i XML , basert på grammatikken og ment å gi større uttrykkskraft enn DTD - er , som er mindre i stand til å beskrive dokumenter på et formelt nivå.

Schema-dokumenter (vanligvis med XML Schema Definition (XSD)-utvidelsen .xsd) ble tenkt som et alternativ til de mer komplekse DTD-ene, og forsøkte å overvinne svakhetene deres og søke nye muligheter når de definerer strukturer for XML-dokumenter. Hovedbidraget til XML Schema er det store antallet datatyper som det inneholder. På denne måten øker XML Schema mulighetene og funksjonalitetene til databehandlingsapplikasjoner, inkludert komplekse datatyper som datoer, tall og strenger.

Komponenttyper

XML Schema-skjemaer overvinner mange av begrensningene og svakhetene til DTD-er. Den ble designet utelukkende rundt navnerom og støtter typiske programmeringsspråkdatatyper , så vel som enkle og komplekse tilpassede typer. Et skjema er definert med dets sluttbruk i tankene.

Navneområder

XML Schema-programmering er basert på navnerom eller navnerom.Vi kan finne en analogi mellom disse og de såkalte pakkene i Java . Hvert navneområde inneholder elementer og attributter som er nært knyttet til navneområdet. Når du definerer et element eller et attributt til et navneområde, vil det derfor alltid opprettes en forbindelse mellom dets forskjellige felt. Denne måten å jobbe på lar oss også relatere elementer som ikke er i samme navneområde.

Etter å ha skrevet et XML-skjema, kan du bekrefte at det er korrekt fullført ved å bruke XML-skjemavalidering: XML-validering .5623

Eksempel

Et eksempel på strukturen til et tomt skjemadokument vil være følgende:

<?xml version="1.0" encoding="ISO-8859-1"?> <xsd:schema xmlns:xsd= "http://www.w3.org/2001/XMLSchema" version= "0.1" xml:lang = "er" > </xsd:schema>

Et eksempel på definisjon med XML Schema vil være følgende:

<?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd= "http://www.w3.org/2001/XMLSchema" > <xsd:element name= "Bok" > <xsd:complexType> <xsd:sequence> <xsd:element name= "Tittel" type= "xsd:string" /> <xsd:element name= "Autors" type= "xsd:string" maxOccurs= "10" /> <xsd:element name= "Publisher" type= "xsd:string" /> </xsd:sequence> <xsd:attribute name= "price" type= "xsd:double" /> </xsd:complexType> </xsd:element> </xsd:schema>

Vi kan se hvordan i begge tilfeller startes deklarasjonene som indikerer hvilken versjon av XML som skal brukes og kodingen som brukes. Disse to feltene er nødvendige for å kunne tolke skjemaet.

Følgende kodelinje erklærer skjemaelementet , roten til skjemadefinisjonsdokumentet . I tillegg er navneområdet der navnene på elementene i dokumentet lever , deklarert . Denne skjemadefinisjonen tilsier at ethvert XML-dokument som samsvarer med det, må ha et rotelement kalt "Book" som vil ha tre barn (nestede elementer) og ett attributt. Barna er «Tittel», «Utgiver» som må vises én gang og «Forfattere» som kan vises fra én til ti ganger. Det at de er gruppert i en sekvens indikerer at elementene må vises i rekkefølge, det vil si først "Tittel", deretter "Forfattere" og til slutt "Utgiver". Alle tre elementene er av typen string . Bokattributtet kalles "pris" og er av typen dobbel .

Se også

Veiledninger

Eksterne lenker