przykładowy dokument xml - ii.pwr.edu.plpietranik/documents/isi/wyklad_5.pdf · dtd - wady (2) •...

of 36 /36
Przykładowy dokument XML

Author: vokien

Post on 01-Mar-2019

213 views

Category:

Documents


0 download

Embed Size (px)

TRANSCRIPT

Przykadowy dokument XML

DTD - wady Ograniczona kontrola nad struktur dokumentw.

Zbyt wysokopoziomowe typy danych: liczby, daty s zawsze reprezentowane jako tekst!

Bardzo oglne metody definiowania czstoci wystpie. Aby okreli, e zwrotka wiersza moe mie od 4 do 8 wersw musimy j zdefiniowa tak:

DTD - wady (2)

Mao obiektowe definicje. Chcielibymy np. zdefiniowa zwrotk w jednym DTD, a nastpnie rozszerzy j w innym bez przepisywania caej definicji.

Inna skadnia

Przykadowy schemat XML

Najwaniejsze dokumenty 1999: dokument W3C opisujcy wymagania stawiane

przed nowym formatem: mechanizmy tworzenia struktury, typy proste i reguy przetwarzania

2001: XML Schema staje si oficjaln rekomendacj W3C: XML Schema Part 0: Primer XML Schema Part 1: Structures XML Schema Part 2: Datatypes

2004: aktualne, drugie wydanie specyfikacji

W wielkim skrcie XML Schema to rozwinicie pomysu DTD

Do definicji typu dokumentu w formacie XML Schema wykorzystywana jest standardowa skadnia XML

Skadniki definicji nale do przestrzeni nazw XML Schema http://www.w3.org/2001/XMLSchema

Caa definicja zawarta jest w elemencie gwnym , wzy i atrybutw definiuje si za pomoc znacznikw i

Typy danych

Typy proste (ang. simple type) odpowiadaj zawartoci bez wewntrznej struktury (bez podelementw ani atrybutw). Mog by przypisywane elementom i atrybutom.

Typy zoone (ang. complex type) mog mie zawarto elementow i wprowadza atrybuty.

Typy proste

Typami prostymi s wszystkie typy wbudowane (np. liczba, napis, bool), jak rwnie typy stworzone na ich bazie.

Typy wbudowane string cig znakw,

boolean warto logiczna (true, false, 0 lub 1),

decimal liczby rzeczywiste o okrelonej dugoci

float 32-bitowa liczba rzeczywista

double 64-bitowa liczba rzeczywista

normalizedString napis, w ktrym kady biay znak jest podczas przetwarzania zastpowany przez spacj,

Typy wbudowane (2) token napis, w ktrym kady cig biaych znakw jest

podczas przetwarzania zastpowany przez jedn spacj, za biae znaki na pocztku i kocu s usuwane,

hexBinary dane binarne zapisane szesnastkowo

integer liczba cakowita z przedziau od -126789 do 126789,

date, time, dateTime, duration, gYearMonth, ...

ID, IDREF, IDREFS, ENTITY, ENTITIES, NOTATION, NMTOKEN, NMTOKENS, CDATA, language, normalizedString, token, uriReference...

Drzewo typw prostych

Typy pierwotne Typ xsd:anyType moe by uyty jawnie do

definiowania zawartoci elementu:

Taka definicja zezwala na dowoln zawarto znakow i elementow.

Podobn funkcj peni typ xsd:anySimpleType, ktry dopuszcza tylko zawarto o typie pierwotnym

Wasne typy proste - fasety minInclusive, maxInclusive, minExclusive, maxExclusive zawaj zakres dozwolonych wartoci liczbowych (wartoci minimalna i maksymalna, przedzia otwarty i domknity)

pattern zgodno z podanym wyraeniem regularnym

enumeration typ wyliczeniowy

list listy wartoci typu prostego (jak NMTOKENS)

union suma teoriomnogociowa wartoci kilku typw,

length, minLength, maxLength odpowiednio wymagana, minimalna lub maksymalna dugo napisu lub listy

Wasne typy proste

Nowy typ prosty tworzymy poprzez uycie elementu

Skorzystanie z fasety wymaga zastosowania w definicji elementu znacznika ograniczajcego typ wskazany atrybutem base lub podany w treci tego elementu.

Wasne typy proste

Wasne typy proste

Wasne typy proste

Typ wyliczeniowy

Ograniczenia Zakres wartoci wyprowadzonego typu prostego

musi by podzbiorem zakresu wartoci typu bazowego.

Listy wartoci

czenie typw

Unie - czenie typw

Unia to poczenie zakresw wartoci kilku typw w jeden nowy zakres. Instancja moe mie przypisan warto nalec do dowolnego z poczonych zakresw wartoci.

Unia - przykad

Unia - przykad

Typy anonimowe i nazwane

Organizacja przestrzeni nazw

Schemat zapisuje si przy pomocy minimum jednego dokumentu schematu.

Schemat deklaruje nazwy nalece do zero lub wicej przestrzeni nazw.

Powizanie schematu z dokumentem

Powizanie schematu z dokumentem skada si z trzech elementw:

deklaracji przestrzeni nazw dla egzemplarza dokumentu zgodnego z XML Schema: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

powiza listy uywanych przestrzeni nazw z URL-ami schematw majcych posuy do walidacji elementw, ktrych nazwy nale do uywanych w dokumencie przestrzeni nazw w atrybucie xsi:schemaLocation

powizania schematu dla elementw nie nalecych do adnej przestrzeni nazw poprzez podanie URL-a schematu w atrybucie xsi:noNamespaceSchemaLocation

Nazwy kwalifikowane i niekwalifikowane

Nazwy kwalifikowane (ang. qualified) nale do pewnej przestrzeni nazw. Mog by poprzedzone prefiksem lub nalee do domylnej przestrzeni nazw.

Nazwy niekwalifikowane (ang. unqualified) nie nale do adnej przestrzeni nazw.

Doczenie schematu do dokumentu

Przestrzenie nazw - prefiksy

Dokumenty schematw Schemat (struktura logiczna) moe by zapisany w

wielu dokumentach schematw (plikach .xsd)

Specyfikacja XML Schema okrela trzy metody czenia dokumentw schematw:

include

import

redefine

Metoda include docza dokument schematu do docelowej przestrzeni nazw gwnego dokumentu schematu.

Doczany dokument musi mie tak sam docelow przestrze nazw jak dokument gwny lub nie mie w ogle docelowej przestrzeni nazw.

i Metoda redefine docza dokument schematu do docelowej przestrzeni nazw gwnego dokumentu schematu z moliwoci przedefiniowania komponentw:

Metoda import docza dokument schematu z innej przestrzeni nazw (inn przestrze nazw):