XML – informacje

Zasady zaliczania przedmiotu

Aby zaliczyć przedmiot w I terminie, należy:

Aby zaliczyć przedmiot w II terminie, należy:

Ocena z pracowni ma wpływ na ocenę z przedmiotu – w I terminie do max 16 punktów za egzamin, dodamy punkty za ocenę z ćwiczeń:

Skala ocen z całego przedmiotu:

PunktyOcena
[16, 20]5
[14, 15,5]4,5
[12, 13,5]4
[10, 11,5]3,5
[ 8, 9,5]3
[ 0, 7,5]2

Egzamin w II terminie jest egzaminem ustnym. Ocena jest wystawiana na podstawie egzaminu i oceny z ćwiczeń.

Zasady zaliczania ćwiczeń

Zaliczenie w pierwszym terminie

Aby zaliczyć ćwiczenia w pierwszym terminie należy:

  • uczęszczać na ćwiczenia,
  • oddać w terminie zadania zaliczeniowe 1 – 3 i z każdego z nich uzyskać co najmniej 5 punktów.

Ocena z ćwiczeń wynika z liczby punktów uzyskanych z zadań zaliczeniowych 1 – 3, zgodnie ze skalą podaną poniżej.

Zaliczenie w drugim terminie

W drugim terminie pojawią się trzy zadania zaliczeniowe z tych samych zagadnień, co trzy zadania zaliczeniowe w pierwszym terminie. Każde zadanie można poprawiać niezależnie, oceną z poprawianego zadania staje się ocena zdobyta w drugim terminie.

Skala ocen

Wszystkie zadania będą oceniane w skali 0 – 10 punktów.

PunktyOcena
[27, 30]5
[24, 27)4,5
[21, 24)4
[18, 21)3,5
[15, 18)3
[ 0, 15)2

Zakres materiału ćwiczeń

Na ćwiczeniach będziemy poznawać techniczne szczegóły standardów związanych z XML i ćwiczyć ich zastosowania w praktyce.

Materiał ćwiczeń można podzielić na trzy części. Dla każdej z nich zostanie ułożone zadanie zaliczeniowe.

Projektowanie struktury dokumentów

Będziemy projektować typy dokumentów XML i zapisywać je zgodnie ze standardem XML Schema. Pobieżnie poznamy także DTD.

Przećwiczymy definiowanie w XML Schema typów prostych i złożonych, rozszerzanie i zawężanie typów, określanie kluczy i referencji.

Wizualizacja, przekształcenia i zapytania

Poznamy możliwości wizualizacji dokumentów XML. Pobieżnie poznamy standardy CSS i (X)HTML.

Poznamy standard XSLT 2.0 i przećwiczymy jego zastosowania do wizualizacji i przekształcania dokumentów XML.

Poznamy języki XPath 2.0 i XQuery 1.0 i przećwiczymy ich zastosowania.

XML we własnych programach

Poznamy różne modele dostępu do dokumentów XML we własnych programach i przećwiczymy ich standardowe implementacje w Javie:

  • ładowanie drzewa dokumentu do pamięci, z generycznym interfejsem programistycznym – na przykładzie DOM,
  • ładowanie drzewa dokumentu do pamięci, z interfejsem odwzorowującym typ dokumentu (tzw. data binding) – na przykładzie JAXB,
  • przetwarzanie zdarzeniowe – SAX,
  • przetwarzanie strumieniowe (tzw. pull parsing) – na przykładzie StAX (znany także jako Java Streaming XML Parser, realizacja JSR 173).

Szczególny nacisk położony będzie na DOM i SAX.

Poznamy także pozostałe składniki standardu JAXP: walidację, wykonywanie transformacji, ewaluację wyrażeń XPath, łączenie różnego rodzaju źródeł i wyników przekształceń.

Technikalia

Pierwsze dwie części zajęć będą dotyczyć standardów niezależnych od platformy czy języka programowania. Dla wygody będziemy wtedy korzystali z komercyjnego programu XML Spy, który ogromnie ułatwia tworzenie schematów XML Schema oraz pomaga w tworzeniu dokumentów XML, szablonów XSLT, zapytań XQuery. Umożliwia także walidację dokumentów, wykonywanie przekształceń XSLT, zapytań XQuery i XPath. Program ten jest zainstalowany w laboratorium (pod Windows). Można także go pobrać i (raz) za darmo aktywować wersję 30-dniową.

Możliwa jest także praca w Eclipse, który (po zainstalowaniu pewnych wtyczek) posiada wsparcie dla XML i XML Schema. Funkcjonalność XSLT jest na razie dostępna „eksperymentalna”.

Ostatnia część zajęć będzie dotyczyć wykorzystania XML we własnych programach. Będziemy pisać programy w języku Java na platformę Java SE 6.0. Na niektórych zajęciach niezbędne będzie dołączanie zewnętrznych bibliotek. W labie zalecamy pracę pod Linuxem, w Eclipse, ale doświadczeni użytkownicy Javy mogą korzystać ze swoich ulubionych środowisk.

Trzeci program zaliczeniowy także będzie wymagał napisania programu w Javie. Przepraszamy miłośników innych języków programowania.

Valid XHTML 1.1Valid CSS