[ Pobierz całość w formacie PDF ]
Zaawansowane Systemy Baz Danych – ZSBD
Bazy danych dokumentów XML
wykład 3 – modyfikacja dokumentów
Wykład przygotował:
Krzysztof Jankiewicz
Bazy danych dokumentów XML – wykład 3 – modyfikacja dokumentów
Trzeci wykład dotyczący baz danych dokumentów XML zostanie poświęcony sposobom
modyfikacji dokumentów przechowywanych w bazach danych dokumentów XML. Jak do tej
pory brak standardu takiego języka, mimo iż od kilku lat wykorzystywanych jest kilka bardziej
lub mniej powszechnych rozwiązań.
1
Zaawansowane Systemy Baz Danych – ZSBD
Sposoby modyfikacji dokumentów XML
• Prosta wymiana, wstawianie, usuwanie dokumentów
XML
• DOM API
•Języki deklaratywne
– XUpdate
– Rozszerzenia XQuery
Bazy danych dokumentów XML – wykład 3 – modyfikacja dokumentów (2)
Jak do tej pory brak standardu języka zapytań przeznaczonego do modyfikacji dokumentów
XML w bazach danych dokumentów XML. Cześć z baz danych tego typu udostępnia jedynie
mechanizmy pozwalające na wstawianie, usuwanie i wymianę całych dokumentów.
Mimo braku standardu udostępniane są różnego rodzaju interfejsy pozwalające użytkownikom
na zmianę przechowywanych w bazach danych dokumentów XML.
Bazy danych, które umożliwią modyfikację fragmentów dokumentów XML stosują następujące
podejścia:
-umożliwiają wykonywanie operacji DOM na dokumentach w nich zawartych;
-umożliwiają wykorzystanie wyrażeń XPath, które wskazują węzły, na których można
przeprowadzić jedną lub wiele operacji takich jak:
* wstawienie węzła przed lub po wskazywanych przez wyrażenia XPath fragmentach,
* modyfikacja wskazywanego węzła,
* usunięcie wskazywanego węzła,
* utworzenie zmiennej, której zawartość będzie identyczna ze wskazywanym węzłem,
* zmiana nazwy znacznika wskazywanego elementu,
- wykorzystanie rozszerzeń języka XQuery;
Język XUpdate należy do drugiej grupy propozycji i on zostanie przestawiony w ramach tego
wykładu jako pierwszy. Druga część wykładu skupi się na propozycji rozszerzeń języka
XQuery.
2
Zaawansowane Systemy Baz Danych – ZSBD
XUpdate
• Cechy:
– deklaratywny
–format XML
– prostota
• Inicjatywa grupy XML:DB
• Wykorzystywany powszechnie w bazach danych
dokumentów XML: dbXML, Apache Xindice, eXist,
X-Hive/DB
Bazy danych dokumentów XML – wykład 3 – modyfikacja dokumentów (3)
Język XUpdate jest językiem stosunkowo szeroko rozpowszechnionym. Jego podstawowe
cechy to:
- deklaratywny charakter języka,
- format dokumentu XML,
-prostota.
Język XUpdate powstał jako inicjatywa grupy XML:DB. Ta sama grupa stworzyła XML:DB API.
XUpdate jest przykładowo wykorzystywany w bazach danych dokumentów XML takich jak:
dbXML, Apache, Xindice, eXist, X-Hive/DB.
3
Zaawansowane Systemy Baz Danych – ZSBD
Wymagania dotyczÄ…ce zasad projektowych
języka modyfikacji (XML:DB)
• Czytelny zakres modyfikacji
• Prostota
• Zgodność ze standardami
• Rozszerzalność
•Format
• Niezależność od modeli
• Przeznaczenie
Bazy danych dokumentów XML – wykład 3 – modyfikacja dokumentów (4)
Analogicznie do wymagań narzuconych językom zapytań przeznaczonych dla baz danych
dokumentów XML przez organizację W3C, XML:DB zdefiniowała własne wymagania
dotyczące języka modyfikacji dokumentów XML. Wymagania te zostały podzielone na dwa
zakresy: zasady projektowe oraz funkcjonalność.
Wymagania dotyczące zasad projektowych są następujące:
-zakres –język modyfikacji musi opisywać to w jaki sposób mają być wykonywane zapytania i
modyfikacja zawartości XML;
-prostota –język modyfikacji powinien być prosty, o dużej sile wyrazu i czytelny dla autora;
- zgodność ze standardami – język modyfikacji powinien być zgodny ze standardami
dotyczącymi: przestrzeni nazw, wyrażeń XPath, standardu XPointer;
- rozszerzalność –musi być otwarty na przyszłe rozszerzenia;
- format – specyfikacja języka musi być elementem XML;
- niezależność od modeli – specyfikacja języka nie może być zaprojektowana w sposób
uzależniający język od obiektów XML lub modeli parserów takich jak DOM czy SAX;
- przeznaczenie – język musi być zdolny do wykonywania działań na rzecz części lub całości
jednego lub wielu dokumentów XML;
- integracja – rozwój specyfikacji języka modyfikacji wymaga interakcji z innymi grupami
roboczymi XML:DB. W szczególności z grupą roboczą XML Database API Working Group.
4
Zaawansowane Systemy Baz Danych – ZSBD
Wymagania dotyczące funkcjonalności
języka modyfikacji (XML:DB)
• Zapytania do wskazywania węzłów
przeznaczonych do modyfikacji
• Modyfikacja wskazanych węzłów
• Wstawienie elementów do wskazanych węzłów
• Usuwanie wskazanych węzłów
• Ograniczanie zbioru dokumentów
• Operatory logiczne
• Funkcje i operatory
Bazy danych dokumentów XML – wykład 3 – modyfikacja dokumentów (5)
Omówimy teraz wymagania dotyczące funkcjonalności języka. Są one następujące:
- zapytania – język musi udostępniać prostą funkcjonalność dotyczącą zapytań. Zapytanie jest
wstępnym etapem polegającym na wybraniu zbioru węzłów przeznaczonych do modyfikacji;
- modyfikacja – język musi definiować mechanizm modyfikacji. Modyfikacja jest wyrażeniem
sposobu modyfikacji zawartości XML wskazanej w zapytaniu;
- wstawianie – język musi umożliwiać wstawianie nowych elementów XML do węzłów
uzyskanych w wyniku zapytania;
- usuwanie – język musi umożliwiać usuwanie elementów XML z węzłów uzyskanych w wyniku
zapytania;
- ograniczanie – język musi posiadać mechanizmy ograniczające zbiór przepytywanych
dokumentów;
- operatory logiczne – język modyfikacji musi zawierać zbiór operatorów przeznaczonych do
operacji logicznych. Zbiór ten powinien zawierać takie operatory jako 'and', 'not', 'or';
- logika – język powinien udostępniać minimalny zbiór operatorów i funkcji pozwalających
operować na danych liczbowych, datach itp.
Język XUpdate oczywiście spełnia wszystkie te wymagania.
5
[ Pobierz całość w formacie PDF ]