Przykładowy dokument XML

Podobne dokumenty
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 Schema. Typy proste, wyprowadzanie typów, modularyzacja schematu. Patryk Czarnik. Instytut Informatyki UW

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

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

XML Schema w przykładach

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.

XML i nowoczesne metody zarządzania treścią

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

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

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

Zasady Nazewnictwa. Dokumentów XML Strona 1 z 9

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

Schematy XML. Tomasz Traczyk.

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI

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

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

Plan prezentacji. XML Schema Definition Language (XSD) Zalety i wady Schematów XML. Ogólna charakterytyka XML Schema. Wstęp

- 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

Schema Schemat_JPK_PKPIR_v1-0.xsd

Wprowadzenie do XML schema

XML extensible Markup Language. część 4

Podstawowe konstrukcje Podstawowymi konstrukcjami są wzorce element oraz attribute:

XML extensible Markup Language. część 3

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

Wprowadzenie do technologii XML

DTD - encje ogólne i parametryczne, przestrzenie nazw

XML i nowoczesne metody zarządzania treścią

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

Wykład 2 xaml, cz Czym jest xml?

XML DTD XML Schema CSS

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

Implementacja schematów i statycznej kontroli typów w systemie JLoXiM

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

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

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

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

D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?

Oczywiście plik musi mieć rozszerzenie *.php

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

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych:

Rola języka XML narzędziem

MATERIAŁY DO ZAJĘĆ II

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

XML i nowoczesne technologie zarządzania treścią

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

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

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

2 Przygotował: mgr inż. Maciej Lasota

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

Wstęp do programowania. Różne różności

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

Podstawy i języki programowania

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

Java Podstawy. Michał Bereta

Na podstawie artykułu:

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

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

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

Algorytmy i struktury danych. wykład 1

XML i nowoczesne metody zarządzania treścią

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

Laboratorium 1. Wprowadzenie do protokołu SNMP i kodowanie BER (ASN.1)

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

XML i nowoczesne technologie zarządzania treścią 2007/08

Projektowanie bazy danych. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Kodowanie informacji. Przygotował: Ryszard Kijanka

MINISTERSTWO SPRAW WEWNĘTRZNYCH I ADMINISTRACJI DEPARTAMENT INFORMATYZACJI

Powtórka algorytmów. Wprowadzenie do języka Java.

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

Ref. 7 - Język SQL - polecenia DDL i DML

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Wprowadzenie do XML. Tomasz Przechlewski

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

MINISTERSTWO FINANSÓW PLAN INTEGRACJI SYSTEMU ZAŁĄCZNIK NR 6 SEAP SPECYFIKACJA KANAŁ DLA PODMIOTÓW ZEWNĘTRZNYCH PL PROJEKT ECIP/SEAP

XML extensible Markup Language. Paweł Chodkiewicz

Definicja obiektowego modelu danych: struktura i zachowanie

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Dlaczego GML? Gdańsk r. Karol Stachura

BEAN VALIDATION. Waldemar Korłub. Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska

Powtórka algorytmów. Wprowadzenie do języka Java.

Paweł Kurzawa, Delfina Kongo

2 Przygotował: mgr inż. Maciej Lasota

Mikrokontroler ATmega32. Język symboliczny

Model semistrukturalny

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 2. Programowanie komputerowe

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016

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

Definicja struktury danych XSD dla opisu wzorów dokumentów elektronicznych przyjmowanych w Centralnym Repozytorium Dokumentów

LibreOffice Calc VBA

Bloki anonimowe w PL/SQL

Programowanie Komputerów

Wykład 2 Składnia języka C# (cz. 1)

MySQL. Darmowa baza danych. Æwiczenia praktyczne

Technologie zarządzania treścią

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Transkrypt:

Przykładowy dokument XML

DTD - wady Ograniczona kontrola nad strukturą dokumentów. Zbyt wysokopoziomowe typy danych: liczby, daty są zawsze reprezentowane jako tekst! Bardzo ogólne metody definiowania częstości wystąpień. Aby określić, że zwrotka wiersza może mieć od 4 do 8 wersów musimy ją zdefiniować tak: <!ELEMENT zwrotka (wers, wers, wers, wers, wers?, wers?, wers?, wers?)>

DTD - wady (2) Mało obiektowe definicje. Chcielibyśmy np. zdefiniować zwrotkę w jednym DTD, a następnie rozszerzyć ją w innym bez przepisywania całej definicji. Inna składnia

Przykładowy schemat XML

Najważniejsze dokumenty 1999: dokument W3C opisujący wymagania stawiane przed nowym formatem: mechanizmy tworzenia struktury, typy proste i reguły 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 skrócie XML Schema to rozwinięcie pomysłu DTD Do definicji typu dokumentu w formacie XML Schema wykorzystywana jest standardowa składnia XML Składniki definicji należą do przestrzeni nazw XML Schema http://www.w3.org/2001/xmlschema Cała definicja zawarta jest w elemencie głównym <xsd:schema>, węzły i atrybutów definiuje się za pomocą znaczników <xsd:element> i <xsd:attribute>

Typy danych Typy proste (ang. simple type) odpowiadają zawartości bez wewnętrznej struktury (bez podelementów ani atrybutów). Mogą być przypisywane elementom i atrybutom. Typy złożone (ang. complex type) mogą mieć zawartość elementową i wprowadzać atrybuty.

Typy proste Typami prostymi są wszystkie typy wbudowane (np. liczba, napis, bool), jak również typy stworzone na ich bazie. <xsd:element name="definicja" type= xsd:string"/> W DTD odpowiada to definicji: <!ELEMENT definicja (#PCDATA)>

Typy wbudowane string ciąg znaków, boolean wartość logiczna (true, false, 0 lub 1), decimal liczby rzeczywiste o określonej długości float 32-bitowa liczba rzeczywista double 64-bitowa liczba rzeczywista normalizedstring napis, w którym każdy biały znak jest podczas przetwarzania zastępowany przez spację,

Typy wbudowane (2) token napis, w którym każdy ciąg białych znaków jest podczas przetwarzania zastępowany przez jedną spację, zaś białe znaki na początku i końcu są usuwane, hexbinary dane binarne zapisane szesnastkowo integer liczba całkowita z przedziału od -126789 do 126789, date, time, datetime, duration, gyearmonth,... ID, IDREF, IDREFS, ENTITY, ENTITIES, NOTATION, NMTOKEN, NMTOKENS, CDATA, language, normalizedstring, token, urireference...

Drzewo typów prostych

Typy pierwotne Typ xsd:anytype może być użyty jawnie do definiowania zawartości elementu: <xsd:element name="fragmentkodu" type="xsd:anytype"/> Taka definicja zezwala na dowolną zawartość znakową i elementową. Podobną funkcję pełni typ xsd:anysimpletype, który dopuszcza tylko zawartość o typie pierwotnym

Własne typy proste - fasety mininclusive, maxinclusive, minexclusive, maxexclusive zawężają zakres dozwolonych wartości liczbowych (wartości minimalna i maksymalna, przedział otwarty i domknięty) pattern zgodność z podanym wyrażeniem regularnym enumeration typ wyliczeniowy list listy wartości typu prostego (jak NMTOKENS) union suma teoriomnogościowa wartości kilku typów, length, minlength, maxlength odpowiednio wymagana, minimalna lub maksymalna długość napisu lub listy

Własne typy proste Nowy typ prosty tworzymy poprzez użycie elementu <xsd:simpletype> Skorzystanie z fasety wymaga zastosowania w definicji elementu znacznika <xsd:restriction> ograniczającego typ wskazany atrybutem base lub podany w treści tego elementu.

Własne typy proste

Własne typy proste

Własne typy proste

Typ wyliczeniowy

Ograniczenia Zakres wartości wyprowadzonego typu prostego musi być podzbiorem zakresu wartości typu bazowego.

Listy wartości

Łączenie typów

Unie - łączenie typów Unia to połączenie zakresów wartości kilku typów w jeden nowy zakres. Instancja może mieć przypisaną wartość należącą do dowolnego z połączonych zakresów wartości.

Unia - przykład

Unia - przykład

Typy anonimowe i nazwane

Organizacja przestrzeni nazw Schemat zapisuje się przy pomocy minimum jednego dokumentu schematu. Schemat deklaruje nazwy należące do zero lub więcej przestrzeni nazw.

Powiązanie schematu z dokumentem Powiązanie schematu z dokumentem składa się z trzech elementów: deklaracji przestrzeni nazw dla egzemplarza dokumentu zgodnego z XML Schema: xmlns:xsi="http:// www.w3.org/2001/xmlschema-instance" powiązań listy używanych przestrzeni nazw z URL-ami schematów mających posłużyć do walidacji elementów, których nazwy należą do używanych w dokumencie przestrzeni nazw w atrybucie xsi:schemalocation powiązania schematu dla elementów nie należących 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 należeć do domyślnej przestrzeni nazw. Nazwy niekwalifikowane (ang. unqualified) nie należą do żadnej przestrzeni nazw.

Dołączenie schematu do dokumentu

Przestrzenie nazw - prefiksy

Dokumenty schematów Schemat (struktura logiczna) może być zapisany w wielu dokumentach schematów (plikach.xsd) Specyfikacja XML Schema określa trzy metody łączenia dokumentów schematów: include import redefine

<xsd:include> Metoda include dołącza dokument 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ć w ogóle docelowej przestrzeni nazw.

<xsd:include>

<xsd:redefine> i <xsd:import> Metoda redefine dołącza dokument schematu do docelowej przestrzeni nazw głównego dokumentu schematu z możliwością przedefiniowania komponentów: <xsd:redefine schemalocation="redefine.xsd"/> Metoda import dołącza dokument schematu z innej przestrzeni nazw (inną przestrzeń nazw): <xsd:import schemalocation="import.xsd namespace="http://www.example.org/firmy"/>

<xsd:import>