Dzisiaj kontynuujemy tworzenie schematów (XML Schema)

Zad 1 (patterns)

Wzorując się na przykładzie z wykładu ,

korzystając wielkrotnie z ustalenia wzorca napisz

schemat który dopuszcza następujące numery telefonu:

<telefon> 0870 55 512 12 </telefon>
<telefon> +48 141 555 1212 </telefon>
<telefon> (58) 555-1212 </telefon>

przykład:

<xsd: simpleType name="telefon">
<xsd: restriction base="xsd:string">
<xsd: pattern value="\(\d{3}\)\s\d{3}-\d{4}">
</xsd: restriction>
</xsd: simpleType>

opisuje element xml:

<telefon> (123) 456-7891<telefon>

Aby uzyskać ten sam efekt dla 3 telefonów na raz, możesz albo wpisać pod rząd 3 razy pattern value= ..., albo w jednym pattern pisać wzorce oddzielone kreską |

Zad 2 (listy)

Wzorując się na przykładzie do wykładu lotek xsd zaprezentuj tworzenie typu za pomocą list , pisząc schemat dla elementu

<wyniki_skokow> 115 120 108 117 </wyniki_skokow>

Przyjmij że wyników jest co najwyżej 4, a długość skoku jest ograniczona z dołu przez 0, a z góry przez długość skoczni czyli 130.

Zad 3 (unie)

Wzorując się na przykładzie do wykładu stawkiVat.xsd zaprezentuj tworzenie typu wyn_skok za pomocą unii dwóch typów nienazwanych, pisząc schemat dla elementów

<wyniki_skokow> 115 <wyniki_skokow>

<wyniki_skokow> 18.5 <wyniki_skokow>

<wyniki_skokow> 118 <wyniki_skokow>

<wyniki_skokow> 17.0 <wyniki_skokow>

gdzie wyniki zawierają się w przedziale od 0 do 130 a punktacja to liczby rzeczywiste od 0 do 20

Zad 4

Napisz schemat dla natępującego fragmentu xml:

<osoba plec="m">
	Jan
</osoba>

użyj w tym celu elementu simpleContent

Zad 5

Napisz możliwie najbardziej restrykcyjny schemat dla pliku xml dotyczącego opisu galerii (zadanie 1 z zajęć) Sprawdź czy plik xml jest zgodny ze schematem przez wpisanie

xmllint --schema twoj_plik.xsd twoj_plik.xml

UWAGA: Zad 5,6 możesz wykonać nie używając przestrzeni nazw, tj wpisując

w pliku xml:

< xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance"
 xsd:noNamespaceSchemaLocation="nazwa_pliku.xsd" >


w pliku nazwa_pliku.xsd:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">

Zad 6

Napisz schemat dla pliku xml Ł. Pankowskiego z drugich zajęć:

zadanie Jak powyżej, sprawdź czy xml jest zgodny ze schematem