Wykład 2 xaml, cz. 2 12-03-2014. Czym jest xml?



Podobne dokumenty
Program szkoleniowy Efektywni50+ Moduł III Standardy wymiany danych

Przykładowy dokument XML

SL: warstwy aplikacji. Wykład 4 Silverlight

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

Metody opracowywania dokumentów wielostronicowych. Technologia Informacyjna Lekcja 28

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

Bazy danych II. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

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

InsERT GT Własne COM 1.0

SpedCust 5 instrukcja instalacji

Technologie internetowe Internet technologies Forma studiów: Stacjonarne Poziom kwalifikacji: I stopnia. Liczba godzin/tydzień: 2W, 2L

Spis treści 1. Wstęp 2. Projektowanie systemów informatycznych

Podstawy Informatyki Gramatyki formalne

Obliczenia arytmetyczne. Konkatenacja pól. Aliasy kolumn. Aliasy tabel. Co dalej? Rozdział 4. Korzystanie z funkcji. Zastosowanie funkcji

Uniwersytet Rzeszowski

Dokumentacja usługi SMS (Aplikacja def3000/sms)

Wskazówki dotyczące przygotowania danych do wydruku suplementu

Krakowska Akademia im. Andrzeja Frycza Modrzewskiego. Karta przedmiotu. obowiązuje studentów, którzy rozpoczęli studia w roku akademickim 2013/2014

epuap Ogólna instrukcja organizacyjna kroków dla realizacji integracji

30. Język XML i jego wybrane aplikacje

API transakcyjne BitMarket.pl

WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH

Projektowanie bazy danych

PERSON Kraków

Schematy XML. Tomasz Traczyk.

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU

Podstawa programowa kształcenia ogólnego informatyki w gimnazjum

Przypomnienie najważniejszych pojęć z baz danych. Co to jest baza danych?

Projektowanie Systemów Inf.

Komunikat dla osób rozliczających umowy w sprawie nowego sposobu rozliczania umów w związku z likwidacją II fazy rozliczeń.

Bazy danych. Andrzej Łachwa, UJ, /15

Promocja i identyfikacja wizualna projektów współfinansowanych ze środków Europejskiego Funduszu Społecznego

Wartości domyślne, szablony funkcji i klas

Komputer i urządzenia z nim współpracujące

Programowanie w internecie nazwa przedmiotu SYLABUS A. Informacje ogólne

Tworzenie aplikacji internetowych E14

Poniżej instrukcja użytkowania platformy

Komentarz do prac egzaminacyjnych w zawodzie technik administracji 343[01] ETAP PRAKTYCZNY EGZAMINU POTWIERDZAJĄCEGO KWALIFIKACJE ZAWODOWE

Część 2 struktura e-paczki

UD-XVII-ZFE APR Warszawa, dnia 20 marca 2013 r.

... dnia... (Imię i nazwisko bezrobotnego) W N I O S E K

elektroniczna Platforma Usług Administracji Publicznej

Część II SIWZ: Szczegółowy Opis Przedmiotu zamówienia

ZARZĄDZENIE NR $/2011 BURMISTRZA DRAWSKA POMORSKIEGO z dnia *fó marca r.

Aplikacje internetowe i rozproszone - laboratorium

Struktura plików wejściowych kontrahenci krajowi i zagraniczni ipko biznes

Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych ul. Koszykowa 75, Warszawa

Tablice, procesy, sygnały i nie tylko. Kurs systemu Unix 1

MySource Matrix CMS - PROSTY INTERFEJS UŻYTKOWNIKA. INSTRUKCJA ver 1.2

Procedura działania Punktu Potwierdzającego. Profile Zaufane epuap. w Urzędzie Miejskim w Miłakowie

Aktualizacja CSP do wersji v7.2. Sierpień 2014

PROCEDURA P-I-01. Iwona Łabaziewicz Michał Kaczmarczyk

Aplikacje internetowe oparte na kluczowych technologiach Java Enterprise(Servlet,JSP,JDBC, )

1. Reforma procesu kształcenia jako filar linii programowej PSRP

Instrukcja UŜytkownika HaloŚląski - serwisu telefonicznego dla klientów korporacyjnych

Mądrym być to wielka sztuka, ale dobrym jeszcze większa. K o r n e l M a k u s z y ń s k i

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Miejskim w Łabiszynie

tel/fax lub NIP Regon

Wyższa Szkoła Zarządzania i Bankowości w Krakowie

1. Podstawy budowania wyra e regularnych (Regex)

STATUT KOŁA NAUKOWEGO KLUB INWESTORA

Zarządzenie Nr 0151/18/2006 Wójta Gminy Kornowac z dnia 12 czerwca 2006r.

Tworzenie modelu obiektowego

Uchwała Nr 3/2015 Komitetu Monitorującego Regionalny Program Operacyjny Województwa Podlaskiego na lata z dnia 29 kwietnia 2015 r.

ZASADY ORGANIZACJI, PRZEBIEGU, ZALICZANIA I FINANSOWANIA PRAKTYK STUDENCKICH OBJĘTYCH PLANEM STUDIÓW STACJONARNYCH I NIESTACJONARNYCH ZAOCZNYCH

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap Urzędzie Gminy w Ułężu

VIII POWIATOWY FESTIWAL PIOSENKI ANGIELSKIEJ DLA SZKÓŁ PODSTAWOWYCH I GIMNAZJÓW Let s sing in English

Rola języka XML narzędziem

Konkurs języka angielskiego dla uczniów szkół podstawowych Powiatu Legionowskiego V edycja - marzec 2016 maj Patronat:

Postanowienia ogólne. Wysokość Stypendium wynosi zł miesięcznie.

Modernizacja kształcenia zawodowego w Polsce w odpowiedzi na potrzeby rynku pracy i wyzwania uczenia się przez całe życie

Rekrutacja na II staż zawodowy w Niemczech w ramach projektu

INFORMATYKA dla gimnazjum Opis założonych osiągnięć ucznia klasy trzeciej

Zamawiający potwierdza, że zapis ten należy rozumieć jako przeprowadzenie audytu z usług Inżyniera.

XML i nowoczesne technologie zarządzania treścią

Strukturalne metodyki projektowania systemûw informatycznych

I. 1) NAZWA I ADRES: Gmina Miasto Rzeszowa, Rynek 1, Rzeszów, woj. podkarpackie, tel , faks

REGULAMIN KURSÓW DOKSZTAŁCAJĄCYCH I SZKOLEŃ W UNIWERSYTECIE GDAŃSKIM

REGULAMIN RADY RODZICÓW Szkoły Podstawowej w Wawrzeńczycach

UCHWAŁA NR XX/138/16 RADY MIEJSKIEJ W JANOWIE LUBELSKIM. z dnia 12 kwietnia 2016 r.

Procedura nadawania uprawnień do potwierdzania, przedłuŝania waŝności i uniewaŝniania profili zaufanych epuap. Załącznik nr 1

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

UCHWAŁA NR 388/2012 RADY MIEJSKIEJ W RADOMIU. z dnia 27 sierpnia 2012 r. w sprawie ustanowienia stypendiów artystycznych dla uczniów radomskich szkół

System zarządzania bazą danych (SZBD) Proces przechodzenia od świata rzeczywistego do jego informacyjnej reprezentacji w komputerze nazywać będziemy

REGULAMIN REKRUTACJI UCZNIÓW/SŁUCHACZY DO ZESPOŁU SZKÓŁ TECHNICZNYCH I OGÓLNOKSZTAŁCĄCYCH IM. KAZIMIERZA WIELKIEGO W BUSKU-ZDROJU

Zarządzenie Nr 12 /SK/2010 Wójta Gminy Dębica z dnia 06 kwietnia 2010 r.

ALEKSANDRA SŁABIAK. Przedmiotowy System Oceniania j. angielski kl. IV VI

czas trwania w latach Psychologia jednolite 5 stacjonarny 900 zł zł zł

Chmura obliczeniowa. do przechowywania plików online. Anna Walkowiak CEN Koszalin

INTENSE BUSINESS INTELLIGENCE PLATFORM

Załącznik do zarządzenia Rektora Krakowskiej Akademii im. Andrzeja Frycza Modrzewskiego Nr 8/2013 z 4 marca 2013 r.

KRYTERIA OCENIANIA ODPOWIEDZI Język POZIOM PODSTAWOWY

Kompozycja i dziedziczenie klas

Logowanie do mobilnego systemu CUI i autoryzacja kodami SMS

Harmonogramowanie projektów Zarządzanie czasem

Symfonia Produkcja Instrukcja instalacji. Wersja 2013

Regulamin Systemu Stypendialnego. Fundacji Grażyny i Wojciecha Rybka Pomoc i Nadzieja. w Bydgoszczy (tekst jednolity)

JĘZYK ROSYJSKI POZIOM ROZSZERZONY

Załącznik Nr 1 do Uchwały Nr 147 Rady Miasta Konina z dnia 29 czerwca 2011 r.

Transkrypt:

Kwalifikacje kadry dydaktycznej kluczem do rozwoju Uczelni PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ I EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO Uniwersytet Kazimierza Wielkiego w Bydgoszczy Wydział Matematyki, Fizyki i Techniki specjalność: Sieci i systemy rozproszone Technologie mobilne i rozproszone na platformie.net Wykład 2 xaml, cz. 2 Czym jest xml? Język znaczników zasady zapisu i stosowania znaczników, i/lub standaryzowany zbiór tagów. xml: brak zbioru tagów, tylko zasady stosowania służy jedynie ujednoliceniu zapisu kolejnych języków html (zapis treści stron WWW) SVG (zapis grafiki wektorowej) można zbudować własny! Prosta, jednolita składnia zapisaną informację łatwo jest przekształcić w bazę danych łatwo formatować i prezentować na rozmaitych urządzeniach. 3 1

Przykłady kursy walut (www.nbp.pl) przelew bankowy (BGK) <przelewy> <przelew> <rach_obc>38 1130 0007 2001 0000 4444 0003</rach_obc> <bank>10800001</bank> <rachunek>63 1080 0001 1232 1232 1154 8412</rachunek> <nazwa>janina Kowalska</nazwa> <kwota>123.10</kwota> <tresc>faktura nr 12345</tresc> </przelew> 4 problem:unikalność nazw title <?xml version="1.0" encoding="utf-8"?> <section> <title>book-signing Event</title> <signing> <author title="mr" name="vikram Seth" /> <book title="a Suitable Boy" price="$22.95" /> </signing> <signing> <author title="dr" name="oliver Sacks" /> <book title="the Island of the Color-Blind price="$12.95" /> </signing> </section> 5 Przestrzeń nazw Kontener nazw podobnie, jak w Java, C#, można kilka, definiowana jako element xml, identyfikowana referencją IRI lub URI, symbol xmlns xml+ ns(namespace) ns tzw. alias <ns:pizza xmlns:ns="http://programowanie.org"> Użycie poprzez alias nazwa elementu identyfikator przestrzeni 6 2

Alias i identyfikator <ns:pizza xmlns:ns="http://programowanie.org"> Identyfikator przestrzeni nazw http://programowanie.org adres URL (niekoniecznie istniejący) często odnośnik do tzw. schematu dokumentu xml Alias przestrzeni nazw ns Użycie podczas deklarowania znaczników: <alias:nazwa_znacznika> Atrybuty przestrzeni nazw <ns:pizza xmlns:ns="http://abc.net" ns:lang="pl"> 7 Węzły wielojęzyczne Atrybut lang można stosować tzw. węzły wielojęzyczne ułatwia tworzenie dokumentów wielojęzycznych element <ns:cena> ma atrybut xml:lang o wartości PL, a drugi EU. <?xml version="1.0" encoding="utf-8"?> <ns:pizza xmlns:ns="http://4programmers.net"> <ns:nazwa>peperoni</ns:nazwa> <ns:cena xml:lang="pl">15,50</ns:cena> <ns:cena xml:lang="eu">4</ns:cena> </ns:pizza> 8 Takie same nazwy atrybutów <x xmlns:n1="http://inna.przestrzen.pl" xmlns:n2="http://inna2.przestrzen.pl"> </x> <trzyatrybuty a="0" n1:a="1" n2:a="2"/> 9 3

Schemat dokumentu Jak to zdefiniować? Jak jednoznacznie zapisać?? I po co?? 10 Składnia dokumentu Elementy, atrybuty czy nazwy prawidłowe? czy wartości wszystkie wymagane/opcjonalne? czy typ wartości prawidłowy? <uczestnicy> <osoba nazwisko="rak" imię="jan" rok="1991"/> <osoba nazwisk= Nowak" im="jan" rok="1971"/> <osoba imię="adam" rok="000"/> </uczestnicy> 11 Weryfikacja poprawności Schemat dokumentu określa strukturę dokumentu listę poprawnych elementów Listę atrybutów tych elementów Schematy DTD (DocumentType Definition) XSD (XML Schema Definition) zalecane przez W3C <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE osoba [ <!ELEMENT osoba (imie, drugieimie, nazwisko)> <!ELEMENT imie (#PCDATA)> <!ELEMENT drugieimie (#PCDATA)> <!ELEMENT nazwisko (#PCDATA)> ]> <osoba> <imie>zygfryd</imie> <drugieimie>zenobiusz</drugieimie> <XXazwisko>Wawrzyniak</XXazwisko> </osoba> Nazwa nieprawidłowa 12 4

Dlaczego XSD? Ograniczenia DTD (m.in.): słaba kontrola typów atrybutów, minimalna elementów elementy nie mogą określać wartości domyślnych niemożność zadeklarowania dowolnej kolejności podelementów (np. dowolna kolejność nazwisko, imię w elemencie osoba) brak wsparcia dla przestrzeni nazw! inna składnia, niż zwykły XML. Dlaczego XSD? schemat korzysta z języka XML, ma taką samą składnię, definiuje elementy, atrybuty oraz typy danych, jest bardziej użyteczny oraz rozbudowany niż DTD, jest opracowany i zalecany przez W3C. Idea utworzenia XSD została zapoczątkowana przez firmę Microsoft. W 2001 r. patronat nad powstaniem i utworzeniem standardu objęła W3C 13 Definiowanie XSD XML Schema Definition standardowa składnia XML, składniki definicji należą do przestrzeni nazw http://www.w3.org/2001/xmlschema wyróżnionej zwykle prefiksem xsd albo xs. Definicja schematu w dokumencie xml-owym zawarta w elemencie głównym xsd:schema lub w oddzielnym dokumencie 14 Postać dokumentu schematu <xsd:schema xmlns:xsd="http://www.w3.org/2001/xmlschema">... </xsd:schema> Prefiks xsd zalecany określony w deklaracji przestrzeni nazwowej w elemencie schema Deklaracja elementu i jego typu element xsd:element typ elementu: atrybut type <xsd:element name="nazwaelementu" type="xsd:string" /> Deklaracja atrybutu i jego typu element xsd:attribute typ jw. <xsd:attribute name="nazwaatrybutu" type="xsd:integer" /> 15 5

Typy elementów i atrybutów Predefiniowane typy proste (www.w3.org/tr/xmlschema-2) znakowe i logiczne string, normalizedstring, token, boolean liczbowe positiveinteger, negativeinteger, integer, long, decimal, float, byte, binarny: base64binary (każde 6 bitów kodowane symbolem alfanumerycznym) daty i czasu: time: np. 13:20:00.000, 13:20:00.000-05:00 datetime : np. 1999-05-31T13:20:00.000-05:00 duration: np. P1Y2M3DT10H30M12.3S date (oraz ich wycinki): np. 1999-05-31 anyuri (znakowy zgodny ze składnią URI): np. http://www.w3c.org/) language (kody języków narodowych): np. en-us, pl XML: ID, IDREF, IDREFS, NOTATION... Można także definiować typy własne. 16 Typy własne (za www.w3schools.com) Najczęściej jako: zawężenie typu prostego (restriction) listę wartości innego typu prostego (list) Element age z zakresu <0, 120> <xs:element name="age"> <xs:simpletype> <xs:restriction base="xs:integer"> <xs:mininclusive value="0"/> <xs:maxinclusive value="120"/> </xs:restriction> </xs:simpletype> </xs:element> 17 Typy własne (za www.w3schools.com) Element car z okreslonymi wartościami Audi, Golf, BMW <xs:element name="car"> <xs:simpletype> <xs:restriction base="xs:string"> <xs:enumeration value="audi"/> <xs:enumeration value="golf"/> <xs:enumeration value="bmw"/> </xs:restriction> </xs:simpletype> </xs:element> 18 6

Typy własne (za www.w3schools.com) jw. definiowanie typu <xs:element name="car" type="cartype"/> <xs:simpletype name="cartype"> <xs:restriction base="xs:string"> <xs:enumeration value="audi"/> <xs:enumeration value="golf"/> <xs:enumeration value="bmw"/> </xs:restriction> </xs:simpletype> cartype może być użyty dla innych elementów (atrybutów) 19 Typy własne (za www.w3schools.com) Seria znaków literowych (typ string) <xs:pattern value="[a-z]"/> Sekwencja 5 cyfr (typ integer) <xs:pattern value="[0-9][0-9][0-9][0-9][0-9]"/> Określone wyrazy <xs:pattern value="male female"/> Liczba znaków <xs:length value="8"/> <xs:minlength value="5"/> <xs:maxlength value="8"/> 20 Schemat w dokumencie 21 7

Schemat w pliku zewnętrznym Visual Studio: Propertiespliku xml-owego 22 XML wg Microsoft XAML Extensible Application Markup Language język opisu interfejsu użytkownika m.in. w technologii Windows Presentation Foundation (WPF - element platformy.net Framework od wersji 3.0) Cechy oparty na języku XML zoptymalizowany do opisu bogatych, wizualnych interfejsów (jak np. Adobe Flash) Inne tego typu: SVG (opis grafiki wektorowej), LZX (interfejsy graficzne) XUL (do budowy rozszerzeń dla Firefoksa) 23 XAML w projekcie Design UserControl Grid XAML 24 8

Struktura opisu XAML <UserControl x:class="silverlightapplication5.mainpage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:ignorable="d" d:designheight="300" d:designwidth="400"> <Grid x:name="layoutroot" Background="White" Loaded="LayoutRoot_Loaded" GotFocus="LayoutRoot_GotFocus"> </Grid> </UserControl> 25 Namespace: xmlns Dwie podstawowe przestrzenie nazw xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" zawiera klasy WPF (Button, Grid, Label, ) domyślna przestrzeń nazw (bez prefiksu) xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" zawiera różne pomocnicze cechy XAML domyślnie zmapowana do prefiksu x przy odwołaniu - prefiks <x:elementname> 26 Inne rozszerzenia XSL (extensible Stylesheet Language) język, który opisuje przekształcenia dokumentów XSL; obejmuje: XSLT XSL Transformation, język dla przekształceń dokumentów XML, XPath XML PathLanguage, język opisujący dostęp lub odwołanie do fragmentów XML, XSLF -XSL Formatting, słownik opisujący formatowanie. Zastosowanie pozwala na opis transformacji dokumentów XML oraz sposobu ich formatowania, np.: przekształcenie dokumentu XML na dokument wizualny, który może zostać wydrukowany; w XSLT można stosować HTML i CSS, a następnie dynamicznie tworzyć stronę WWW, która będzie pobierać informacje z pliku XML -takie informacje będą np. formatowane w postaci tabeli HTML. 27 9

Od czego warto zacząć XML dla niewtajemniczonych http://office.microsoft.com/pl-pl/word-help/xml-dlaniewtajemniczonych-ha010034022.aspx XML in 10 points(po polsku!) http://www.w3.org/xml/1999/xml-in-10-points.pl.html Internetowa szkoła http://www.w3schools.com/schema/schema_simple.asp 28 10