Jak wygląda XML? Definiowanie typów dokumentów Część 1. DTD, XML Schema. Struktura logiczna dokumentu XML. Składnia XML. Encje predefiniowane.

Podobne dokumenty
Jak wygląda XML? Definiowanie typów dokumentów Część 1. DTD, XML Schema. Struktura logiczna dokumentu XML. Składnia XML. Encje predefiniowane.

Jak wygląda XML? Definiowanie typów dokumentów. Struktura logiczna dokumentu XML. Podstawy składni XML. Definiowanie języków. Poprawność dokumentów

Jak wygląda XML? Definiowanie typów dokumentów Część 1. DTD. Struktura logiczna dokumentu XML. Podstawy składni XML. Definiowanie języków

Definiowanie typów dokumentów Część 1. DTD, XML Schema

XML Schema. Motywacja, struktura schematu, typy złożone. Patryk Czarnik. Instytut Informatyki UW

Przykładowy dokument XML

Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema. Elementy czy atrybuty? Wartości domyślne i ustalone. Elementy czy atrybuty?

Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema

Dokument poprawnie sformułowany jest zgodny z ogólnymi zasadami składniowymi:

XML DTD XML Schema CSS

XML w sosie własnym. Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik. Instytut Informatyki UW

XML Schema. Motywacja, struktura schematu, typy złożone. Patryk Czarnik. Instytut Informatyki UW

Dlaczego DTD nie wystarcza? Definiowanie typów dokumentów Część 2. XML Schema. Status XML Schema. DTD XML Schema. Definiowanie elementów i atrybutów

XML w sosie własnym. Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik. Instytut Informatyki UW

Kurs WWW Język XML, część I

Język XML Schema. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Rola języka XML narzędziem

XML Schema w przykładach

XML extensible Markup Language. Paweł Chodkiewicz

extensible Markup Language, cz. 4 Marcin Gryszkalis, mg@fork.pl

- wewnątrz elementów prostych występuje tylko jeden typ danych, wewnątrz złoŝonych nie moŝemy dokładnie określić liczby wystąpień elementu

LAB 7. XML EXtensible Markup Language - Rozszerzalny Język Znaczników XSD XML Schema Definition Definicja Schematu XML

Plan dzisiejszego wykładu. Narzędzia informatyczne w językoznawstwie. XML - Definicja. Zalety XML

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 02

Wprowadzenie do technologii XML

29. Poprawność składniowa i strukturalna dokumentu XML

WYKŁAD 2 DTD DOCUMENT TYPE DEFINITION CZĘŚĆ 1

XML i nowoczesne metody zarządzania treścią

Plan prezentacji DTD. Wiązanie DTD z dokumentem XML Deklaracja typu dokumentu. Co to jest DTD. Wstęp. Przedmiot: XML i jego zastosowania

XML extensible Markup Language. część 3

Wprowadzenie do XML schema

XML Extensible Markup Language

Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema

Podstawy języka XML. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

XML Schema. Typy proste, wyprowadzanie typów, modularyzacja schematu. Patryk Czarnik. Instytut Informatyki UW

LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT

DTD - encje ogólne i parametryczne, przestrzenie nazw

XML Schema. Bartłomiej Świercz. Łódź, 19 listopada 2005 roku. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz XML Schema

Symbole wieloznaczne w XML Schema. Definiowanie typów dokumentów Część 4. XML Schema, RELAX NG, Schematron. Schematron

UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Extensible Markup Language (XML) Wrocław, Java - technologie zaawansowane

Dokumenty SEDU składają się z dwóch części: Opisu sprawy Formularza elektronicznego

Technologie zarządzania treścią

(Dz. U. z dnia 17 listopada 2006 r.)

extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl

WYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1

c TP: anything: 13 listopada 2004 roku 1

XML i nowoczesne metody zarządzania treścią

Technologie zarządzania treścią

Załączniki do rozporządzenia Ministra Finansów z dnia 2011 r. (poz. ) Załącznik nr 1. Struktura logiczna urzędowego poświadczenia odbioru

XML extensible Markup Language. część 4

Schematy XML. Tomasz Traczyk.

Aplikacje internetowe laboratorium XML, DTD, XSL

Zasady Nazewnictwa. Dokumentów XML Strona 1 z 9

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI

Podstawowe konstrukcje Podstawowymi konstrukcjami są wzorce element oraz attribute:

Wprowadzenie do XML. Tomasz Przechlewski

Środowisko XML (Extensible Markup Language).

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI

Egzamin z przedmiotu Projektowanie języków XML imię i nazwisko. Zadanie Suma Punkty Max Punkty

Wprowadzenie do technologii XML

INTEGRACJA I EKSPLORACJA DANYCH

XML extensible Markup Language 1

Aplikacje internetowe laboratorium XML, DTD, XML Schema, XSL

Semistrukturalne bazy danych Wykład dla studentów matematyki

Warszawa, dnia 5 stycznia 2012 r. Pozycja 18 ROZPORZĄDZENIE MINISTRA FINANSÓW 1) z dnia 3 stycznia 2012 r.

XHTML - Extensible Hypertext Markup Language, czyli Rozszerzalny Hipertekstowy Język Oznaczania.

Wprowadzenie do XML. Joanna Jędrzejowicz. Instytut Informatyki

XML Schema. Alternatywne metody definiowania struktury dokumentów. Patryk Czarnik. Instytut Informatyki UW

Zasady budowy i przekazywania komunikatów wykorzystywanych w Systemie IT KDPW_CCP

XML i nowoczesne metody zarządzania treścią

Załącznik nr 14 Struktura logiczna korekty informacji podsumowującej o dokonanych wewnątrzwspólnotowych dostawach/nabyciach towarów (VAT-UEK)

XML Schema. Forma nazwy lokalnych elementów i atrybutów

BAZY DANYCH. Dr hab. Sławomir Zadrożny, prof. PR

Zasady budowy i przekazywania komunikatów XML dla rynku OTC w systemie KDPW_CCP

Definiowanie typów dokumentów Część 3. XML Schema

Model semistrukturalny

XML extensible Markup Language. część 1

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI

PL URZĄD MIASTA SZCZECIN N NOF WPiOL/1111/W/123456/2013 KOWALSKI JAN, FELCZAKA 1A SZCZECIN PLN

Programowanie internetowe

Rzeszów, dnia 18 czerwca 2015 r. Poz UCHWAŁA NR IX RADY MIEJSKIEJ W BOGUCHWALE. z dnia 28 maja 2015 r.

Rozdział 1 Cel dokumentu Rozdział 2 Deklaracja Rozdział 3 Nagłówek Rozdział 4 Podmiot Rozdział 5 FATCA...

Spis treści Informacje podstawowe Predykaty Przykłady Źródła RDF. Marek Prząda. PWSZ w Tarnowie. Tarnów, 6 lutego 2009

XML a białe znaki. Poprawne modele zawartości. Zarządzanie zmianami struktury. Model błędnej zawartości (1) Model błędnej zawartości (2)

XML i nowoczesne metody zarządzania treścią

METAJĘZYKI

Zasady budowy i przekazywania komunikatów XML w systemie kdpw_otc

rk HTML 4 a 5 różnice

Integracja Obieg Dokumentów - GiS Spis treści

Język programowania DELPHI / Andrzej Marciniak. Poznań, Spis treści

Załączniki do rozporządzenia Ministra Finansów z dnia marca 2008 r. (poz. )

Specyfikacja techniczna pliku wymiany danych

E.14.1 Tworzenie stron internetowych / Krzysztof T. Czarkowski, Ilona Nowosad. Warszawa, Spis treści

Zasady budowy i przekazywania komunikatów XML w systemie kdpw_otc

Stwórz dokument XML zawierający poniższe informacje. Wykorzystaj atrybuty.

XML i nowoczesne technologie zarządzania treścią

Specyfikacja HTTP API. Wersja 1.6

Szczecin, r. Copyright (c) 2015 Izba Skarbowa w Szczecinie. Izba Skarbowa w Szczecinie

Ogólny schemat prostego formularza: A może lepiej zamiast przycisku opartego o input tak:

Transkrypt:

Definiowanie typów dokumentów Część 1. DTD, XML Schema Jak wygląda XML? <?xml version= 1.0?> <zeznanie-sprawcy nr= 1313/2001 > <autor>st. asp. Jan Łapówka</autor> <miejsce>dołowice Górne</miejsce> <treść>wypadek dnia <data>13.10.2001r</data> o godzinie <godzina>13:13</godzina> (<dzien-tygodnia>piątek </dzien-tygodnia>) miał miejsce nie z mojej winy. <poszkodowany>alojzy M.</poszkodowany> nie miał żadnego pomysłu w którą stronę uciekać, więc go przejechałem.</treść> </zeznanie-sprawcy> Deklaracja XML Element główny Atrybut Element Znacznik początkowy Znacznik końcowy Zawartość tekstowa 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 2 Struktura logiczna dokumentu XML autor zeznanie-sprawcy miejsce nr="1313/2001" st. asp. Jan Łapówka Dołowice Górne Wypadek dnia data 13.10.2001 o godzinie ( <?xml version= 1.0?> <zeznanie-sprawcy nr= 1313/2001 > <autor>st. asp. Jan Łapówka</autor> <miejsce>dołowice Górne</miejsce> <treść>wypadek dnia <data>13.10.2001r</data> o godzinie <godzina>13:13</godzina> (<dzien-tygodnia>piątek </dzien-tygodnia>) miał miejsce nie z mojej winy. <poszkodowany>alojzy M.</poszkodowany> nie miał żadnego pomysłu w którą stronę uciekać, więc go przejechałem.</treść> </zeznanie-sprawcy> treść godzina 13:13 dzien-tygodnia piątek... Składnia XML Deklaracja XML: <?xml version="1.0" encoding="utf-8" standalone="yes"?> Znaczniki: <tag attributename="attribute value"> </tag> Znaczniki elementu pustego: <br></br> <br/> Komentarz: <!-- komentarz --> Instrukcja przetwarzania: <?target processing-instruction-body?> Sekcja CDATA: <![CDATA[dowolny <tekst " nieprzetwarzany & przez [ parser]]> 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 3 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 4 Encje predefiniowane & & < < > > &apos; ' " " 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 jedno lub dwa słowa 16-bitowe), UTF-32 (każdy znak to jedno słowo 32-bitowe), 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, &#xkod; - kod szesnastkowy znaku. 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 5 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 6

Definiowanie języków XML, SGML metajęzyki. 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,... Metody definiowania struktury: dokument XML bez formalnej definicji struktury, DTD Document Type Definition, XML Schema (rekomendacja W3C z 2 maja 2001), Relax NG. Poprawność dokumentów Dokument XML poprawny składniowo (ang. well-formed): 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 (ang. valid): struktura dokumentu zgodna ze strukturą zdefiniowaną w definicji typu dokumentu, obecne wszystkie wymagane atrybuty. 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 7 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 8 Modelowanie typów dokumentów Projektowanie struktury dokumentów Wieloetapowy proces analityczno-projektowy: 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, pielęgnacja, zarządzanie zmianami. wiersz? autor tytuł zwrotka wers 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 9 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 10 DTD prosty przykład Modele zawartości elementów <!DOCTYPE wiersz [ <!ELEMENT wiersz (autor, tytul?, zwrotka)> <!ATTLIST wiersz bialy (tak nie) nie > <!ELEMENT autor (#PCDATA)> <!ELEMENT tytul (#PCDATA)> <!ELEMENT zwrotka (wers)> <!ELEMENT wers (#PCDATA)> ]> element główny zawartość elementów wyrażenia regularne atrybuty Podelementy: <!ELEMENT wiersz (autor, tytul, zwrotka)> Tekst: <!ELEMENT autor (#PCDATA)> Mieszany: <!ELEMENT wers (#PCDATA cytat kursywa)> ANY: <!ELEMENT cytat ANY> EMPTY: <!ELEMENT ilustracja EMPTY> 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 11 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 12

Budowanie modeli zawartości Znana notacja: + jeden lub więcej zero lub więcej, sekwencja alternatywa? opcjonalny Fragment zawartości (content particle) wyrażenie zbudowane z połączonych spójnikami: nazw elementów, #PCDATA, fragmentów zawartości. Fragmenty zawartości przykład <!ELEMENT słownik (hasło, (znaczenie definicja), etymologia?) > słownik? hasło etymologia znaczenie definicja 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 13 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 14 Rodzaje atrybutów Typy atrybutów #REQUIRED <!ATTLIST osoba PESEL CDATA #REQUIRED> #IMPLIED <!ATTLIST wiadomość ważna-do CDATA #IMPLIED> #FIXED <!ATTLIST NIP opis CDATA #FIXED "Numer Identyfikacji Podatkowej"> Wartość domyślna <!ATTLIST wiersz bialy (tak nie) "nie"> CDATA NMTOKEN NMTOKENS ID IDREF IDREFS ENTITY ENITIES (a b c) ciąg znaków ciąg znaków mogących występować w nazwach atrybutów i elementów ciąg NMTOKEN oddzielanych spacjami identyfikator unikatowy w dokumencie wskaźnik do ID innego elementu ciąg IDREF oddzielany spacjami nazwa encji (musi być zadeklarowana) ciąg ENTITY oddzielany spacjami typ wyliczeniowy 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 15 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 16 Dlaczego DTD nie wystarcza? DTD XML Schema Zastosowania XML-a w integracji aplikacji struktury danych: przeniesienie zadania sprawdzania poprawności z tworzonej aplikacji na narzędzie walidujące daje spore oszczędności, 60% tworzonego kodu dotyczy weryfikacji poprawności danych. Roger L. Costello, XML Schema Tutorial Cechy DTD: niemal brak kontroli nad tekstową zawartością elementów i wartościami atrybutów, bardzo ogólne metody definiowania częstości wystąpień, mało obiektowe, nierozszerzalne modele struktury. Wywodzi się z SGML-a Specyficzna składnia 10 typów danych Brak kontroli tekstowej zawartości elementów Typowy mieszany model zawartości Zaprojektowany na potrzeby XML-a Składnia XML 44 wbudowane typy proste Zaawansowana kontrola tekstowej zawartości elementów Możliwość definiowania własnych typów danych 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 17 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 18

Status XML Schema 15 lutego 1999: Dokument W3C opisujący wymagania stawiane przed nowym formatem: mechanizmy tworzenia struktury, typy proste, reguły przetwarzania. 2 maja 2001: XML Schema staje się oficjalną rekomendacją W3C: XML Schema Part 0: Primer, XML Schema Part 1: Structures, XML Schema Part 2: Datatypes. Obecnie: trwają prace nad wymaganiami do wersji 1.1 XML Schema. Przestrzeń nazw XML Schema: http://www.w3.org/2001/xmlschema Deklarowanie elementów i atrybutów <xsd:element name="nazwisko" type="xsd:string"/> <xsd:element name="plec" type="xsd:string"/> <xsd:element name="wiek" type="xsd:string"/> <xsd:attribute name="id" type="xsd:id"/> 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 19 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 20 Określanie typu elementu/atrybutu Atrybut type: Podelement complextype lub simpletype:... Kontrola użycia elementów i atrybutów <xsd:element name="imie" type="xsd:string" minoccurs="1" maxoccurs="2"/> <xsd:element name="nazwisko" type="xsd:string"/> <xsd:element name="plec" type="xsd:string"/> <xsd:element name="wiek" type="xsd:string"/> <xsd:attribute name="id" type="xsd:id" use="required"/> 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 21 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 22 Globalne i lokalne deklaracje elementów i atrybutów Deklaracje lokalne: <xsd:complextype name="osobatyp"> <xsd:element name="imie" type="xsd:string" minoccurs="1" maxoccurs="2"/> <xsd:element name="nazwisko" type="xsd:string"/> <xsd:attribute name="nip" type="niptyp" use="required"/> Globalne i lokalne deklaracje elementów i atrybutów Deklaracje globalne i odwołania do nich: <xsd:element name="nazwisko" type="xsd:string"/> <xsd:complextype name="osobatyp"> <xsd:element ref="imie" minoccurs="1" maxoccurs="2"/> <xsd:element ref="nazwisko"/> <xsd:attribute ref="nip" use="required"/> 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 23 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 24

Elementy czy atrybuty? Informacje modelowane zwykle w elementach: zawartość (elementy semantyczne, np. nazwisko, nazwa leku, adres), struktura (np. rozdział, akapit, tytuł, lista), wyszukiwanie (np. termin do indeksu, glosariusza, a także elementy dedykowane), odesłania (np. hiperlinki, noty, przypisy). Informacje modelowane zwykle w atrybutach: metadane (np. jednostka miary, waluta, język, priorytet), identyfikatory wartości i odwołania do nich. Elementy czy atrybuty? Zalety elementów: mogą zawierać inne elementy i atrybuty, mogą się powtarzać, można bezpiecznie rozszerzać ich model zawartości, np. dodając atrybuty, można dokładnie sterować sposobem ich występowania (kolejnością, liczbą wystąpień, itp.) Zalety atrybutów: są bardziej zwięzłe, mogą być automatycznie dodawane do elementów, jeśli mają wartości domyślne. 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 25 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 26 Gdzie szukać dalej DTD Tutorial www.xmlfiles.com/dtd Megginson, D., Structuring XML Documents, Prentice Hall, 1998 W3C Architecture Domain: XML Schema www.w3.org/xml/schema Costello, R., XML Schema Tutorial www.xfront.com/xml-schema.html Walmsley, P., Definitive XML Schema, Prentice Hall PTR, 2002 2005-10-13 Definiowanie typów dokumentów część 1: DTD, XML Schema 27