Przeszukaj Serwis Informacyjny FBC pro

Przeszukaj zbiory FBC

FBC >
21 marca 2016

Przeszukiwanie FBC (OpenSearch)

Federacja Bibliotek Cyfrowych posiada interfejs zgodny ze standardem OpenSearch w wersji 1.1. Standard ten daje praktycznie takie same możliwości wyszukiwawcze jak formularz wyszukiwania prostego i zaawansowanego na stronach FBC. Dzięki jego wykorzystaniu możliwe jest uzyskanie wyników wyszukiwania w FBC w formacie HTML oraz RSS z dodatkowymi znacznikami OpenSearch, pozwalającymi na automatyzację pobierania kolejnych stron wyników.

Deskryptor interfejsu OpenSearch FBC, pokazujący podstawową składnię adresu URL pozwalającego na wyszukiwanie we wszystkich elementach opisu publikacji, dostępny jest pod adresem http://fbc.pionier.net.pl/opensearch/description.xml.

Konstruowanie prostych zapytań wyszukiwawczych

Jak widać w najprostszym przypadku adres taki może mieć następującą strukturę:

http://fbc.pionier.net.pl/opensearch/search?searchTerms={searchTerms}

gdzie {searchTerms} oznacza miejsce na wstawienie zapytania. Dla przykładu:

http://fbc.pionier.net.pl/opensearch/search?searchTerms=kultura

W kodzie źródłowym otrzymanego kanału RSS, poza standardowymi elementami RSS znajdują się:

  • w nagłówku kanału
    • elementy specyficzne dla OpenSearch (prefiks opensearch), zawierające m.in. informacje niezbędne do stronicowania wyników (por. specyfikacja protokołu OpenSearch),
    • elementy specyficzne dla wyszukiwania z FBC (przestrzeń nazw http://fbc.pionier.net.pl/opensearch/xsd/fbc-search-addins.xsd),
  • przy poszczególnych elementach kanału (czyli poszczególnych wynikach wyszukiwania) znacznik relevance:score określający trafność wyniku w skali od 0 do 1 oraz znacznik ese:dataProvider zawierający informacje o bibliotece cyfrowej, z której pochodzi dany wynik.

Znacznik relevance:score to jedno z oficjalnych rozszerzeń OpenSearch. Znaczniki xmlns=http://fbc.pionier.net.pl/search-addins to elementy specyficzne dla FBC. Ich formalną specyfikację zawiera plik XSD dostępny pod adresem http://fbc.pionier.net.pl/opensearch/xsd/fbc-search-addins.xsd.

Interpretacja opisu wyników wyszukiwania

Poza standardowymi znacznikami dla kanału RSS (np.: titlelink), wyniki wyszukiwania posiadają:

  • znaczniki dla opisu w schemacie Dublin Core Metadata Element Set (prefiks dc:), który został pobrany ze źródłowej biblioteki cyfrowej,
  • wybrane znaczniki dla opisu w schemacie Europeana Semantic Elements (prefiks ese:), które zostały dodatkowo przygotowane przez FBC:
    • ese:type – przyporządkowuje publikacje do jednego z góry zdefiniowanych typów: tekst, obraz, dzwięk, wideo,
    • ese:dataProvider – nazwa instytucji dostarczającej dane

Zawężanie wyszukiwania do pojedynczego elementu metadanych

W celu zawężenia wyszukiwania do pojedynczego elementu metadanych należy użyć adresu URL o następującej składni:

http://fbc.pionier.net.pl/opensearch/search?searchTerms={metElementIdFilter}%3A({searchTerms})

gdzie {metElementFilterId} o miejsce na wstawienie filtru identyfikatora tego elementu metadanych, do którego ma zostać zawężone zapytanie. Dla przykładu:

http://fbc.pionier.net.pl/opensearch/search?searchTerms=dc_subject%3A(kultura)

Lista identyfikatorów poszczególnych elementów metadanych wspieranych obecnie przez FBC jest następująca:

  • DublinCore (prefix dc)
    • title (filtr dc_title) – tytuł,
    • creator (filtr dc_creator) – twórca,
    • subject (filtr dc_subject) – temat i słowa kluczowe,
    • description (filtr dc_description) – opis,
    • publisher (filtr dc_publisher) – wydawca,
    • contributor (filtr dc_contributor) – współtwórca,
    • date (filtr dc_date) – data,
    • type (filtr dc_type) – typ zasobu,
    • format (filtr dc_format) – format,
    • identifier (filtr dc_identifier) – identyfikator zasobu,
    • source (filtr dc_source) – źródło,
    • language (filtr dc_language) – język,
    • relation (filtr dc_relation) – powiązania,
    • coverage (filtr dc_coverage) – zakres,
    • rights (filtr dc_rights) – prawa,
  • EuropeanaSemanticElements (prefix ese)
    • type (filtr europeana_type) – typ zasobu,
    • dataProvider (filtr europeana_dataProvider) – dostawca zasobu,
  • Brak identyfikatora – cały opis naraz (wszystkie powyższe pola).

Konstruowanie złożonych zapytań wyszukiwawczych

Konstruowanie złożonych zapytań wyszukiwawczych możliwe jest przez zastosowanie adresu URL o następującej składni:

http://fbc.pionier.net.pl/opensearch/search?searchTerms={metElementIdFilter1}%3A({searchTerms1})%20{boolOp1}{metElementIdFilter2}%3A({searchTerms2})...

przy czym znaczenie poszczególnych zmiennych jest następujące (N oznacza kolejne liczby naturalne odpowiadające kolejnym częściom złożonego zapytania):

  • {metElementFilterIdN} – filtr identyfikatora elementu metadanych dla części N zapytania (lista dozwolonych wartości taka sama jak w przypadku zawężania zapytania dla pojedynczego elementu metadanych – patrz wyżej)
  • {searchTermsN} – treść części N zapytania
  • {boolOpN} – łącznik logiczny pomiędzy częścią N zapytania i częścią N-1 (dozwolone wartości: ANDOR)

Przykładowe zapytanie może zatem wyglądać następująco:

http://fbc.pionier.net.pl/opensearch/search?searchTerms=dc_subject%3A(kultura)%20AND%20dc_language%3A(pol)

Ograniczenie wyszukiwania do wybranych bibliotek cyfrowych

Wybór przeszukiwanych bibliotek cyfrowych możliwy jest przez zastosowanie adresu URL o następującej składni:

http://fbc.pionier.net.pl/opensearch/search?searchTerms=
{searchTerms}%20AND%20(europeana_dataProvider%3A(%22{FBCDataProvider1}%22)
%20OR%20europeana_dataProvider%3A(%22{FBCDataProvider2}%22))...

przy czym zmienna {FBCDataProviderIdN} wskazuje na dostawcę danych (ese:dataProvider) w Federacji Bibliotek Cyfrowych.

Przykład: wyszukiwanie w publikacjach biblioteki cyfrowej u dwóch dostawców (FBCDataProvider1=CBN%20Polona i FBCDataProvider2=Wielkopolska%20Biblioteka%20Cyfrowa):

http://fbc.pionier.net.pl/opensearch/search?searchTerms=%22Pan%20Tadeusz%22%20AND%20 […]