Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Definiowanie typów dokumentów DTD, XML Schema. 2 Tematyka Struktura XML DTD XML Schema.

Podobne prezentacje


Prezentacja na temat: "Definiowanie typów dokumentów DTD, XML Schema. 2 Tematyka Struktura XML DTD XML Schema."— Zapis prezentacji:

1 Definiowanie typów dokumentów DTD, XML Schema

2 2 Tematyka Struktura XML DTD XML Schema

3 3 Struktura XML Deklaracja XML Atrybut Zawartość tekstowa Element główny Element Znacznik początkowy Znacznik końcowy

4 4 Struktura logiczna dokumentu XML zeznanie-sprawcy miejsceautor tresc Jan LeskiSopot Wypadek dniadata o godziniegodzina 13:13 (dzienTygodnia środa... nr="1313/2001" …

5 5 Składnia XML Deklaracja XML: Znaczniki: Znaczniki elementu pustego: Komentarz: Instrukcja przetwarzania: Sekcja CDATA:

6 6 Encje predefiniowane && << >> '' ""

7 7 Unicode Światowy standard kodowania znaków. Odmiany: – UTF-7 (korzysta tylko z 7-bitowego zestawu znaków ASCII) – UTF-8 (pierwsze 128 – ASCII, znak zajmuje od 1 do 6 bajtów) – UTF-16 (każdy znak to 16-bitów) – UTF-32 (każdy znak 32-bity) – UCS-4 (znak zajmuje zawsze 4 bajty) Obowiązkowy standard dla dokumentów XML: – każde narzędzie XML-owe musi wspierać przynajmniej UTF-8 Sposób użycia w dokumentach XML: – jako odpowiedni ciąg bajtów – &# kod ; - kod dziesiętny znaku – &#x kod ; - kod szesnastkowy znaku

8 8 Definiowanie języków XML, SGML Definiowanie języków (zastosowań, struktury dokumentów, typów dokumentów): – określanie zestawu dopuszczalnych elementów, atrybutów definiowanie dopuszczalnej zawartości elementów (tekst, inne elementy) – przypisywanie atrybutów do elementów – inne części Metody definiowania struktury: – dokument XML bez formalnej definicji struktury – DTD – Document Type Definition – XML Schema (rekomendacja W3C z 2 maja 2001)

9 9 Poprawność struktury dokumentu Dokument XML poprawny składniowo każdy element musi być zamknięty: – nie ma nakładających się elementów – wartości atrybutów w apostrofach lub cudzysłowach Dokument XML poprawny strukturalnie – struktura dokumentu zgodna ze strukturą zdefiniowaną w definicji typu dokumentu, – obecne wszystkie wymagane atrybuty

10 10 Modelowanie typów dokumentów Wieloetapowy proces: – analiza struktury modelowanych bytów, – analiza przykładowych dokumentów, – analiza potencjalnych zastosowań dokumentów oraz przypadków użycia, – abstrakcyjny projekt struktury, – kodowanie projektu struktury np. przy pomocy DTD lub XML Schema, – testowanie, – stała adaptacja.

11 11 Projektowanie struktury dokumentów wiersz autor tytuł zwrotka * ? wers *

12 12 DTD – prosty przykład element główny zawartość elementów atrybuty wyrażenia regularne

13 13 Braki DTD Zastosowania XML w integracji aplikacji – struktury danych: – Przeniesienie zadania sprawdzania poprawności tworzonej aplikacji przez narzędzie walidujące – 60% tworzonego kodu dotyczy weryfikacji poprawności danych Cechy DTD: – Mała kontrola nad tekstową zawartością elementów i wartościami atrybutów – Ogólne metody definiowania częstości wystąpień – Nieobiektowe, nierozszerzalne modele struktury

14 14 DTD vs XML Schema Wywodzi się z SGML-a Specyficzna składnia 10 typów danych Zaprojektowany na potrzeby XML Składnia XML 44 wbudowane typy proste Typowy mieszany model zawartości Możliwość definiowania własnych typów danych Brak kontroli tekstowej zawartości elementów Zaawansowana kontrola tekstowej zawartości elementów

15 15 XML Schema 15 lutego 1999: Dokument W3C opisujący wymagania stawiane przed nowym formatem: – mechanizmy tworzenia struktury – typy proste – reguły przetwarzania Przestrzeń nazw XML Schema:

16 16 Elementy i atrybuty

17 17 Kontrola użycia elementów i atrybutów

18 18 Typy Typy wg zasięgu definicji: – typy nazwane – typy anonimowe Typy wg zawartości: – typy proste – typy złożone o zawartości: prostej elementowej mieszanej pustej Typy wg pochodzenia: – typy wbudowane – typy zdefiniowane w schemacie: rozszerzenia innych typów ograniczenia innych typów listy i unie

19 19 Typy nazwane i anonimowe Typy nazwane : Typy anonimowe:

20 20 Typy proste i złożone Typy proste: Typy złożone: Element może mieć typ prosty lub złożony Atrybut może mieć wyłącznie typ prosty

21 21 Typy złożone – typy zawartości Zawartość elementowa: Jan Kowalski Zawartość prosta: 10.55

22 22 Typy złożone – typy zawartości Zawartość mieszana: Zawartość pusta:

23 23 Definiowanie zawartości elementowej Grupy deklaracji elementów: – sequence, choice, all Zagnieżdżanie grup:

24 24 Grupa all – ograniczenia Nie może zawierać innych grup (tylko deklaracje elementów i odwołania do elementów) Każdy element może wystąpić co najwyżej raz Grupa all nie może być zagnieżdżona w innej grupie Zagnieżdżanie grup

25 25 Definiowanie zawartości prostej

26 26 Definiowanie zawartości mieszanej

27 27 Definiowanie zawartości pustej

28 28 Globalne i lokalne deklaracje elementów i atrybutów - lokalne Deklaracje lokalne

29 29 Globalne i lokalne deklaracje elementów i atrybutów - globalne Deklaracje globalne i odwołania

30 30 Elementy a atrybuty Informacje modelowane zwykle w elementach: – zawartość - np. nazwisko, wiek – struktura – np. akt prawny, rozdział – wyszukiwanie - indeks, słowo kluczowe – odesłania – odnośniki, przypisy Informacje modelowane zwykle w atrybutach: – metainformacje – język, format liczb – identyfikatory wartości i odwołania do nich

31 31 Elementy vs atrybuty Zalety elementów: – mogą zawierać inne elementy i atrybuty – mogą się powtarzać – można bezpiecznie rozszerzać ich model zawartości – można dokładnie sterować sposobem ich występowania - kolejność, liczba wystąpień Zalety atrybutów: – szybsze do definiowania – mogą mieć wartości domyślne

32 32 Wartości domyślne i ustalone Przykład 20 powinno być bez VAT

33 33 Przestrzenie nazw Wykorzystanie – Analogiczna nazwa określająca te same elementy w różnych powiązanych dokumentach - wspólnie przetwarzane, zagnieżdżenie jednego w drugim Koncepcja – grupa nazw oddzielona (składniowo i semantycznie) od innych nazw Historia – rekomendacja W3C ze stycznia 1999 r – XML 1.0 (również DTD) nie wspierają przestrzeni nazw – standardy XML Schema, XSL, XLink wspierają przestrzenie nazw

34 34 Nazwy przestrzeni nazw Identyfikatory URI, np: – – – urn:szz:mimuw Nazwy przestrzeni nazw: – nie muszą wskazywać konkretnych zasobów – pełnią funkcję unikatowych identyfikatorów – są porównywane jako napisy - istotna wielkości liter Wykorzystanie w dokumentach XML: – odwzorowanie na kilkuznakowy prefiks – poprzedzanie nazw prefiksem

35 35 Użycie przestrzeni nazw XML Adam Leski Prezes firmy WinPol

36 36 Domyślna przestrzeń nazw Adam Leski Prezes firmy WinPol

37 37 Widoczność przestrzeni nazw Adam Leski WinPol

38 38 Nazwy z prefiksem i bez Nazwy elementów: – kwalifikowane – należą do pewnej przestrzeni nazw poprzedzone prefiksem nie poprzedzone prefiksem, jeśli są w zasięgu deklaracji domyślnej – niekwalifikowane – nie należą do żadnej przestrzeni nazw nie poprzedzone prefiksem, poza zasięgiem deklaracji domyślnej przestrzeni nazw Nazwy atrybutów: – poprzedzone prefiksem – należą do pewnej przestrzeni nazw – nie poprzedzone prefiksem – nie należą do żadnej przestrzeni nazw

39 39 Nazwy elementów bez prefiksów Adam Leski WinPol

40 40 Nazwy atrybutów Jan Kowalski Business Consulting

41 41 Atrybuty - analiza Poprawne Niepoprawne Poprawne

42 42 Przestrzenie nazw a schematy Schemat zapisuje się przy pomocy jednego lub więcej dokumentów schematów Schemat deklaruje nazwy należące do zero lub więcej przestrzeni nazw Dokument schematu deklaruje nazwy należące do zera lub jednej przestrzeni nazw Przestrzeń nazw zawiera nazwy zadeklarowane w zero lub więcej schematach

43 43 Przestrzenie nazw a schematy osoba imię nazwiskoNIP firma nazwa NIP osoby.xsd inst.xsd import

44 44 Dokument schematu......

45 45 Łączenie schematów Schemat zapisuje się przy pomocy jednego lub więcej dokumentów schematów Metody budowania schematu z dokumentów schematów – instrukcje include, import i redefine – lokalizacje dokumentów schematów są określone w egzemplarzu – procesor łączy dokumenty schematów znajdujące się w zdefiniowanych lokalizacjach – lokalizacje dokumentów schematów są przekazywane jako parametry wiersza poleceń

46 46 include Dołączanie dokumentu schematu do docelowej przestrzeni nazw głównego dokumentu schematu... Dołączany dokument musi: – mieć taką samą docelową przestrzeń nazw jak dokument główny, lub – nie mieć docelowej przestrzeni nazw osoba imię nazwisko NIP osoby.xsd firma nazwa REGON inst.xsd

47 47 redefine Dołączanie dokumentu schematu do docelowej przestrzeni nazw głównego dokumentu schematu z możliwością przedefiniowania: – typów prostych i złożonych – nazwanych grup modeli – grup atrybutów osoba imię nazwisko NIP NIPTyp osoby.xsd firma nazwa REGON NIPTyp inst.xsd

48 48 import Odwołanie do komponentów w innej przestrzeni nazw... osoba imię nazwisko NIP osoby.xsd firma nazwa NIP inst.xsd

49 49 Wbudowane typy proste

50 50 Podstawowe typy proste TypPoprawne wartości decimal float, double+24.3e-312 stringosoba Date : Z time13:20: :30:00-05:00 dateTime T13:20:00.887

51 51 Wyprowadzanie typów Wyprowadzanie typów prostych: – ograniczanie – tworzenie list – tworzenie unii Wyprowadzanie typów złożonych: – ograniczanie – rozszerzanie: typów prostych typów złożonych

52 52 Ograniczanie typów prostych Aspekty – minExclusive, minInclusive – maxExclusive, maxInclusive – length, minLength, maxLength – totalDigits, fractionDigits – enumeration – pattern Tylko pattern i enumeration można użyć wielokrotnie w jednej definicji typu

53 53 Ograniczanie typów prostych – przykłady

54 54 Ograniczanie typów prostych Przestrzeń wartości typu wyprowadzonego musi być podzbiorem przestrzeni wartości typu bazowego Typy wbudowane mają określone niektóre aspekty, byte : – minInclusive : -128, – maxInclusive : 127. Przykład – niepoprawne wyprowadzenie

55 55 Listy

56 56 Unie

57 57 Rozszerzenia Wartości typu bazowego nie muszą być poprawnymi wartościami typu wyprowadzonego Rozszerzanie zawartości prostej – dodawanie atrybutów do: – typu prostego – typu złożonego o zawartości prostej Rozszerzanie zawartości złożonej – dodawanie do typu bazowego dodatkowych elementów i/lub atrybutów – elementy dodawane w rozszerzeniu występują zawsze na końcu, po elementach zadeklarowanych w typie bazowym

58 58 Rozszerzanie zawartości prostej

59 59 Rozszerzanie zawartości złożonej

60 60 Ograniczanie typów złożonych Przestrzeń wartości typu wyprowadzonego musi być podzbiorem przestrzeni wartości typu bazowego Dozwolone operacje: – ograniczenie zawartości prostej – ograniczenie atrybutu ograniczenie typu atrybutu zmiana atrybutu opcjonalnego na wymagany ( required ) lub zabroniony ( prohibited ) dodanie, zmiana lub usunięcie wartości domyślnej dodanie wartości ustalonej, jeśli jej nie było – ograniczenie modelu zawartości ściślejsze ograniczenia liczebności ( minOccurs, maxOccurs ) usunięcie elementów opcjonalnych w grupach sequence i all wybranie podzbioru elementów w grupie choice ograniczenie typu poszczególnych podelementów

61 61 Ograniczanie zawartości prostej i atrybutów

62 62 Ograniczanie zawartości złożonej

63 63 Metody modularyzacji schematów Grupy do wielokrotnego wykorzystania – nazwane grupy modeli – grupy atrybutów Grupy zamienne

64 64 Grupy wielokrotnego wykorzystania

65 65 Grupy zamienne

66 66 Grupy zamienne – wykorzystanie

67 67 Więzy integralności Elementy więzów integralności – unique – wartości w ramach określonego zakresu muszą być unikatowe – key - wartości w ramach określonego zakresu muszą być unikatowe i nie mogą być puste – keyref – odwołanie do wartości wskazanego klucza Zalety – można tworzyć wiele niezależnych od siebie ograniczeń – odwołanie wskazuje konkretny klucz – więzy integralności mogą być nałożone na kombinację wartości – więzy integralności mogą być nałożone na zawartość elementów

68 68 Więzy integralności

69 69 Tworzenie schematu XSD za pomocą.NET


Pobierz ppt "Definiowanie typów dokumentów DTD, XML Schema. 2 Tematyka Struktura XML DTD XML Schema."

Podobne prezentacje


Reklamy Google