OAI-PMH: Porovnání verzí
Řádek 1: | Řádek 1: | ||
[[Kategorie: Informační studia a knihovnictví]][[Kategorie:Hesla ke zpracování UISK]] | [[Kategorie: Informační studia a knihovnictví]][[Kategorie:Hesla ke zpracování UISK]] | ||
− | |||
'''OAI-PMH''' (Open Archives Initiative Protocol for Metadata Harvesting) je rámec pro podporu komunikace mezi informačními systémy na principu sklízení dokumentových metadat. | '''OAI-PMH''' (Open Archives Initiative Protocol for Metadata Harvesting) je rámec pro podporu komunikace mezi informačními systémy na principu sklízení dokumentových metadat. | ||
OAI-PMH je vhodným nástrojem pro repozitáře k aktualizaci a doplnění záznamů o dokumentech. | OAI-PMH je vhodným nástrojem pro repozitáře k aktualizaci a doplnění záznamů o dokumentech. | ||
Řádek 11: | Řádek 10: | ||
Celého procesu se účastní '''Data provider''' a '''Service providers'''.<ref name=prir>The Open Archives Initiative Protocol for Metadata Harvesting. Openarchives.org [online]. openarchives, 2015 [cit. 2017-11-01]. Dostupné z: https://www.openarchives.org/OAI/openarchivesprotocol.html</ref> | Celého procesu se účastní '''Data provider''' a '''Service providers'''.<ref name=prir>The Open Archives Initiative Protocol for Metadata Harvesting. Openarchives.org [online]. openarchives, 2015 [cit. 2017-11-01]. Dostupné z: https://www.openarchives.org/OAI/openarchivesprotocol.html</ref> | ||
− | + | ==Repozitář (Data providers)== | |
Repozitář je administrovaný uspořádaný systém, který podporuje protokol OAI-PMH jako sběrače metadat. | Repozitář je administrovaný uspořádaný systém, který podporuje protokol OAI-PMH jako sběrače metadat. | ||
Repozitář obsahuje jednoznačně identifikované objekty. Tyto objekty jsou identifikovány pomocí identifikátorů a dalších metadat především v podobě [[Dublin Core]].<ref name=prir /> | Repozitář obsahuje jednoznačně identifikované objekty. Tyto objekty jsou identifikovány pomocí identifikátorů a dalších metadat především v podobě [[Dublin Core]].<ref name=prir /> | ||
Řádek 21: | Řádek 20: | ||
* záznam (record) | * záznam (record) | ||
Záznam se skládá z metadat uložených ve specifickém [[metadatovém formátu]] ve formě XML souboru. | Záznam se skládá z metadat uložených ve specifickém [[metadatovém formátu]] ve formě XML souboru. | ||
− | |||
===Unikátní identifikátor=== | ===Unikátní identifikátor=== | ||
Řádek 29: | Řádek 27: | ||
===Záznam=== | ===Záznam=== | ||
+ | Záznam je odpovědí na OAI-PMH požadavek ve formátu XML. XML soubor je organizován do následujících částí: | ||
+ | #hlavička - obsahuje prioritní informace, tedy unikátní identifikátor, časovou známku, informace o zařazení do setu a případně informace o statusu (deleted). | ||
+ | #metadata - reprezentace metadat připojených ke konkrétní jednotce repozitáře. Metadata musí být dostupné ve formátu Dublin Core a případně v dalších podporovaných metadatových formátech. | ||
− | ===Sběr dat (Service providers) | + | ===Sety=== |
+ | Set je nepoviný konstrukt repozitáře. Jedná se o strukturální organizaci jednotlivých objektů. Sety dokumentů se využívají převážně při ''selektivní sklizni dat''. | ||
+ | |||
+ | ==Sběr dat (Service providers)== | ||
Poskytovatel služeb, který od data providerů sklízí metadata, obvykle je shlukuje a dále popisuje. | Poskytovatel služeb, který od data providerů sklízí metadata, obvykle je shlukuje a dále popisuje. | ||
Na základě sklizených dat poskytuje svým uživatelům přidané služby (např. vyhledávací).<ref name=prir /> | Na základě sklizených dat poskytuje svým uživatelům přidané služby (např. vyhledávací).<ref name=prir /> | ||
− | |||
− | |||
==Použití protokolu== | ==Použití protokolu== | ||
Sběr dat probíhá pomocí příkazů (request), které se v protokolu označují jako ''verb''. Příkazy jsou zadávány v podobě HTTP Request Format, který podporuje php metody GET, či POST. | Sběr dat probíhá pomocí příkazů (request), které se v protokolu označují jako ''verb''. Příkazy jsou zadávány v podobě HTTP Request Format, který podporuje php metody GET, či POST. | ||
− | Syntax příkazu se skládá z adresy HTTP, která představuje ''repozitář'', ''klíčové slovo'' (verb) a jeho ''hodnotu'', která předtavuje samotný OAI-PMH požadavek doplněný o ''proměnné''. | + | Syntax příkazu se skládá z adresy HTTP, která představuje ''repozitář'', ''klíčové slovo'' (verb) a jeho ''hodnotu'', která předtavuje samotný OAI-PMH požadavek doplněný o ''proměnné''.<br /> |
− | + | '''Obecný syntax:''' | |
− | ''Obecný syntax:'' | ||
HTTP/oai? | HTTP/oai? | ||
verb=OAI-PMH požadavek&proměnné | verb=OAI-PMH požadavek&proměnné | ||
Řádek 47: | Řádek 48: | ||
#Get Record | #Get Record | ||
Tento typ požadavku se používá pro sběr dat právě o jedné jednotce repozitáře. | Tento typ požadavku se používá pro sběr dat právě o jedné jednotce repozitáře. | ||
− | ''Povinými atributy'' jsou tedy unikátní identifikátor jednotky (unique identifier) a metadataPrefix (určení formátu záznamu). | + | ''Povinými atributy'' jsou tedy unikátní identifikátor jednotky (unique identifier) a metadataPrefix (určení formátu záznamu).<br /> |
+ | Příklad: http://www.manuscriptorium.com/oai?verb=GetRecord&metadataPrefix=qdc&identifier=AIPDIG-BUW___41_E_51A____0YO48RB-cs | ||
#Identify | #Identify | ||
− | Požadavek, který získává informace o repozitáři. Nemá žádné poviné atributy. | + | Požadavek, který získává popisné informace o repozitáři. Nemá žádné poviné atributy.<br /> |
+ | Příklad: http://www.manuscriptorium.com/oai?verb=Identify | ||
#ListIdentifiers | #ListIdentifiers | ||
− | Požadavek pro výpis identifikátorů jednotek uložených v repozitáři. Nemá poviné atributy, ale efektivního využití nabývá především ve spojení s atributy ''from'' nebo ''until'', které definují čas uložení jednotky do repozitáře. | + | Požadavek pro výpis identifikátorů jednotek uložených v repozitáři. Nemá poviné atributy, ale efektivního využití nabývá především ve spojení s atributy ''from'' nebo ''until'', které definují čas uložení jednotky do repozitáře.<br /> |
+ | Příklad: http://www.manuscriptorium.com/oai?verb=ListIdentifiers&metadataPrefix=qdc | ||
#ListMetadataFormats | #ListMetadataFormats | ||
− | Požadavek pro výpis podporovaných metadatových formátů. | + | Požadavek pro výpis podporovaných metadatových formátů.<br /> |
+ | Příklad: http://www.manuscriptorium.com/oai?verb=ListMetada**taFormats | ||
#ListRecords | #ListRecords | ||
− | Požadavek pro sběr záznamů z repozitáře. Podobně jako u ListIdentifiers se používá ve spojení s atributy ''from'' nebo ''until''. | + | Požadavek pro sběr záznamů z repozitáře. Podobně jako u ListIdentifiers se používá ve spojení s atributy ''from'' nebo ''until''.<br /> |
− | + | Příklad: http://www.manuscriptorium.com/oai?verb=ListRecords&metadataPrefix=qdc&set=digitized-xr | |
− | + | #ListSets | |
− | + | Požadavek pro sběr záznamů na základě struktury repozitáře (setů) | |
− | + | <br /> | |
− | + | Příklad: http://www.manuscriptorium.com/oai?verb=ListSets | |
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Odkazy== | == Odkazy== | ||
=== Reference === | === Reference === |
Verze z 2. 1. 2018, 18:28
OAI-PMH (Open Archives Initiative Protocol for Metadata Harvesting) je rámec pro podporu komunikace mezi informačními systémy na principu sklízení dokumentových metadat. OAI-PMH je vhodným nástrojem pro repozitáře k aktualizaci a doplnění záznamů o dokumentech. Protokol je vázán licencí Creative Commons (CC), je tedy možné ho šířit i upravovat dle vlastních požadavků. [1] [2]
Obsah
Koncept protokolu
Komunikace mezi informačními systémy probíhá na principu klient-server, kdy služba sklízení (Harvester) je klientem a server je představován repozitářem. Celého procesu se účastní Data provider a Service providers.[3]
Repozitář (Data providers)
Repozitář je administrovaný uspořádaný systém, který podporuje protokol OAI-PMH jako sběrače metadat. Repozitář obsahuje jednoznačně identifikované objekty. Tyto objekty jsou identifikovány pomocí identifikátorů a dalších metadat především v podobě Dublin Core.[3] Zpřístupnění pro službu sklízení je zajišťováno třemi hlavními metadatovými entitami.
- zdroj (resource)
Tato položka předává informaci o umístění dokumentu (tj. zda je uložen přímo v repozitáři nebo repozitářem pouze zpřístupněn) a o jeho formátu (digitální/fyzický)
- jednotka (item)
Jednotkou je myšlena složka, kde jsou uskladněna popisná metadata. Metadata mohou být uložena přímo v repozitáři nebo dynamicky vytvořena z vnějšího zdroje. Každá jednotka je určena pomocí [Unikátního identifikátoru]
- záznam (record)
Záznam se skládá z metadat uložených ve specifickém metadatovém formátu ve formě XML souboru.
Unikátní identifikátor
Unikátní identifikátor je přiřazován jednotlivým jednotkám (item) uvnitř repozitáře. Používá se při provádění OAI-PMH požadavku na stažení metadat. Formát unikátního identifikátoru musí korespondovat s normou pro URI (Uniform Resource Identifier). Identifikátor plní v protokolu roli odpovědi (ListIdentifiers, ListRecords) i požadavku (GetRecord)
Záznam
Záznam je odpovědí na OAI-PMH požadavek ve formátu XML. XML soubor je organizován do následujících částí:
- hlavička - obsahuje prioritní informace, tedy unikátní identifikátor, časovou známku, informace o zařazení do setu a případně informace o statusu (deleted).
- metadata - reprezentace metadat připojených ke konkrétní jednotce repozitáře. Metadata musí být dostupné ve formátu Dublin Core a případně v dalších podporovaných metadatových formátech.
Sety
Set je nepoviný konstrukt repozitáře. Jedná se o strukturální organizaci jednotlivých objektů. Sety dokumentů se využívají převážně při selektivní sklizni dat.
Sběr dat (Service providers)
Poskytovatel služeb, který od data providerů sklízí metadata, obvykle je shlukuje a dále popisuje. Na základě sklizených dat poskytuje svým uživatelům přidané služby (např. vyhledávací).[3]
Použití protokolu
Sběr dat probíhá pomocí příkazů (request), které se v protokolu označují jako verb. Příkazy jsou zadávány v podobě HTTP Request Format, který podporuje php metody GET, či POST.
Syntax příkazu se skládá z adresy HTTP, která představuje repozitář, klíčové slovo (verb) a jeho hodnotu, která předtavuje samotný OAI-PMH požadavek doplněný o proměnné.
Obecný syntax:
HTTP/oai?
verb=OAI-PMH požadavek&proměnné
Typy OAI-PMH požadavku
- Get Record
Tento typ požadavku se používá pro sběr dat právě o jedné jednotce repozitáře.
Povinými atributy jsou tedy unikátní identifikátor jednotky (unique identifier) a metadataPrefix (určení formátu záznamu).
Příklad: http://www.manuscriptorium.com/oai?verb=GetRecord&metadataPrefix=qdc&identifier=AIPDIG-BUW___41_E_51A____0YO48RB-cs
- Identify
Požadavek, který získává popisné informace o repozitáři. Nemá žádné poviné atributy.
Příklad: http://www.manuscriptorium.com/oai?verb=Identify
- ListIdentifiers
Požadavek pro výpis identifikátorů jednotek uložených v repozitáři. Nemá poviné atributy, ale efektivního využití nabývá především ve spojení s atributy from nebo until, které definují čas uložení jednotky do repozitáře.
Příklad: http://www.manuscriptorium.com/oai?verb=ListIdentifiers&metadataPrefix=qdc
- ListMetadataFormats
Požadavek pro výpis podporovaných metadatových formátů.
Příklad: http://www.manuscriptorium.com/oai?verb=ListMetada**taFormats
- ListRecords
Požadavek pro sběr záznamů z repozitáře. Podobně jako u ListIdentifiers se používá ve spojení s atributy from nebo until.
Příklad: http://www.manuscriptorium.com/oai?verb=ListRecords&metadataPrefix=qdc&set=digitized-xr
- ListSets
Požadavek pro sběr záznamů na základě struktury repozitáře (setů)
Příklad: http://www.manuscriptorium.com/oai?verb=ListSets
Odkazy
Reference
- ↑ Protocol for Metadata Harvesting. Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2001-. Dostupné také z: https://en.wikipedia.org/wiki/Protocol_for_Metadata_Harvesting
- ↑ Open Archives Initiative. In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2001- [cit. 2017-11-01]. Dostupné z: http://wiki.knihovna.cz/index.php/OAI-PMH
- ↑ 3,0 3,1 3,2 The Open Archives Initiative Protocol for Metadata Harvesting. Openarchives.org [online]. openarchives, 2015 [cit. 2017-11-01]. Dostupné z: https://www.openarchives.org/OAI/openarchivesprotocol.html