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

Podobne dokumenty
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, XML Schema. Struktura logiczna dokumentu XML. Składnia XML. Encje predefiniowane.

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

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

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

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

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

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

DTD - encje ogólne i parametryczne, przestrzenie nazw

XML extensible Markup Language. Paweł Chodkiewicz

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

Przykładowy dokument XML

XML DTD XML Schema CSS

Wprowadzenie do technologii XML

c TP: anything: 13 listopada 2004 roku 1

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

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

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

Wprowadzenie do XML. Tomasz Przechlewski

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

Rola języka XML narzędziem

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

XML extensible Markup Language. część 3

XML Extensible Markup Language

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

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

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

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

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

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

Technologie zarządzania treścią

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

Podstawowe konstrukcje Podstawowymi konstrukcjami są wzorce element oraz attribute:

Aplikacje internetowe laboratorium XML, DTD, XSL

INTEGRACJA I EKSPLORACJA DANYCH

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

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

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

XML extensible Markup Language 1

Środowisko XML (Extensible Markup Language).

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

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

Wprowadzenie do XML schema

Podstawy (X)HTML i CSS

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

Kurs HTML 4.01 TI 312[01]

I.Wojnicki, Tech.Inter.

Podstawy XML-a. Zaawansowane techniki programowania

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

Złożone komponenty JSF wg

Technologie zarządzania treścią

Wprowadzenie do XML. Joanna Jędrzejowicz. Instytut Informatyki

XML extensible Markup Language. część 1

Wprowadzenie do technologii XML

PROGRAMOWANIE. WNPiD UAM, Programowanie, inż. Piotr Jabłoński

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

Zaawansowana Pracownia Komputerowa - Ćwiczenia. Krzysztof Miernik

Semistrukturalne bazy danych Wykład dla studentów matematyki

Narzędzia informatyczne w językoznawstwie

Model semistrukturalny

XPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Location paths. Osie (axes)

- 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

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

HTML DOM, XHTML cel, charakterystyka

Podstawy JavaScript ćwiczenia

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

Programowanie internetowe

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)

METAJĘZYKI

Zasady Nazewnictwa. Dokumentów XML Strona 1 z 9

Złożone komponenty JSF wg

XML i nowoczesne metody zarządzania treścią

Aplikacje internetowe laboratorium XML, DTD, XML Schema, XSL

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

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

XML Schema w przykładach

Wykład 1: HTML (XHTML) Michał Drabik

Instrukcja integracji z portalem ogłoszeń praca.24portal.pl

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

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

1 XML w bazach danych

2 Podstawy tworzenia stron internetowych

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI

rk HTML 4 a 5 różnice

Facelets ViewHandler

XML. XML (ang. Extensible Markup Language) - Rozszerzalny język znaczników. Aktualna wersja 1.0 (1.1 czeka na akceptację) Należy do rodziny SGML.

Format HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty

XQuery. XQuery. Przykład. dokument XML. XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation

METODY REPREZENTACJI INFORMACJI

Format danych adnotacji do tytułów wykonawczych przekazywanych do organów egzekucyjnych przez epuap w związku ze zbiegiem egzekucji

Specyfikacja techniczna pliku wymiany danych

Historia kodowania i format plików XML. Jolanta Bachan

Cel ogólny lekcji: Wprowadzenie do tworzenia stron WWW w języku HTML. Wprowadzenie pojęć: strona WWW, język HTML, dokument HTML.

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

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

XML i nowoczesne metody zarządzania treścią

Podstawowe wykorzystanie Hibernate

GML w praktyce geodezyjnej

XML i nowoczesne technologie zarządzania treścią

Transkrypt:

Definiowanie typów dokumentów Część 1. DTD 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 2004-10-14 Definiowanie typów dokumentów część 1: DTD 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... Podstawy składni XML Deklaracja XML: <?xml version="1.0" encoding="utf-8" standalone="no"?> Znaczniki: <tag attributename="attribute-value"> </tag> Znaczniki elementu pustego: <br></br> <br/> 2004-10-14 Definiowanie typów dokumentów część 1: DTD 3 2004-10-14 Definiowanie typów dokumentów część 1: DTD 4 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. Dokument SGML: obowiązkowa definicja struktury DTD. 2004-10-14 Definiowanie typów dokumentów część 1: DTD 5 2004-10-14 Definiowanie typów dokumentów część 1: DTD 6

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, testowanie, pielęgnacja, zarządzanie zmianami. wiersz? * autor tytul zwrotka * wers 2004-10-14 Definiowanie typów dokumentów część 1: DTD 7 2004-10-14 Definiowanie typów dokumentów część 1: DTD 8 DTD prosty przykład <!ELEMENT wiersz (autor, tytul?, zwrotka*)> <!ATTLIST wiersz bialy (tak nie) nie > <!ELEMENT zwrotka (wers)*> Składnia DTD Deklaracja DOCTYPE: <!DOCTYPE name external-id [ declarations Deklaracja elementu: <!ELEMENT name (content-model)> Deklaracja atrybutów: <!ATTLIST element name type default name type default...> element główny zawartość elementów wyrażenia regularne atrybuty 2004-10-14 Definiowanie typów dokumentów część 1: DTD 9 2004-10-14 Definiowanie typów dokumentów część 1: DTD 10 Elementy modelowanie Informacje przenoszone przez elementy: 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), typografia (np. kursywa, Times, półgruby). Modele zawartości elementów Podelementy: Tekst: Mieszany: <!ELEMENT wers (#PCDATA cytat kursywa)*> ANY: <!ELEMENT cytat ANY> EMPTY: <!ELEMENT ilustracja EMPTY> 2004-10-14 Definiowanie typów dokumentów część 1: DTD 11 2004-10-14 Definiowanie typów dokumentów część 1: DTD 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 2004-10-14 Definiowanie typów dokumentów część 1: DTD 13 2004-10-14 Definiowanie typów dokumentów część 1: DTD 14 Typy atrybutów Rodzaje atrybutów 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 unikalny 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 #REQUIRED #IMPLIED #FIXED <!ATTLIST NIP OPIS CDATA #FIXED Numer Identyfikacji Podatkowej > Wartość domyślna <!ATTLIST wiersz bialy (tak nie) nie > 2004-10-14 Definiowanie typów dokumentów część 1: DTD 15 2004-10-14 Definiowanie typów dokumentów część 1: DTD 16 Normalizacja wartości atrybutów Upraszcza tworzenie dokumentów. Kroki normalizacji: usunięcie otaczających cudzysłowów lub apostrofów, zastąpienie referencji do znaków przez odpowiednie znaki, rozwinięcie encji ogólnych, zastąpienie znaków końca wiersza spacjami, dla atrybutów typu NMTOKEN, NMTOKENS, ENTITY, ENTITIES, ID, IDREF, IDREFS: usunięcie wiodących i końcowych spacji, zastąpienie ciągów spacji pojedynczymi spacjami. Fizyczna struktura dokumentu: encje Encja (entity): fizyczna reprezentacja obiektu informacyjnego w systemie, uogólnienie pojęcia plik, jednostka fizycznej budowy dokumentu, uogólnienie pojęcia makro. Dokument plik encja: encja dokumentu (document entity), zawartość dokumentu może znajdować się w wielu encjach (reprezentowanych np. przez pliki). 2004-10-14 Definiowanie typów dokumentów część 1: DTD 17 2004-10-14 Definiowanie typów dokumentów część 1: DTD 18

predefiniowane & & < < > > &apos; ' " " wewnętrzne i zewnętrzne wewnętrzne: DTD: <!ENTITY xml "<term>extensible Markup Language</term>"> Instancja dokumentu: Metajęzyk &xml; wywodzi się z SGML-a. zewnętrzne: DTD: <!ENTITY intro SYSTEM "intro.xml"> <!ENTITY chap1 SYSTEM "chapter1.xml"> <!ENTITY chap2 SYSTEM "chapter2.xml"> Instancja dokumentu: <book> &intro; &chap1; &chap2; </book> 2004-10-14 Definiowanie typów dokumentów część 1: DTD 19 2004-10-14 Definiowanie typów dokumentów część 1: DTD 20 Jak odwoływać się do encji zewnętrznych Identyfikatory zewnętrzne: Identyfikator systemowy: SYSTEM "docbook.dtd" Identyfikator publiczny: PUBLIC "-//OASIS//DTD DocBook V3.1//EN" Odwzorowanie identyfikatorów publicznych na systemowe: plik catalog. Plik catalog Format OASIS (odziedziczony po SGML-u): PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "html40-l/html40-l.dtd" PUBLIC "-//ArborText//DTD Article 950601//EN" "article/article.dtd" Format XCatalog: <XMLCatalog> <Map PublicId= "-//W3C//DTD HTML 4.0 Transitional//EN" HRef="html40-l/html40-l.dtd "/> <Map PublicId= "-//ArborText//DTD Article 950601//EN" HRef="article/article.dtd"/> </XMLCatalog> 2004-10-14 Definiowanie typów dokumentów część 1: DTD 21 2004-10-14 Definiowanie typów dokumentów część 1: DTD 22 parametryczne nieprzetwarzane Wykorzystywane w DTD, np: <!ENTITY % inline "(#PCDATA emph keyword name)*"> <!ELEMENT para %inline;> <!ELEMENT list (list-item)*> <!ELEMENT list-item %inline;> <!ELEMENT definition (%inline; defined-word)*> Zewnętrzne encje parametryczne modularyzacja DTD, np: <!ENTITY % calstbls PUBLIC "-//ArborText//ELEMENTS CALS Table Structures//EN"> %calstbls; Odwołania do obiektów nieprzetwarzanych przez parser XML (grafiki, dźwięku, plików binarnych, itp.) W DTD: deklaracja notacji: <!NOTATION GIF SYSTEM "gifmagic.exe"> deklaracja atrybutu encyjnego: <!ELEMENT pic EMPTY> <!ATTLIST pic name ENTITY #REQUIRED> deklaracja encji nieprzetwarzanej: <!ENTITY logo SYSTEM "logo.gif" NDATA "GIF"> W instancji dokumentu: odwołanie do encji: <pic name="logo"/> 2004-10-14 Definiowanie typów dokumentów część 1: DTD 23 2004-10-14 Definiowanie typów dokumentów część 1: DTD 24

podsumowanie Gdzie umieścić DTD? wewnętrzne zewnętrzne przetwarzane ogólne nieprzetwarzane parametryczne przetwarzane nieprzetwarzane W encji dokumentu: <!ATTLIST wiersz bialy (tak nie) "nie"> <!ELEMENT zwrotka (wers)*> <autor>william Shakespeare</autor> <tytul>sonet CCII</tytul> <zwrotka>...</zwrotka> 2004-10-14 Definiowanie typów dokumentów część 1: DTD 25 2004-10-14 Definiowanie typów dokumentów część 1: DTD 26 Gdzie umieścić DTD? W zewnętrznej encji: wiersz.dtd <!ATTLIST wiersz bialy (tak nie) "nie"> <!ELEMENT zwrotka (wers)*> sonet.xml <!DOCTYPE wiersz SYSTEM "wiersz.dtd"> <autor>william Shakespeare</autor> <tytul>sonet CCII</tytul> <zwrotka>...</zwrotka> 2004-10-14 Definiowanie typów dokumentów część 1: DTD 27 Gdzie umieścić DTD? Połączenie obu metod: wiersz.dtd <!ATTLIST wiersz bialy (tak nie) "nie"> <!ELEMENT zwrotka (wers)*> Zewnętrzny podzbiór DTD sonet.xml <!DOCTYPE wiersz SYSTEM "wiersz.dtd" [ <!ENTITY ws "William Shakespeare"> <!ATTLIST wiersz rodzaj #IMPLIED> Wewnętrzny podzbiór DTD <wiersz rodzaj="sonet"> <autor>&ws;</autor> <tytul>sonet CCII</tytul> <zwrotka>...</zwrotka> 2004-10-14 Definiowanie typów dokumentów część 1: DTD 28 Zewnętrzny i wewnętrzny podzbiór DTD Zewnętrzny podzbiór DTD: deklaracje wspólne dla wszystkich dokumentów danego typu: elementy, atrybuty, encje parametryczne. Wewnętrzny podzbiór DTD: deklaracje lokalne dla dokumentu: deklaracje encji, deklaracje notacji. Zaawansowane możliwości wewnętrznego podzbioru DTD: przedefiniowywanie encji parametrycznych, przedefiniowywanie atrybutów, dodawanie nowych atrybutów, sekcje warunkowe. Zaawansowana składnia XML Komentarz: <!-- komentarz --> Instrukcja przetwarzania: <?target processing-instruction-body?> Sekcja CDATA: <![CDATA[dowolny <tekst " nieprzetwarzany & przez [ parser] Odwołania do znaków: kody zgodne ze standardem ISO/IEC 10646. 2004-10-14 Definiowanie typów dokumentów część 1: DTD 29 2004-10-14 Definiowanie typów dokumentów część 1: DTD 30

Unicode Światowy standard kodowania narodowych znaków przy pomocy dwubajtowych par: podzbiór ISO/IEC 10646. Odmiany: UTF-7, UTF-8 (pierwsze 128 - ASCII), UTF-16. Obowiązkowy standard dla dokumentów XML: każde narzędzie XML-owe musi wspierać przynajmniej UTF-8. Gdzie szukać dalej DTD Tutorial www.xmlfiles.com/dtd Arbortext, If You Can Name It, You Can Claim It! www.arbortext.com/html/issue_three.html Megginson, D., Structuring XML Documents, Prentice Hall, 1998 Dmoch, A., Zioło, Sz., i pliki catalog, czyli fizjologia XML-a, Software 2.0 nr 6/2004, Wydawnictwo Software 2004-10-14 Definiowanie typów dokumentów część 1: DTD 31 2004-10-14 Definiowanie typów dokumentów część 1: DTD 32