Skip to contents

Introduction

Finna is a Finnish national search service that provides access to the collections of Finnish museums, libraries, and archives. It is maintained by the National Library of Finland in collaboration with other cultural and scientific institutions. Finna allows users to search and explore a wide range of resources, including books, images, maps, artifacts, and digital content from various institutions across Finland.

This vignette provides an overview of how to use the finna package.

To make a simple search use the following code.

N.B In the search_finna() default limit of 100 records is being used. Specify ‘limit’ argument for more records.

library(finna)
record <- search_finna("sibelius")
print(record)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 lapinkirjasto.15… Sibe… Sibel… 2001  NA       Äänite… NA       Lapin … NA    
##  2 eepos.136605      Sibe… Ringb… 1948  fin      Kirja,… Sibeliu… Eepos-… NA    
##  3 helka.9911600523… Sibe… Gray,… 1931  eng      Kirja,… henkilö… Helka-… NA    
##  4 anders.1441618    Sibe… Tawas… 2015  fin      Kirja,… Sibeliu… Anders… NA    
##  5 helka.9919372383… Sibe… Lampi… 2005  fin      Kirja,… säveltä… Helka-… NA    
##  6 tuni.99117204205… Sibe… Downe… 1945  fin      Kirja,… Sibeliu… Tamper… NA    
##  7 blanka.374eb090-… Sibe… Tawas… 2015  fin      Kirja,… Sibeliu… Blanka… NA    
##  8 anders.120029     Sibe… Ringb… 1948  swe      Kirja,… Sibeliu… Anders… NA    
##  9 fikka.3655590     Sibe… Ringb… 1948  swe      Kirja,… Sibeliu… Kansal… NA    
## 10 kainet.385649     Sibe… Layto… 1992  eng      Kirja,… Sibeliu… Kainet… The m…
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

Searching as subject

library(finna)
record <- search_finna(query = '"orkesterimusiikki"', type = "Subject", lng = "en-gb")
print(record)
## # A tibble: 100 × 10
##    id            Title     Author Year  Language Formats Subjects Library Series
##    <chr>         <chr>     <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 fikka.1505988 Konsertt… Helsi… 1902  swe      Book m… orkeste… The Na… NA    
##  2 fikka.1505976 Konsertt… Helsi… 1913  fin      Book m… 1910-lu… The Na… NA    
##  3 fikka.1505977 Konsertt… Helsi… 1914  fin      Book m… 1910-lu… The Na… NA    
##  4 fikka.1505978 Konsertt… Helsi… 1901  fin      Book m… 1900-19… The Na… NA    
##  5 fikka.1505987 Konsertt… Helsi… 1903  fin      Book m… 1900-19… The Na… NA    
##  6 fikka.5688134 Score-To… Pulkk… 2023  eng      Book m… säveltä… The Na… EST-j…
##  7 fikka.5688142 Score-To… Pulkk… 2023  eng      Book m… säveltä… The Na… EST-j…
##  8 fikka.1505975 Konsertt… Helsi… 1912  fin      Book m… 1910-lu… The Na… NA    
##  9 fikka.1505980 Konsertt… Helsi… 1912  fin      Book m… 1910-lu… The Na… NA    
## 10 fikka.1506009 Konsertt… Helsi… 1916  fin      Book m… 1910-lu… The Na… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

I we need a bulk download we use search_finna("sibelius", limit = Inf) where we add the term limit = Inf.

Search phrase examples

library(finna)
phrase <- search_finna("bicycle")
print(phrase)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 turkuamk_finna.9… Bicy… Sica,… 1981  eng      Kirja,… Italia.… Turun … NA    
##  2 helmet.1928272    Bicy… Kalim… 2009  zxx      Äänite… 2000-20… Helmet… NA    
##  3 piki.914540       Bicy… NA     2009  zxx      Äänite… NA       PIKI-k… NA    
##  4 vaari.565915      Bicy… Scios… 1983  eng      Kirja,… NA       Varast… NA    
##  5 eepos.2088987     Bicy… Gaddy… 1987  eng      Äänite… NA       Eepos-… NA    
##  6 jamk.99372411640… Bicy… Leagu… 1984  eng      Opinnä… Cycling… Jyväsk… NA    
##  7 lastu.234274      Bicy… Byrne… 2010  eng      Kirja,… Byrne, … Lastu-… NA    
##  8 vaari.565339      Bicy… NA     1900  eng      Kirja,… NA       Varast… NA    
##  9 fikka.5372420     Bicy… NA     2009  NA       Äänite… NA       Kansal… NA    
## 10 helmet.1220352    The … Dodge… 1996  eng      Kirja,… polkupy… Helmet… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

Search operators + and !-

In addition to the most common Boolean operators (AND, OR, NOT), Finna uses the + and !- operators.

+

The + sign indicates that the search term must be found in every search result.

For example, if you are looking for material that must feature economics and which may also feature Keynes:

library(finna)
search_oper <- search_finna("+economics Keynes”)")
print(search_oper)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 uef.998588837059… Keyn… Lawso… 1985  eng      Kirja,… NA       Itä-Su… NA    
##  2 abo.991952734059… Keyn… Lawso… 1989  eng      Kirja,… NA       Åbo Ak… NA    
##  3 hanna.29001       The … Harri… 1947  eng      Kirja,… Keynes.… Svensk… NA    
##  4 fikka.567288      The … Harri… 1948  eng      Kirja,… Keynes,… Kansal… NA    
##  5 utu.991459665540… The … Harri… 1968  eng      Kirja,… NA       Turun … NA    
##  6 vaari.1080451     The … Harri… 1965  eng      Kirja,… NA       Varast… NA    
##  7 ekk.991689954006… The … Harri… 1949  eng      Kirja,… keynesi… Edusku… NA    
##  8 tuni.99329737420… The … Harri… 1950  eng      Kirja,… Keynes,… Tamper… NA    
##  9 vaari.113512      The … Harri… 1949  eng      Kirja,… NA       Varast… NA    
## 10 jamk.99362852690… Keyn… Kurok… 2013  eng      Kirja,… Keynesi… Jyväsk… Routl…
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

!-

The symbols !- remove any search results which feature the search term following the operator !-.

For example, if you want to find material that feature the term economics but not the term Keynes:

library(finna)
search_oper <- search_finna("economics !-Keynes”)")
print(search_oper)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 cute.761dae96-5a… New … Londo… 1997  eng      Kirja,… taiteen… Kulttu… ACE r…
##  2 tria.7247         Econ… Sloma… 1991  fin      Kirja,… kansant… Triton… NA    
##  3 3amk.266286       Econ… Manki… 2014  eng      Kirja,… Economi… 3AMK-k… NA    
##  4 aalto.9959673644… Econ… Sloma… 2000  eng      Kirja,… Kansant… Aalto-… NA    
##  5 aalto.9960689844… Econ… Manki… 2006  eng      Kirja,… Kansant… Aalto-… NA    
##  6 helka.9919326873… Econ… Begg,… 2005  eng      Kirja,… Economi… Helka-… NA    
##  7 3amk.208341       Econ… Parki… 2017  eng      Kirja,… Economi… 3AMK-k… NA    
##  8 aalto.9927947644… Econ… Begg,… 1997  eng      Kirja,… mikrota… Aalto-… NA    
##  9 jykdok.1241916    Econ… Krugm… 2013  eng      Kirja,… Economi… Jyväsk… NA    
## 10 helka.9964084835… Econ… Begg,… 1994  eng      Kirja,… kansant… Helka-… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>
NB! The !- operator cannot be used in single-word searches.

For example, the following search will yield no results:

library(finna)
search_oper <- search_finna("!-economics”)")
print(search_oper)
## # A tibble: 100 × 10
##    id          Title       Author Year  Language Formats Subjects Library Series
##    <chr>       <chr>       <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 3amk.209999 Päihdetila… NA     2013  fin      Kirja,… alkohol… 3AMK-k… Suome…
##  2 3amk.211317 Sosiaali- … NA     2019  fin      Kirja,… tilasto… 3AMK-k… Suome…
##  3 3amk.211318 Päihdetila… NA     2018  fin      Kirja,… alkohol… 3AMK-k… Suome…
##  4 3amk.292496 Koti- ja v… Koti-… 2013  fin      Kirja,… Leisure… 3AMK-k… Sosia…
##  5 3amk.91452  Kyberturva… Olin,… 2018  fin      Kirja,… kybertu… 3AMK-k… Sanas…
##  6 3amk.39381  Teknologia… Markk… 2003  fin      Kirja,… teknolo… 3AMK-k… Edusk…
##  7 3amk.55142  Työsuojelu… Sanas… 2006  fin      Kirja,… Diction… 3AMK-k… TSK, …
##  8 3amk.60288  Hyvä tiete… Tutki… 2002  fin      Kirja,… tutkimu… 3AMK-k… NA    
##  9 3amk.66893  Mahdollisu… Holma… 2008  fin      Kirja,… Turun a… 3AMK-k… Turun…
## 10 3amk.69050  Pysytään t… Suomi… 2008  fin      Kirja,… vajaaku… 3AMK-k… Sosia…
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

Fuzzy search will also yield results that feature words which are similar to your search term.

The search operator ~ will perform a fuzzy search when it is used as the final character of a single-word search.

For example, a fuzzy search with the word roam will also return results with the words foam and roams.

fuzzy_search <- search_finna("roam~")
print(fuzzy_search)
## NULL

Proximity searches look for material in which the search terms are within a specified distance, but not necessarily one after the other.

fuzzy_search <- search_finna("economics Keynes~10")
print(fuzzy_search)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 uef.998588837059… Keyn… Lawso… 1985  eng      Kirja,… NA       Itä-Su… NA    
##  2 abo.991952734059… Keyn… Lawso… 1989  eng      Kirja,… NA       Åbo Ak… NA    
##  3 jamk.99362852690… Keyn… Kurok… 2013  eng      Kirja,… Keynesi… Jyväsk… Routl…
##  4 vaari.1130778     Keyn… Gilbe… 1982  eng      Kirja,… Keynesi… Varast… NA    
##  5 helmet.1199524    KEYN… CODDI… 1983  eng      Kirja,… NA       Helmet… NA    
##  6 ekk.993218740062… On K… Leijo… 1968  eng      Kirja,… Keynes,… Edusku… NA    
##  7 vaari.2696406     The … Johns… 1978  eng      Kirja,… Keynes,… Varast… NA    
##  8 helka.9916561935… The … Johns… 1978  eng      Kirja,… Keynes,… Helka-… NA    
##  9 uef.998437037059… The … Johns… 1978  eng      Kirja,… NA       Itä-Su… NA    
## 10 aalto.9982217144… John… David… 2007  eng      Kirja,… Keynes,… Aalto-… Great…
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

Advanced search: to see available online

record <- search_finna("sibelius", filters = c("free_online_boolean:1"))
print(record)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 jtm.158774447824… Sibe… Tappe… 1967  NA       Taidet… NA       Jyväsk… NA    
##  2 lahdenmuseo.lkm-… Sibe… Favén… NA    NA       Taidet… kaljuus… Lahden… NA    
##  3 sibelius.DF70D25… Evel… NA     1875  NA       Kuva, … NA       Sibeli… NA    
##  4 jarvenpaantaidem… Aino… Eero … NA    NA       Taidet… maalaus… Järven… NA    
##  5 visavuori.pju-49… SIBE… NA     1962  NA       Taidet… NA       Valkea… NA    
##  6 heinolanmuseo.hk… Jean… NA     1957  NA       Esine   Veistok… Heinol… NA    
##  7 hkm.3a4425aa-28b… Sibe… Kalti… 2023  NA       Kuva, … veistok… Helsin… NA    
##  8 kavi.elonet_elok… Jean… Holge… 1945  fin      Video,… säveltä… Kansal… NA    
##  9 loviisakm.5cae48… Pehr… NA     NA    NA       Kuva, … muotoku… Loviis… NA    
## 10 museovirasto.236… Jean… Helan… 1935  NA       Kuva, … miesten… Museov… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

search image

For specific collection of images from specific organisation we can search metadata for example: We take an image from organisation: “Military Museum” and choose search key to be “Laatokka”. (https://www.finna.fi/Search/Results?lookfor=laatokka&type=AllFields&filter%5B%5D=%7Ebuilding%3A%220%2FSA-kuva%2F%22&limit=20&sort=relevance)

record <- search_finna("laatokka",filters = c('~building:"0/SA-kuva/"'))
print(record)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 sa-kuva.sa-kuva-… Laat… Sot.v… NA    NA       Kuva, … NA       Sotamu… NA    
##  2 sa-kuva.sa-kuva-… Hote… Manni… 1941  NA       Kuva, … NA       Sotamu… NA    
##  3 sa-kuva.sa-kuva-… Hote… Manni… 1941  NA       Kuva, … NA       Sotamu… NA    
##  4 sa-kuva.sa-kuva-… Aava… Saul … 1942  NA       Kuva, … NA       Sotamu… NA    
##  5 sa-kuva.sa-kuva-… Laat… Sot.v… 1942  NA       Kuva, … NA       Sotamu… NA    
##  6 sa-kuva.sa-kuva-… Taip… Sot.v… 1941  NA       Kuva, … NA       Sotamu… NA    
##  7 sa-kuva.sa-kuva-… Jouk… Kersa… 1944  NA       Kuva, … NA       Sotamu… NA    
##  8 sa-kuva.sa-kuva-… Hels… Saul … 1942  NA       Kuva, … NA       Sotamu… NA    
##  9 sa-kuva.sa-kuva-… Fiat… Hanho… 1941  NA       Kuva, … NA       Sotamu… NA    
## 10 sa-kuva.sa-kuva-… Vies… Sot.v… 1944  NA       Kuva, … NA       Sotamu… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

Similarly, we can do the same for specific search keysas follows:

record <- search_finna("sibelius", filters = c('~media_type_str_mv:"0/image/"'))
print(record)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 abo.kortkat_1648… Sibe… Tawas… 1968  NA       Kirja,… NA       Åbo Ak… NA    
##  2 abo.kortkat_0518… Sibe… Picke… NA    NA       Kirja,… NA       Åbo Ak… NA    
##  3 abo.kortkat_0991… Sibe… Schou… 1949  NA       Kirja,… NA       Åbo Ak… NA    
##  4 abo.kortkat_0441… Sibe… Ottaw… 1968  NA       Kirja,… NA       Åbo Ak… NA    
##  5 abo.kortkat_0872… Sibe… Ringb… 1948  NA       Kirja,… NA       Åbo Ak… NA    
##  6 jtm.158774447824… Sibe… Tappe… 1967  NA       Taidet… NA       Jyväsk… NA    
##  7 lahdenmuseo.lkm-… Sibe… Favén… NA    NA       Taidet… kaljuus… Lahden… NA    
##  8 abo.kortkat_1535… Sibe… Sugan… 1967  NA       Kirja,… NA       Åbo Ak… NA    
##  9 sibelius.DF70D25… Evel… NA     1875  NA       Kuva, … NA       Sibeli… NA    
## 10 jarvenpaantaidem… Aino… Eero … NA    NA       Taidet… maalaus… Järven… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

Audio book

record <- search_finna("sibelius", filters = c('~format:"1/Book/AudioBook/"'))
print(record)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 eepos.2627672     Aino… Kontt… 2019  fin      Kirja,… Sibeliu… Eepos-… NA    
##  2 siilinjarvi.5680… Aino… Kontt… 2019  fin      Kirja,… Sibeliu… Siilin… NA    
##  3 rutakko.8d75bf0b… Jean… Sibel… 1991  zxx      Kirja,… romanss… Rutakk… NA    
##  4 lastu.1707418     Aino… Kontt… 2020  fin      Kirja,… Sibeliu… Lastu-… NA    
##  5 tiekko.901913     The … Sibel… 1994  zxx      Kirja,… NA       Joki-k… NA    
##  6 lapinkirjasto.80… Sibe… Matti… 1995  NA       Kirja,… Illalle… Lapin … NA    
##  7 eepos.1271855     Aino… Kirve… 2015  fin      Kirja,… Sibeliu… Eepos-… NA    
##  8 somero.11f1f995-… Aino… Kirve… 2015  fin      Kirja,… Sibeliu… Somero… NA    
##  9 ratamo.458604     Aino… Kirve… 2011  fin      Kirja,… NA       Ratamo… NA    
## 10 siilinjarvi.2337… Aino… Kirve… 2015  fin      Kirja,… NA       Siilin… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

Year of manufacture

record <- search_finna("sibelius", filters = c('search_daterange_mv:"overlap|[-5000 TO 5000]"'))
print(record)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 lapinkirjasto.15… Sibe… Sibel… 2001  NA       Äänite… NA       Lapin … NA    
##  2 eepos.136605      Sibe… Ringb… 1948  fin      Kirja,… Sibeliu… Eepos-… NA    
##  3 helka.9911600523… Sibe… Gray,… 1931  eng      Kirja,… henkilö… Helka-… NA    
##  4 anders.1441618    Sibe… Tawas… 2015  fin      Kirja,… Sibeliu… Anders… NA    
##  5 helka.9919372383… Sibe… Lampi… 2005  fin      Kirja,… säveltä… Helka-… NA    
##  6 tuni.99117204205… Sibe… Downe… 1945  fin      Kirja,… Sibeliu… Tamper… NA    
##  7 blanka.374eb090-… Sibe… Tawas… 2015  fin      Kirja,… Sibeliu… Blanka… NA    
##  8 anders.120029     Sibe… Ringb… 1948  swe      Kirja,… Sibeliu… Anders… NA    
##  9 fikka.3655590     Sibe… Ringb… 1948  swe      Kirja,… Sibeliu… Kansal… NA    
## 10 kainet.385649     Sibe… Layto… 1992  eng      Kirja,… Sibeliu… Kainet… The m…
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

Search using Geofilter syntax (Geographical region)

record <- search_finna("trump", filters = c('{!geofilt sfield=location_geo pt=61.663987171517796,24.17263895273209 d=212.53603751769646}'))
print(record)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 museovirasto.1E1… naam… NA     NA    NA       Esine   naamiai… Suomen… NA    
##  2 museovirasto.810… Hels… Hoppa… 2018  NA       Kuva, … Helsink… Museov… NA    
##  3 museovirasto.276… Hels… Häkki… 2018  NA       Kuva, … Helsink… Museov… NA    
##  4 museovirasto.B22… Hels… Häkki… 2018  NA       Kuva, … Helsink… Museov… NA    
##  5 museovirasto.DC1… Hels… Häkki… 2018  NA       Kuva, … Helsink… Museov… NA    
##  6 museovirasto.37D… Hels… Hoppa… 2018  NA       Kuva, … Helsink… Museov… NA    
##  7 museovirasto.434… Hels… Hoppa… 2018  NA       Kuva, … Helsink… Museov… NA    
##  8 museovirasto.551… Hels… Hoppa… 2018  NA       Kuva, … Helsink… Museov… NA    
##  9 museovirasto.AEB… Hels… Hoppa… 2018  NA       Kuva, … Helsink… Museov… NA    
## 10 museovirasto.341… Hels… Häkki… 2018  NA       Kuva, … Helsink… Museov… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

geofilter ouside of finland

record <- search_finna("trump", filters = c('{!geofilt sfield=location_geo pt=39.3130504637139,-76.33021295070648 d=281.83790818401854}'))
print(record)
## # A tibble: 8 × 10
##   id    Title Author Year  Language Formats Subjects Library Series last_indexed
##   <chr> <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr>  <chr>       
## 1 arto… Kulu… NA     1988  fin      Lehti/… Trump, … Kansal… NA     NA          
## 2 piki… A fo… Bunch… 2019  eng      Kirja,… Nationa… PIKI-k… NA     NA          
## 3 vask… Oath… Chene… 2023  eng      Kirja,… Cheney,… Vaski-… NA     NA          
## 4 helm… Mela… Wolko… 2020  eng      Kirja,… Wolkoff… Helmet… NA     NA          
## 5 tuni… The … The J… 2022  eng      Kirja,… Trump, … Tamper… NA     NA          
## 6 utu.… Goth… Stein… 2014  eng      Kirja,… Yhdysva… Turun … NA     NA          
## 7 fikk… The … Roman… 2024  eng      Kirja,… Village… Kansal… NA     NA          
## 8 ande… Swee… Simol… 2018  fin      Kirja,… Simola,… Anders… NA     NA

When narrowing search you can use codes as a combination as follows

record <- search_finna("trump", filters = c('{!geofilt sfield=location_geo pt=61.663987171517796,24.17263895273209 d=212.53603751769646},author_facet:"Häkkinen,Hannu"'))
print(record)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 museovirasto.1E1… naam… NA     NA    NA       Esine   naamiai… Suomen… NA    
##  2 museovirasto.810… Hels… Hoppa… 2018  NA       Kuva, … Helsink… Museov… NA    
##  3 museovirasto.276… Hels… Häkki… 2018  NA       Kuva, … Helsink… Museov… NA    
##  4 museovirasto.B22… Hels… Häkki… 2018  NA       Kuva, … Helsink… Museov… NA    
##  5 museovirasto.DC1… Hels… Häkki… 2018  NA       Kuva, … Helsink… Museov… NA    
##  6 museovirasto.37D… Hels… Hoppa… 2018  NA       Kuva, … Helsink… Museov… NA    
##  7 museovirasto.434… Hels… Hoppa… 2018  NA       Kuva, … Helsink… Museov… NA    
##  8 museovirasto.551… Hels… Hoppa… 2018  NA       Kuva, … Helsink… Museov… NA    
##  9 museovirasto.AEB… Hels… Hoppa… 2018  NA       Kuva, … Helsink… Museov… NA    
## 10 museovirasto.341… Hels… Häkki… 2018  NA       Kuva, … Helsink… Museov… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>
record <- search_finna("era:'2010-luku'", filters = c('building:"0/3AMK/"'))

search without removing duplication

In order to search data without removing duplication example.

record <- search_finna('era:"2010-luku"', filters = c('~building:"0/3AMK/"', 'finna.deduplication:"1"'))
print(record)
## # A tibble: 100 × 10
##    id          Title       Author Year  Language Formats Subjects Library Series
##    <chr>       <chr>       <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 3amk.71432  Trendejä j… Mella… 2010  fin      Kirja,… aluekeh… 3AMK-k… Työ- …
##  2 3amk.300335 Hoivan arv… Hoppa… 2016  fin      Kirja,… 2010-lu… 3AMK-k… NA    
##  3 3amk.293263 Sukupolvie… Hämäl… 2021  fin      Kirja,… 2010-lu… 3AMK-k… Väest…
##  4 3amk.132507 Toimeentul… Kuiva… 2013  fin      Kirja,… 2010-lu… 3AMK-k… Rapor…
##  5 3amk.305929 Talouskuri… Autto… 2023  fin      Kirja,… 2010-lu… 3AMK-k… NA    
##  6 3amk.85597  Hyvinvoint… Taimi… 2015  fin      Kirja,… 2010-lu… 3AMK-k… Rapor…
##  7 3amk.134144 Tervetuloa… Sjöbl… 2013  fin      Kirja,… opiskel… 3AMK-k… Siirt…
##  8 3amk.131653 Erilaisuuk… Saukk… 2013  fin      Kirja,… 2010-lu… 3AMK-k… NA    
##  9 3amk.88454  Yksinäiste… Saari… 2016  fin      Kirja,… 2010-lu… 3AMK-k… NA    
## 10 3amk.123287 Hyvinvoinn… Kanga… 2010  fin      Kirja,… Public … 3AMK-k… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

We can confirm this as follows by checking the count

record <- search_finna('era:"2010-luku"', filters = c('~building:"0/3AMK/"', 'finna.deduplication:"1"'))
result_count <- attr(record, "result_count")
print(result_count)
## [1] 997

Removing duplication can be done as follows

record <- search_finna('era:"2010-luku"', filters = c('~building:"0/3AMK/"', 'finna.deduplication:"0"'))
print(record)
## # A tibble: 100 × 10
##    id          Title       Author Year  Language Formats Subjects Library Series
##    <chr>       <chr>       <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 3amk.132507 Toimeentul… Kuiva… 2013  fin      Kirja,… 2010-lu… 3AMK-k… Rapor…
##  2 3amk.293263 Sukupolvie… Hämäl… 2021  fin      Kirja,… 2010-lu… 3AMK-k… Väest…
##  3 3amk.85597  Hyvinvoint… Taimi… 2015  fin      Kirja,… 2010-lu… 3AMK-k… Rapor…
##  4 3amk.291790 Medioitunu… Reuna… 2021  fin      Kirja,… 2010-lu… 3AMK-k… NA    
##  5 3amk.292443 Muuttoliik… Bäckm… 2020  fin      Kirja,… 1800-lu… 3AMK-k… Julka…
##  6 3amk.288732 Muuttoliik… Marti… 2020  fin      Kirja,… 1800-lu… 3AMK-k… Julka…
##  7 3amk.284506 Virkamiesv… Murto… 2014  fin      Kirja,… 1980-lu… 3AMK-k… NA    
##  8 3amk.267454 Nuorten pä… Raita… 2016  fin      Kirja,… 1995-20… 3AMK-k… Rapor…
##  9 3amk.298602 Hidasta ka… Kivij… 2022  fin      Kirja,… 2000-lu… 3AMK-k… Julka…
## 10 3amk.302201 Kansanperi… Koski… 2023  fin      Kirja,… 2000-lu… 3AMK-k… Tieto…
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

To confirm this we can check the count

record <- search_finna('era:"2010-luku"', filters = c('~building:"0/3AMK/"', 'finna.deduplication:"0"'))
result_count <- attr(record, "result_count")
print(result_count)
## [1] 711

Search Finna with multiple filters

To find scholarly journals and digital repository materials regarding music

results <- search_finna(
  query = "musiikki OR taide OR tanssi OR teatteri",
  filters = c(
    '~hierarchy_parent_title:"Institutional Repository"',
    '~format_ext_str_mv:"1/Thesis/Gradu/"',
    '~format_ext_str_mv:"1/Thesis/Masters/"',
    '~format_ext_str_mv:"1/Thesis/MastersPolytechnic/"',
    '~format_ext_str_mv:"1/Thesis/Thesis/"',
    '~format_ext_str_mv:"1/Thesis/Licentiate/"',
    '~format_ext_str_mv:"0/OtherText/"',
    '~format_ext_str_mv:"0/Journal/"',
    '~format_ext_str_mv:"0/Book/"',
    'free_online_boolean:"1"'
  ),
  type = "AllFields",
  lng = "en-gb",
  prettyPrint = TRUE
)

# Print the results
print(results)
## # A tibble: 100 × 10
##    id                Title Author Year  Language Formats Subjects Library Series
##    <chr>             <chr> <chr>  <chr> <chr>    <chr>   <chr>    <chr>   <chr> 
##  1 journalfi.articl… "Tan… Huota… 2011  fin      Journa… Johtaju… Journa… Näkök…
##  2 theseus_oamk.100… "Tan… Hoppu… 2019  fin      Journa… tanssi   Oulu U… NA    
##  3 theseus_oamk.100… "Tea… Kaupp… 2021  fin      Journa… tanssi;… Oulu U… NA    
##  4 valto.10024_1603… "Tea… Hakal… 2002  fin      Text, … opetusm… Instit… NA    
##  5 trepo.10024_1006… "Muu… Välim… 2015  fin      Book m… musiikk… Tamper… NA    
##  6 theseus_tuamk.10… "Mus… Suoma… 2017  fin      Thesis… musiikk… Turku … NA    
##  7 gmc.10047         "Kuu… Veint… 2002  fin      Thesis… maahanm… Global… NA    
##  8 theseus_oamk.100… "Tan… Vuorj… 2025  fin      Journa… tanssi;… Oulu U… Diak …
##  9 theseus_tuamk.10… "\"S… Niemi… 2019  fin      Thesis… Sovelta… Turku … NA    
## 10 theseus_tuamk.10… "Tee… Söder… 2021  fin      Thesis… Taiteen… Turku … NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>