Generyczne Repozytorium Dokumentów w XML
description
Transcript of Generyczne Repozytorium Dokumentów w XML
![Page 1: Generyczne Repozytorium Dokumentów w XML](https://reader036.fdocuments.pl/reader036/viewer/2022083009/56814bb1550346895db88627/html5/thumbnails/1.jpg)
Generyczne Repozytorium Dokumentów w XML
Rafał GóreckiRafał HryniówTomasz Pieciukiewicz
![Page 2: Generyczne Repozytorium Dokumentów w XML](https://reader036.fdocuments.pl/reader036/viewer/2022083009/56814bb1550346895db88627/html5/thumbnails/2.jpg)
Dlaczego taki temat
Brak ogólnie dostępnych repozytoriów dokumentów
Technologia XML gwarantuje niezależność od baz danych
Dedykowany język zapytań upraszczający wyszukiwanie
![Page 3: Generyczne Repozytorium Dokumentów w XML](https://reader036.fdocuments.pl/reader036/viewer/2022083009/56814bb1550346895db88627/html5/thumbnails/3.jpg)
Założenia projektu
Język zapytań operujący na pojedynczym pliku XML
Wykorzystanie DTD do utrzymywania jednolitości XML
Udostępnianie zasobów poprzez WWW Wprowadzenie danych poprzez
wyspecjalizowany interfejs.
![Page 4: Generyczne Repozytorium Dokumentów w XML](https://reader036.fdocuments.pl/reader036/viewer/2022083009/56814bb1550346895db88627/html5/thumbnails/4.jpg)
XML jako prosta baza danych
<Pracownicy> <Pracownik> <Imie>Jan</Imie> <Nazwisko>Ciemny</Nazwisko> <Zarobki>3500</Zarobki> </Pracownik> <Pracownik> <Imie>Jaś</Imie> <Nazwisko>Fasola</Nazwisko> <Funkcja>Projektant</Funkcja> </Pracownik> <Pracownik> <Imie>Kuba</Imie> <Nazwisko>Kowalski</Nazwisko> <Zarobki>2000</Zarobki> <Funkcja>Programista</Funkcja> </Pracownik> </Pracownicy>
Pracownik
Imie
Nazwisko Funkcja
Zarobki
![Page 5: Generyczne Repozytorium Dokumentów w XML](https://reader036.fdocuments.pl/reader036/viewer/2022083009/56814bb1550346895db88627/html5/thumbnails/5.jpg)
Założenia języka zapytań (1)
Dopuszczalne pytania:– o wartość tekstową elementu (text node)– o wartość atrybutu– o zawieranie się elementów (czy X zawiera Y)– o posiadanie atrybutu przez element
Elementy zwracane– tablice wartości atrybutów– tablice wartości elementu tekstowego (text node)– tablice boolowskie– tablice elementów + struktura elementu (np.. Jako XML)
![Page 6: Generyczne Repozytorium Dokumentów w XML](https://reader036.fdocuments.pl/reader036/viewer/2022083009/56814bb1550346895db88627/html5/thumbnails/6.jpg)
Założenie języka zapytań (2)
Pozostałe elementy:– obsługa LIKE – obsługa złączeń– funkcje agregowalne (min, max)– distinct– wyrażenia ścieżkowe– wyrażenia logiczne + kwantyfikatory
![Page 7: Generyczne Repozytorium Dokumentów w XML](https://reader036.fdocuments.pl/reader036/viewer/2022083009/56814bb1550346895db88627/html5/thumbnails/7.jpg)
Ograniczenia języka zapytań
Działanie tylko na jednym pliku XML na raz. Brak instrukcji imperatywnych (Insert,
Update, Delete), a także funkcji, metod, klas Brak optymalizacji lub pewna optymalizacja
dla złączeń
![Page 8: Generyczne Repozytorium Dokumentów w XML](https://reader036.fdocuments.pl/reader036/viewer/2022083009/56814bb1550346895db88627/html5/thumbnails/8.jpg)
Założenia implementacyjne
Język programowania – Java Interpreter oparty na podejściu stosowym Brak kompilacji do byte-code Wykorzystywany parser typu LR(n)
![Page 9: Generyczne Repozytorium Dokumentów w XML](https://reader036.fdocuments.pl/reader036/viewer/2022083009/56814bb1550346895db88627/html5/thumbnails/9.jpg)
Interpreter oparty o podejście stosowe
Traktowanie XML jako prostej bazy danych pozwala stosunkowo łatwo wykorzystać podejście stosowe do przetwarzania XML.
Łatwa implementacja interpretera opartego o podejście stosowe