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 pod adresem
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> <Url type="application/rss+xml" template="http://lodowy.vls.icm.edu.pl/agro-test/api/search/description?q={searchTerms}&startIndex={startIndex?}&count={count?}&rf={resultFields?}&format=rss"/> <Url type="application/xhtml+xml" template="http://lodowy.vls.icm.edu.pl/agro-test/api/search/description?q={searchTerms}&startIndex={startIndex?}&count={count?}&rf={resultFields?}&format=html"/> <Url type="text/html" template="http://lodowy.vls.icm.edu.pl/agro-test/search.action?SCHEME=general&EQUALS_all={searchTerms}"/> <Url type="application/xml" template="http://lodowy.vls.icm.edu.pl/agro-test/api/search/description?q={searchTerms}&startIndex={startIndex?}&count={count?}&rf={resultFields?}&format=xml"/> <Query role="example" searchTerms="article"/> <OutputEncoding>UTF-8</OutputEncoding> <InputEncoding>UTF-8</InputEncoding> </OpenSearchDescription>
placeholdery w postaci {} określają parametry wypełniane przez klienta wyszukiwania
Zapytania wyszukiwarek¶
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&format=xml