API » History » Version 2

« Previous - Version 2/4 (diff) - Next » - Current version
Tomasz Blazejczyk, 2018-12-10 16:09


API

System Yadda umożliwia pobieranie i eksplorację danych w oparciu o standardowe API. Dzięki temu możliwe jest wzbogacanie własnych serwisów o dane bibliograficzne zgromadzone w bibliograficznej bazie danych

OAI-PHM

Standard OAI-PMH jest dokładnie opisany pod adresem

https://www.openarchives.org/OAI/openarchivesprotocol.html

System Yadda udostępnia server pod adresem:

http://agro.icm.edu.pl/agro/api/oai

Przydatne operacje udostępniane przez serwer:

Informacje identyfikacyjne
http://agro.icm.edu.pl/agro/api/oai?verb=Identify

Lista udostępnianych formatów
http://agro.icm.edu.pl/agro/api/oai?verb=ListMetadataFormats

Listowanie rekordów w formacie Dublin Core
http://agro.icm.edu.pl/agro/api/oai?verb=ListRecords&metadataPrefix=oai_dc

Listowanie rekordów w formacie NLM JATS
http://agro.icm.edu.pl/agro/api/oai?verb=ListRecords&metadataPrefix=nlm

Opensearch

Technologia Opensearch umożliwia bezpośrednią integrację z przeglądarkami i desktopowym oprogramowaniem do prezentacji danych.
Standard wymiany danych został zdefiniowany tutaj http://www.opensearch.org/Specifications/OpenSearch

W przypadku systemu Yadda kluczowe są następujące elementy:

Identyfikacja interfejsu wyszukiwania

Strona główna zawiera link do opisu interfejsu Opensearch który jest jednoznacznie interpretowany przez przeglądarki typu Firefox czy Chrome

<link rel="search" type="application/opensearchdescription+xml"
href="http://agro.icm.edu.pl/agro/api/search/description"
title="Biblioteka Wirtualna Nauki" />

Możliwe jest wybranie domyślnej wyszukiwarki z proponowanego zestawu

Opis definiuje punkt dostępu do wyników wyszukiwania w określonych formatach

<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
<ShortName>Biblioteka Wirtualna Nauki</ShortName>
<Description>Biblioteka Wirtualna Nauki - Yadda search engine.</Description>
<Tags>yadda search library</Tags>

&lt;Url type="application/rss+xml" 
template="http://lodowy.vls.icm.edu.pl/agro-test/api/search/description?q={searchTerms}&amp;startIndex={startIndex?}&amp;count={count?}&amp;rf={resultFields?}&amp;format=rss"/>
&lt;Url type="application/xhtml+xml"
template="http://lodowy.vls.icm.edu.pl/agro-test/api/search/description?q={searchTerms}&amp;startIndex={startIndex?}&amp;count={count?}&amp;rf={resultFields?}&amp;format=html"/>
&lt;Url type="text/html"
template="http://lodowy.vls.icm.edu.pl/agro-test/search.action?SCHEME=general&amp;EQUALS_all={searchTerms}"/>
&lt;Url type="application/xml"
template="http://lodowy.vls.icm.edu.pl/agro-test/api/search/description?q={searchTerms}&amp;startIndex={startIndex?}&amp;count={count?}&amp;rf={resultFields?}&amp;format=xml"/>
&lt;Query role="example" searchTerms="article"/&gt;    
&lt;OutputEncoding&gt;UTF-8&lt;/OutputEncoding&gt;
&lt;InputEncoding&gt;UTF-8&lt;/InputEncoding&gt;
&lt;/OpenSearchDescription&gt;

placeholdery w postaci {} określają parametry wypełniane przez klienta wyszukiwania

Przykład wyszukiwania z wynikami w formacie RSS

http://agro.icm.edu.pl/agro/api/search/description?q=nawóz&format=rss

Przykład wyszukiwania z wynikami w formacie Atom

http://agro.icm.edu.pl/agro/api/search/description?q=nawóz&f