ORPD – Źródła danych i zasilanie danymi - POL-on

Transkrypt

ORPD – Źródła danych i zasilanie danymi - POL-on
Ogólnopolskie
Repozytorium
Prac Dyplomowych
System Informacji
o Szkolnictwie Wyższym POL-on
Źródła danych i sposób zasilania, formaty
i aspekty organizacyjne
1
Spis treści
1. Źródła danych ................................................................................................................... 2
2. Wprowadzanie za pomocą interfejsu WWW ...................................................................... 2
3. Wprowadzanie danych za pomocą interfejsu typu 'PUSH'................................................. 2
3.1.Słownik pojęć ............................................................................................................. 2
3.2.Żądanie/Request ........................................................................................................ 2
3.2.1.Punkt dostępu, nagłówki, uwierzytelnianie .......................................................... 2
3.2.2.Request body ...................................................................................................... 3
3.3.Odpowiedź/Response................................................................................................. 4
3.3.1.Nagłówki odpowiedzi ........................................................................................... 4
3.3.2.Response body ................................................................................................... 4
3.4.Symulacja/ testy ......................................................................................................... 5
4. Wprowadzanie danych poprzez udostępnienie serwera OAI ............................................. 5
4.1.Ogólne zasady............................................................................................................ 5
4.2.Uwierzytelnianie ......................................................................................................... 5
4.3.Metadane ................................................................................................................... 5
4.3.1.Treść prac ........................................................................................................... 6
1
Źródła danych
1.
Ogólnopolskie Repozytorium Pracy dyplomowych jest zasilane wyłącznie pracami
dyplomowymi przez uczelnie. Uczelnie mają do wyboru trzy zasadnicze metody
wprowadzania danych:

poprzez interfejs WWW

poprzez interfejs REST Push

Poprzez udostępnienie serwera OAI-PMH
Wprowadzanie za pomocą interfejsu WWW
2.
W przypadku wprowadzania danych przez interfejs WWW operator uczelni bezpośrednio za
pomocą interfejsu WWW. W ramach tego zadania pracownik tworzy nowy wpis w bazie,
uzupełnia wymagane pola i wprowadza pliki pracy dyplomowej zgodne z wymaganiami
wskazanymi przez ministerstwo. Użytkownik może wprowadzić nową pracę lub też
zaktualizować starą. W przypadku aktualizacji możliwe jest uzyskanie dostępu do
poprzednich wersji.
3. Wprowadzanie danych za pomocą interfejsu
typu 'PUSH'
ORPD udostępnia programowe api do składowania prac dyplomowych jako web service
typu REST. Jeśli deponowana praca jest już w systemie, wtedy zostanie ona nadpisana
nową wersją.
3.1. Słownik pojęć
 [system] APD = uczelniane archiwum = repozytorium prac dyplomowych
3.2. Żądanie/Request
3.2.1. Punkt dostępu, nagłówki, uwierzytelnianie
Adres:
https://crpd.nauka.gov.pl/institutions/{institutionCode}/theses/{thesisExternalNumber}
 institutionCode - kod jednostki podstawowej, do której należy praca dyplomowa
 thesisExternalNumber - unikalny numer pracy dyplomowej w systemie APD
Akcja/metoda:PUT
Content-Type: application/zip
Uwierzytelnianie/autoryzacja: HTTP Basic
W nagłówku http Authorization należy wysłać jako username - kod instytucji, a jako
password wygenerowane dla niej hasło. Hasło dla instytucji musi wygenerować na
stronie orpd ([domena]/institutions/tokens) osoba posiadająca odpowiednie
2
uprawnienia (admin repozytorium instytucji). Należy pamiętać o zakodowaniu pary
username:password algorytemem base64.
Uwaga: instytucja, której dane służą do uwierzytelnienia musi być albo instytucją, do
której jest przypisywana deponowana praca dyplomowa, albo instytucją w stosunku do
niej nadrzędną. Np. jeśli system APD jest ogólnouczelniany (co na ogół ma miejsce),
wtedy do uwierzytelniania deponowania prac można wykorzystać parę
kod_uczelni:hasło_uczelni dla prac z wszystkich jednostek uczelni (nie trzeba
generować specyficznych haseł dla każdej jednostki oddzielnie).
3.2.2. Request body
Jako treść żądania należy wysłać plik zip, w którym znajdzie się
 plik o nazwie thesisMetadata.xml zawierający metadane deponowanej pracy
dyplomowej (opis niżej)
 pliki z treścią pracy, załącznikami itd. (np. pdf, png)
Uwaga: plik zip nie może zawierać żadnych podkatalogów.
thesisMetadata.xml
Plik ten musi być zgodny ze zdefiniowaną schemą: CrpdDeposit.xsd (załączona w
dokumentacji, element depositRequestThesisMetadata). Wymagane kodowanie
znaków: UTF-8.
Przykład:
<depositRequestThesisMetadata xmlns="http://www.icm.edu.pl/crpd/deposit"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.icm.edu.pl/crpd/deposit crpdDeposit.xsd ">
<title>Życie i twórczość Myszki Miki</title>
<defenceDate>2011-02-02</defenceDate>
<author>
<firstName>Wolfgang</firstName>
<lastName>Rumburak</lastName>
</author>
<supervisor>
<firstName>Adam</firstName>
<lastName>Mackiewicz</lastName>
</supervisor>
<supervisor>
<firstName>Aleksander</firstName>
3
<lastName>Frodo</lastName>
</supervisor>
<reviewer>
<firstName>Juliusz</firstName>
<lastName>Głowacki</lastName>
</reviewer>
<reviewer>
<firstName>Maria</firstName>
<lastName>Monopnicka</lastName>
</reviewer>
</depositRequestThesisMetadata>
3.3. Odpowiedź/Response
3.3.1. Nagłówki odpowiedzi
Kody odpowiedzi (Http status code):
 200 OK
 400 Bad request (gdy np. format thesisMetadata.xml niepoprawny)
 401 Unauthorized (gdy np. błędne hasło)
 403 Forbidden (gdy dana zautentykowana instytucja nie ma uprawnień do
deponowania prac instytucji przypisanej do pracy)
 404 Not found (gdy np. nie znaleziono instytucji o podanym w adresie url
kodzie)
ContentType
application/xml
3.3.2. Response body
Format treści odpowiedzi na żądanie zdeponowania pracy jest określony przez schemę xsd:
File:CrpdDeposit.xsd (element depositResponse).
Przykład:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<depositResponse xmlns="http://www.icm.edu.pl/crpd/deposit">
<status>OK</status>
<message>thesis succesfully deposited:
/institutions/10011xxdLMVWn/theses/123</message>
</depositResponse>
Możliwe odpowiedzi:
4














access denied
authentication failed
unsupported http method type
unsupported http content type
no institution with the given code found
not a basic organizational unit
not a zip content
empty thesis data
the size of the zip thesis content exceeds the max allowed size
no thesis metadata file found
incorrect xml format
no subdirectories allowed
thesis content files missing
internal server error occurred
3.4. Symulacja/ testy
Deponowanie prac przez APD można zasymulować narzędziem curl.
Przykład wywołania:
curl https://crpd-test.icm.edu.pl/institutions/10011xxdLMVWn/theses/123 -u
10011xxdLMVWn:4JbjCA4bTaaEdLl -k -X PUT -v -H "Content-Type: application/zip" --databinary "@C:\temp\depositData.zip"



10011xxdLMVWn - kod jednostki podstawowej, do której jest przypisana praca
oraz (akurat w tym przypadku) kod jednostki, na którą się uwierzytelniamy
4JbjCA4bTaaEdLl - hasło dla jednostki wygenerowane w orpd przez admina
repozytorium uczelnianego
k - pomiń sprawdzanie certyfikatu serwera
4. Wprowadzanie danych poprzez udostępnienie
serwera OAI
4.1. Ogólne zasady
Uczelniane archiwa prac dyplomowych moga opcjonalnie udostępniać ORPD metadane i
treść prac używając protokołu OAI-PMH (http://www.openarchives.org/pmh/) i standardu
OAI-ORE (http://www.openarchives.org/ore/). W takim przypadku ORPD łączy się z takimi
repozytoriami periodycznie i pobiera nowe prace.
Uczelniany operator archiwum własnoręcznie wskazuje w systemie za pomocą interfejsu
WWW informacje o lokalizacji archiwum.
5
4.2. Uwierzytelnianie
W przypadku pobierania prac z archiwum uczelnianego używana jest autoryzacja wg.
Numerów IP, uczelnia uzyskuje informację z jakiego IP będzie łączyć się ORPD i umożliwia
mu korzystanie ze swoich zasobów.
4.3. Metadane
Obecnie rozumianym przez ORPD formatem metadanych jest DSpace Intermediate
Metadata Format
(https://wiki.duraspace.org/display/DSPACE/DSpaceIntermediateMetadata).
RPD oczekuje, że dane w tym formacie będą udostępnione w odpowiedzi na zapytania OAIPMH z parametrem metadataPrefix=dim.
W tym formacie winny być wypełnione następujące pola (wraz z obowiązkowymi
kwalifikatorami)
element
qualifier
znaczenie
identifier
apd
wewnętrzny identyfikator pracy w źródłowym APD
tytuł pracy
title
contributor
author
autor pracy
contributor
advisor
promotor pracy
contributor
reviewer
recenzent pracy
contributor departmentbycode kod POL-on podstawowej jednostki organizacyjnej
date
defence
data obrony pracy (rrrr-mm-dd)
Wartości pól zawierających imiona i nazwiska osób muszą być podane w formacie:
Nazwisko, Imię (nazwisko i imię oddzielone przecinkiem i spacją). Jeśli praca ma więcej niż
jednego autora, promotora lub recenzenta odpowiednie pole musi wystąpić wielokrotnie.
4.3.1. Treść prac
Dla każdej pracy oprócz metadanych APD musi też udostępnić jej treść.
W tym celu musi w odpowiedzi na zapytania z parametrem metadataPrefix=ore
udostępniać mapy zasobów w formacie Atom zgodne ze specyfikacją OAI-ORE
(http://www.openarchives.org/ore/).
Mapa dla każdej pracy musi agregować (zawierać odnośniki z parametrem
rel="http://www.openarchives.org/ore/terms/aggregates") dostępne dla ORPD za
pomocą protokołu HTTP pliki z treścią pracy (we wszystkich formatach w jakich APD
przekazuje treść danej pracy do ORPD) i tylko takie pliki.
6