Diapositiva 1 - mgr inż. Tomasz Węgliński

Download Report

Transcript Diapositiva 1 - mgr inż. Tomasz Węgliński

Łódź, 2 października 2012 roku
Technologie
mgr inż. Tomasz Węgliński
email: [email protected]
www: http://www.tweglinski.pl
PLAN
WYKŁADU
 Informacje organizacyjne
 Program wykładu
 Laboratorium
 Warunki zaliczenia
 Literatura
 Wprowadzenie do technologii XML
2/17
INFORMACJE
ORGANIZACYJNE
Wykład oraz laboratorium z przedmiotu
„Technologie XML” prowadzi:
mgr inż. Tomasz Węgliński
Pokój:
323 (WEEIA)
Telefon: (+48) 42 631-27-50 wew. 323
E-mail: [email protected]
Www:
http://www.tweglinski.pl
Godziny przyjęć: Proszę o kontakt mailowy przed spotkaniem
3/17
INFORMACJE
ORGANIZACYJNE
Ramowy program wykładu z przedmiotu „Technologie XML”
 Wykład 1: Wprowadzenie do technologii XML
PROGRAM
WYKŁADU
-- Czym jest XML?; Cechy XML; Składnia XML; Walidacja dokumentów XML; Ustalanie
wyglądu dokumentów XML przy pomocy CSS.
 Wykład 2: DTD i przestrzenie nazw
-- Struktura DTD; Deklaracje elementów, podelementów i atrybutów; Przestrzenie nazw;
Encje; Sekcje warunkowe.
 Wykład 3: XML Schema
-- Co to jest XML Schema?; XML Schema vs. DTD; Budowa schematu; Łączenie
schematu z XML; Aspekty; Typy danych; Strategie budowy schematów; Relax NG.
Wykład 4-5: Transformacje XSL
-- Co to znaczy transformacja?; Budowa dokumentu XSLT; Definiowanie i wywoływanie
szablonów; Zmienne, elementy i klucze; Funkcje; Dołączanie arkuszy XSL i CSS.
 Wykład 6: SAX API
-- Przetwarzanie zdarzeniowe; Zasada działania SAX; Klasy i interfejsy SAX.
 Wykład 7: DOM API
-- Co to jest DOM?; DOM czy SAX?; Poziomy modelu; DOM Core (API); Zastosowania.
4/17
INFORMACJE
ORGANIZACYJNE
PROGRAM
WYKŁADU
Ramowy program wykładu z przedmiotu „Technologie XML”
(c.d.)
 Wykład 8-9: XML & PHP
-- XML w PHP; DOM Document; XPath; SimpleXML.
 Wykład 10-11: XML & Python
-- Podstawy języka Python; Interpreter Python; Biblioteka standardowa;
Wykorzystanie modułów do parsowania plików XML (xml.dom, xml.sax).
 Wykład 12-13: WebServices
-- Co to są usługi sieciowe?; Architektura usług sieciowych; Protokół SOAP; WSDL;
Biblioteki języka PHP i Python dla usług sieciowych.
 Wykład 14: Semantic Web
-- Idea Semantic Web; Wykorzystywane standardy; .
 Wykład 15:
== Zaliczenie 
-- test wielokrotnego wyboru
5/17
INFORMACJE
ORGANIZACYJNE
PROGRAM
WYKŁADU
W trakcie trwania laboratorium student rozwiązuje
przygotowane przez prowadzącego zadania.
Programowy zakres laboratorium obejmuje zagadnienia przedstawione na
wykładzie m.in.:
 Ustalanie wyglądu dokumentu XML za pomocą CSS
LABORATORIUM
 DTD i przestrzenie nazw
 XML Schema
 XSLT
 DOM API
 SAX API
 XML w PHP
 XML w Javie
 Usługi sieciowe
6/17
INFORMACJE
ORGANIZACYJNE
PROGRAM
WYKŁADU
WARUNKI
ZALICZENIA
Warunkiem zaliczenia przedmiotu „Technologie XML” jest
pozytywna ocena z kolokwium wykładowego, regulaminowa
obecność na zajęciach laboratoryjnych oraz średnia ocen
(nie mniejsza niż 3.0) ze wszystkich rozwiązanych zadań
laboratoryjnych.
Zasady oceny zadań laboratoryjnych:
Termin oddania zadań
Możliwa ocena
w trakcie laboratorium
max. 5.0
<= 1 tyg.
max. 4.0
> 1 tyg.
max. 3.5
* istnieje możliwość poprawy wybranych zadań na ostatnich zajęciach laboratoryjnych
W przypadku podejrzenia o niesamodzielnym rozwiązaniu zadań laboratoryjnych
(tzw. plagiat), prowadzący laboratorium może podjąć decyzję o konieczności
przeprowadzenia kolokwium zaliczającego dla danego studenta.
7/17
INFORMACJE
ORGANIZACYJNE
PROGRAM
WYKŁADU
WARUNKI
ZALICZENIA
Literatura podstawowa
 Przemysław Kazienko, Krzysztof Gwiazda,
XML na poważnie, Helion, 2002
 Kevin Howard Goldberg,
XML: Visual QuickStart Guide,
(2nd Edition), Peachpit Press, 2008
LITERATURA
Literatura uzupełniająca
 Yuli Vasiliev, PHP i Oracle. Tworzenie aplikacji webowych (…), Helion, 2009
 Salvatore Mangano, XSLT. Receptury, Helion, 2007 (wyd. II)
 Wojciech Romowicz, XML. Ćwiczenia praktyczne, Helion, 2001
 Peter C. Norton (i inni), Python. Od podstaw, Helion, 2006
 James O. Knowlton, Python. Projekty do wykorzystania, Helion, 2010
 Grigoris Antoniou, A Semantic Web Primer, The MIT Press, 2008
 Extensible Markup Language (XML) 1.0 (Fifth Edition), http://www.w3.org/TR/xml/
 XML Tutorial, http://www.w3schools.com/xml/
8/17
WYKŁAD 1
Wprowadzenie do
technologii XML
9/17
CZYM JEST
XML?
Język XML (ang. eXtensible Markup Language, czyli rozszerzalny
język znaczników) jest standardem przetwarzania dokumentów
zaproponowanym przez konsorcjum W3C (ang. World Wide Web
Consortium).
Podobnie jak język HTML, wywodzi się on z języka SGML (ang.
Standard Generalized Markup Language – uogólniony standardowy
język znaczników), stąd posiada wiele podobieństw.
Powstanie XML wiąże się nieodłącznie z potrzebą rozszerzenia
możliwości języka HTML, niewystarczającego dla opisu bardziej
złożonych informacji prezentowanych w sieci.
Rys. 1. Języki znaczników
Wykład 1: Wprowadzenie do technologii XML
10/17
CZYM JEST
XML?
CECHY
XML
Najistotniejszymi cechami języka XML są:
 XML to dokument tekstowy
- może być edytowany nawet w notatniku systemowym
 XML jest rozszerzalny (!)
- umożliwia tworzenie własnych znaczników oraz standardów
 XML jest elastyczny
- zmiana struktury dokumentu XML jest znacznie łatwiejsza niż bazy danych
 XML to rodzina języków i technologii
- z pojęciem XML związanych jest wiele języków i technologii
 XML jest darmowy
- nie istnieją licencje, ograniczenia czy tajne specyfikacje
 XML jest sformalizowany
- dzięki DTD lub XML Schema można precyzyjnie definiować strukturę dokumentu
 XML stanowi warstwę danych aplikacji
- dokumenty XML są statyczne, pozbawione cech dynamicznych
 XML jest modułowy
- możliwe jest stopniowe tworzenie i łączenie dokumentów XML
Wykład 1: Wprowadzenie do technologii XML
11/17
CZYM JEST
XML?
CECHY
XML
SKŁADNIA
XML
Podstawowe składniki dokumentu XML to:
 elementy puste,
 elementy niepuste (tzw. pojemniki),
 atrybuty.
Oprócz tego w dokumencie XML można umieszczać:
 deklaracje,
 instrukcje przetwarzania,
 jednostki,
 komentarze.
deklaracja
element
element wraz
z atrybutem
Rys. 2. Przykładowy dokument XML
Wykład 1: Wprowadzenie do technologii XML
12/17
CZYM JEST
XML?
Elementy:
 Prawidłowe:
<aKtOr> Artur Żmijewski </aKtOr>
<_Nazwa.1-2_3:ą> Tekst </_Nazwa.1-2_3:ą>
CECHY
XML
SKŁADNIA
XML
<zawodnik> Lionel Messi </zawodnik>
<element_pusty/>
 Nieprawidłowe:
<1_Nazwa.1-2_3:ą> Tekst </1_Nazwa.1-2_3:ą>
<.Nazwa.1-2_3:ą> Tekst </.Nazwa.1-2_3:ą>
<-Nazwa.1-2_3:ą> Tekst </-Nazwa.1-2_3:ą>
Rys. 2. Składowe elementu
Rys. 3. Element pusty
Wykład 1: Wprowadzenie do technologii XML
13/17
CZYM JEST
XML?
CECHY
XML
SKŁADNIA
XML
Atrybuty:
 Prawidłowe:
<element atr=”pierwszy” Atr=‘drugi’ ATR=‘trzeci’> … </element>
<element atrybut=” ‘pierwszy’ ” atrybut=‘ ”drugi” „trzeci” ’> … </element>
 Nieprawidłowe:
<element atrybut=2> … </element>
<element atrybut=”pierwszy’> … </element>
Rys. 4. Przykład
elementu zawierającego
atrybut
Wykład 1: Wprowadzenie do technologii XML
14/17
CZYM JEST
XML?
CECHY
XML
SKŁADNIA
XML
Każdy dokument XML poprawny składniowo musi
posiadać dodatkowo tzw. deklarację XML umieszczoną
na początku pliku.
 Deklaracja XML informuje, że dany dokument tekstowy ma
być identyfikowany jako dokument XML.
 Deklaracja XML zawiera obowiązkowy parametr version oraz
parametry opcjonalne – encoding i standalone.
Przykład deklaracji XML:
numer wersji XML
standard kodowania
„samodzielność” dokumentu
(więcej na Wykładzie 2: DTD)
Wykład 1: Wprowadzenie do technologii XML
15/17
CZYM JEST
XML?
CECHY
XML
SKŁADNIA
XML
Najprostszym sposobem walidacji poprawności dokumentu
XML jest użycie jednego z dostępnych walidatorów online.
Kilka popularnych adresów:
 http://validator.w3.org/
 http://www.w3schools.com/xml/xml_validator.asp
 http://www.stg.brown.edu/service/xmlvalid/
WALIDACJA
XML
Rys. 5. Przykład walidatora online rekomendowanego przez organizację W3C
Wykład 1: Wprowadzenie do technologii XML
16/17
CZYM JEST
XML?
CECHY
XML
SKŁADNIA
XML
 Warto pamiętać, że dokument XML nie zawsze musi
wyglądać tak ponuro i statycznie!
 W celu prezentacji „na szybko” np. klientowi, możemy go
wzbogacić o kaskadowe arkusze stylów CSS.
 Wystarczy dodać jedną linijkę deklaracji na początku pliku
XML:
<?xml-stylesheet type="text/css" href="style.css"?>
WALIDACJA
XML
XML & CSS
http://www.w3schools.com/xml/xml_display.asp
Wykład 1: Wprowadzenie do technologii XML
17/17