Konfiguracja repozytoriów danych

Konfiguracja repozytoriów danych

Źródła danych

Serwer SOWAI-PMH potrafi w ramach jednej instalacji obsługiwać dowolną liczbę repozytoriów. W odniesieniu do systemu SOWA - każdy katalog (np. katalog księgozbioru, bibliografia regionalna, kartoteka zagadnieniowa) to osobne repozytorium.

Każdy rekord udostępniany przez OAI-PMH musi posiadać unikalny (w skali Internetu) identyfikator. Konstrukcja identyfikatora jest ustandaryzowana i w przypadku serwera SOWAI-PMH przyjęty został następujący wzorzec identyfikatora rekordu:

Identyfikator rekordu OAI-PMH
oai:nazwa_domenowa:nazwa_zbioru/identyfikator_rekordu_sowa

Elementami identyfikatora OAI są:

  • nazwa_domenowa - najlepiej, jesli jest to główna nazwa domenowa instytucji, bez prefiksów typu www, czy oai (np. dla Wojewódzkiej Biblioteki Publicznej w Krakowie będzie to rajska.info). Jeśli biblioteka nie posiada własnej nazwy domenowej, firma SOKRATES-software udostępnia unikalne nazwy domenowe w ramach subdomeny sowwwa.pl.

  • nazwa_zbioru - nazwa identyfikująca zbiór danych. Musi to być pojedyncze słowo, pisane małymi literami bez znaków diakrytycznych. Może zawierać cyfry. Dobrze, jeśli nazwa ta odnosi się do zawartości katalogu. Np. katalog księgozbioru dla dorosłych może zostać nazwany "dorosli", katalog bibliografii regionalnej - "bibliografia", katalog zbiorów audiowizualnych - "audio", etc. WAŻNE: raz nadana nazwa po pierwszym udostępnieniu usługi w sieci, nie może być zmieniana. W przeciwnym przypadku Dostawcy Usług nie mogliby prawidłowo aktualizować swoich repozytoriów.
    identyfikator_rekordu_sowa - to wewnętrzny identyfikator rekordu w danym katalog systemu SOWA. Z uwagi na to, że przez protokół OAI-PMH udostępniane są wyłącznie rekordy bibliograficzne - będzie to rekord typu U<numer>, np. U35123

Przykłady:

  • oai:bibliotekaelblaska.pl:centralny/U10392

  • oai:muzeum.krakow.pl:muzeum/U50312

Konfiguracja dostępnych repozytoriów

Pod pojęciem repozytorium należy rozumieć konkretny zbiór danych dostępny w wybranej domenie. Znaczy to, że identyfikatorem repozytorium jest <nazwa_domenowa>:<nazwa_zbioru>. Np. bibliotekaelblaska.pl:centralny - będzie nazwą repozytorium.

Do zarządzania repozytoriami należy używać polecenia:

Przykład konfiguracji repozytorium
sowaipmh-config <nazwa_domenowa>:<nazwa_zbioru>

Polecenie to przeprowadza interaktywną konfigurację podanego repozytorium.

Listę skonfigurowanych repozytoriów uzyskuje się dzięki opcji -l

Wyświetlenie listy dostępnych repozytoriów
sowaipmh-config -l

 

Plik konfiguracyjny repozytoriów

Konfiguracja poszczególnych repozytoriów powinna być umieszczona w pliku .sowang/etc/sowaipmh/sowaipmh.cfg. Każda sekcja [REPOSITORY<no>] definiuje pojedyncze repozytorium.

Struktura sekcji jest następująca:

Opcja

Opis

Przykład

Opcja

Opis

Przykład

dataset

Nazwa zbioru danych (zob. wcześniej)

centralny

domain

Nazwa domenowa (zob. wcześniej)

muzeum.krakow.pl

hostname

Opcja ta pozwala na ograniczenie dostępności repozytorium tylko do połączeń wykonywanych na określoną nazwę domenową serwera. Jeśli wartością opcji jest *, wówczas akceptowane będą wszystkie połączenia, w przeciwnym razie zostanie sprawdzona zgodność nazwy użytek przez łączącego się klienta. Opcja ta akceptuje kilka nazw domenowych - należy je wymienić wówczas po przecinkach.

oai.muzeum.krakow.pl

provider

Nazwa i parametry sterownika do dostawcy danych w postaci <nazwa>::<opcja1>=<wartość1>,<opcja2>=<wartość2>,...

(Obecnie dostępni dostawcy to: SowaSQL i SowaTCP)

zob. dalej

repository_name

Nazwa opisowa repozytorium. Jest ona zwracana dla polecenia Identify protokołu OAI-PMH.

Katalog Muzeum Narodowego w Krakowie

admin_email

Adres e-mail do administratora serwisu OAI

oai-admin@muzeum.krakow.pl

Przykład konfiguracji zbiorów danych
[REPOSITORY1] dataset=muzeum domain=muzeum.krakow.pl hostname=oai.muzeum.krakow.pl provider=SowaSQL::ip=127.0.0.1,port=5432,db_user=username,db_pass=secret,db_name=mydb repository_name=Katalog Muzeium Narodowego w Krakowie admin_email=oai-admin@muzeum.krakow.pl

Dla takiej konfiguracji poprawne wywołanie polecenia Identify w protokole OAI-PMH będzie miało następującą postać:

http://oai.muzeum.krakow.pl/muzeum?verb=Identify

Dostawca danych - SowaSQL

Jest to dostawca danych dla systemu SowaSQL operujący bezpośrednio na bazie danych PostgreSQL. Należy dla opcji provider przekazać następujące parametry (wszystkie są obowiązkowe!)

Nazwa

Opis

Nazwa

Opis

ip

Adres IP (albo domenowy) serwera bazy danych PostgreSQL

port

Numer portu - zazwyczaj serwer bazy danych PostgreSQL działa na porcie 5432.

db_user

Nazwa użytkownika bazodanowego

db_pass

Hasło logowania się do bazy danych użytkownika db_user

db_name

Nazwa bazy danych

Jest to dostawca korzystający z modułu psycopg.

Instalacja modułu w systemie Ubuntu Linux
pip install psycopg[binary]

Inicjacja źródła danych

Niektóre sterowniki źródeł danych mogą wymagać początkowej inicjalizacji. Dostępne obecnie sterowniki wymagają takiej inicjacji, dlatego konieczne jest wykonanie następującej procedury po skonfigurowaniu repozytorium.

Aby zainicjować źródło danych należy z poziomu konsoli wykonać polecenie:

Inicjacja źródła danych o nazwie "centralny"
sowaipmh-init-dataset centralny

Jeśli jest skonfigurowanych więcej repozytoriów o różnych domenach, ale z tą samą nazwą źródła danych, wówczas nazwę źródła danych trzeba poprzedzić nazwą domeny i dwukropkiem. Np,:

Inicjacja źródła danych repozytorium
sowaipmh-init-dataset bibliotekaelblaska.pl:centralny