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… orkeste… Lapin … NA    
##  2 eepos.1970338     Sibe… Tawas… 1997  fin      Kirja,… Sibeliu… Eepos-… NA    
##  3 arto.005369812    Sibe… Tawas… 1997  fin      Kirja,… Sibeliu… Kansal… NA    
##  4 heili.c21edab3-8… Sibe… Downe… 1945  fin      Kirja,… Sibeliu… Heili-… NA    
##  5 outi.1591134      Sibe… Downe… 1945  fin      Kirja,… Sibeliu… OUTI-k… NA    
##  6 anders.135108     Sibe… Tawas… 1968  swe      Kirja,… Sibeliu… Anders… NA    
##  7 helle.1362060     SIBE… RINGB… 1948  swe      Kirja,… SIBELIU… Helle-… NA    
##  8 helle.1363050     SIBE… TAWAS… 1968  swe      Kirja,… SIBELIU… Helle-… NA    
##  9 vanamo.46acd7d9-… Sibe… Gray,… 1945  eng      Kirja,… Sibeliu… Vanamo… NA    
## 10 jykdok.2066698    Sibe… Picke… 1960  spa      Kirja,… Sibeliu… Jyväsk… NA    
## # ℹ 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.1505882 Konsertt… Helsi… 1921  fin      Book m… 1920-lu… The Na… NA    
##  3 fikka.1505979 Konsertt… Helsi… 1914  fin      Book m… 1910-lu… The Na… NA    
##  4 fikka.1505981 Konsertt… Helsi… 1914  fin      Book m… 1910-lu… The Na… NA    
##  5 fikka.1505983 Konsertt… Helsi… 1906  fin      Book m… 1900-19… The Na… NA    
##  6 fikka.1505990 Konsertt… Helsi… 1914  fin      Book m… 1910-lu… The Na… NA    
##  7 fikka.1506022 Konsertt… Helsi… 1916  fin      Book m… 1910-lu… The Na… NA    
##  8 fikka.1506026 Konsertt… NA     1904  fin      Book m… 1900-19… The Na… NA    
##  9 fikka.1505976 Konsertt… Helsi… 1913  fin      Book m… 1910-lu… The Na… NA    
## 10 fikka.1505977 Konsertt… Helsi… 1914  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 helmet.2602834    Bicy… Babak… 2025  eng      Kirja,… NA       Helmet… NA    
##  2 vaari.565915      Bicy… Scios… 1983  eng      Kirja,… NA       Varast… NA    
##  3 eepos.2088987     Bicy… Gaddy… 1987  eng      Äänite… NA       Eepos-… NA    
##  4 jamk.99372411640… Bicy… Leagu… 1984  eng      Opinnä… Cycling… Jyväsk… NA    
##  5 lastu.234274      Bicy… Byrne… 2010  eng      Kirja,… Byrne, … Lastu-… NA    
##  6 vaari.565339      Bicy… NA     1900  eng      Kirja,… NA       Varast… NA    
##  7 fikka.5372420     Bicy… NA     2009  NA       Äänite… NA       Kansal… NA    
##  8 turkuamk_finna.9… Bicy… Sica,… 1981  eng      Kirja,… Italia.… Turun … NA    
##  9 helmet.1928272    Bicy… Kalim… 2009  zxx      Äänite… 2000-20… Helmet… NA    
## 10 piki.914540       Bicy… NA     2009  zxx      Äänite… NA       PIKI-k… 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 tuni.99329737420… The … Harri… 1950  eng      Kirja,… Keynes,… Tamper… NA    
##  5 ekk.991689954006… The … Harri… 1949  eng      Kirja,… keynesi… Edusku… NA    
##  6 vaari.113512      The … Harri… 1949  eng      Kirja,… NA       Varast… NA    
##  7 vaari.337847      The … Harri… 1950  eng      Kirja,… NA       Varast… NA    
##  8 fikka.567288      The … Harri… 1948  eng      Kirja,… Keynes,… Kansal… NA    
##  9 utu.991459665540… The … Harri… 1968  eng      Kirja,… NA       Turun … NA    
## 10 vaari.1080451     The … Harri… 1965  eng      Kirja,… NA       Varast… NA    
## # ℹ 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.27720        New … Londo… 1997  eng      Kirja,… taiteen… Tekijä… 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.91452  Kyberturva… Olin,… 2018  fin      Kirja,… kybertu… 3AMK-k… Sanas…
##  5 3amk.39381  Teknologia… Markk… 2003  fin      Kirja,… teknolo… 3AMK-k… Edusk…
##  6 3amk.55142  Työsuojelu… Sanas… 2006  fin      Kirja,… Diction… 3AMK-k… TSK, …
##  7 3amk.60288  Hyvä tiete… Tutki… 2002  fin      Kirja,… tutkimu… 3AMK-k… NA    
##  8 3amk.62695  Nuorten te… Rimpe… 2007  fin      Kirja,… altistu… 3AMK-k… Sosia…
##  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 jamk.99362852690… Keyn… Kurok… 2013  eng      Kirja,… Keynesi… Jyväsk… Routl…
##  2 uef.998588837059… Keyn… Lawso… 1985  eng      Kirja,… NA       Itä-Su… NA    
##  3 abo.991952734059… Keyn… Lawso… 1989  eng      Kirja,… NA       Åbo Ak… NA    
##  4 utu.991450079540… Keyn… Gilbe… 1982  eng      Kirja,… Keynesi… Turun … 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 helka.9916561935… The … Johns… 1978  eng      Kirja,… Keynes,… Helka-… NA    
##  8 vaari.2696406     The … Johns… 1978  eng      Kirja,… Keynes,… Varast… NA    
##  9 aalto.9982217144… John… David… 2007  eng      Kirja,… Keynes,… Aalto-… Great…
## 10 arto.016710784    J.M.… Stolp… 1932  fin      Lehti/… Keynes,… Kansal… NA    
## # ℹ 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 helka.9913244350… Jean… Johns… 1959  eng      Kirja,… Compose… Helka-… NA    
##  5 jarvenpaantaidem… Jean… Eero … NA    NA       Taidet… maalaus… Järven… NA    
##  6 aboakademi_taide… Jean… Kakko… NA    NA       Taidet… NA       Åbo Ak… NA    
##  7 aboakademi_taide… Jean… Munst… 1910  NA       Taidet… NA       Åbo Ak… NA    
##  8 jarvenpaantaidem… Aino… Venny… 1900  NA       Taidet… maalaus… Järven… NA    
##  9 kansallisgalleri… Jean… Järne… 1906  NA       Taidet… NA       Kansal… NA    
## 10 kansallisgalleri… Jean… Alane… 1919  NA       Taidet… NA       Kansal… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>

search image

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_0518… Sibe… Picke… NA    NA       Kirja,… NA       Åbo Ak… NA    
##  2 abo.kortkat_0991… Sibe… Schou… 1949  NA       Kirja,… NA       Åbo Ak… NA    
##  3 abo.kortkat_0441… Sibe… Ottaw… 1968  NA       Kirja,… NA       Åbo Ak… NA    
##  4 abo.kortkat_1648… Sibe… Tawas… 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… Jean… 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 ratamo.1632005    Aino… Kontt… 2019  fin      Kirja,… NA       Ratamo… NA    
##  2 siilinjarvi.5680… Aino… Kontt… 2019  fin      Kirja,… Sibeliu… Siilin… NA    
##  3 eepos.2627672     Aino… Kontt… 2019  fin      Kirja,… Sibeliu… Eepos-… NA    
##  4 rutakko.8d75bf0b… Jean… Sibel… 1991  zxx      Kirja,… romanss… Rutakk… NA    
##  5 helle.1549020     Aino… Kontt… 2019  fin      Kirja,… Sibeliu… Helle-… NA    
##  6 lastu.1707418     Aino… Kontt… 2020  fin      Kirja,… Sibeliu… Lastu-… NA    
##  7 tiekko.901913     The … Sibel… 1994  zxx      Kirja,… NA       Joki-k… NA    
##  8 lapinkirjasto.80… Sibe… Matti… 1995  NA       Kirja,… Illalle… Lapin … NA    
##  9 eepos.1271855     Aino… Kirve… 2015  fin      Kirja,… Sibeliu… Eepos-… NA    
## 10 ratamo.458604     Aino… Kirve… 2011  fin      Kirja,… NA       Ratamo… 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… orkeste… Lapin … NA    
##  2 eepos.1970338     Sibe… Tawas… 1997  fin      Kirja,… Sibeliu… Eepos-… NA    
##  3 arto.005369812    Sibe… Tawas… 1997  fin      Kirja,… Sibeliu… Kansal… NA    
##  4 heili.c21edab3-8… Sibe… Downe… 1945  fin      Kirja,… Sibeliu… Heili-… NA    
##  5 outi.1591134      Sibe… Downe… 1945  fin      Kirja,… Sibeliu… OUTI-k… NA    
##  6 anders.135108     Sibe… Tawas… 1968  swe      Kirja,… Sibeliu… Anders… NA    
##  7 helle.1362060     SIBE… RINGB… 1948  swe      Kirja,… SIBELIU… Helle-… NA    
##  8 helle.1363050     SIBE… TAWAS… 1968  swe      Kirja,… SIBELIU… Helle-… NA    
##  9 vanamo.46acd7d9-… Sibe… Gray,… 1945  eng      Kirja,… Sibeliu… Vanamo… NA    
## 10 jykdok.2066698    Sibe… Picke… 1960  spa      Kirja,… Sibeliu… Jyväsk… NA    
## # ℹ 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: 32 × 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 arto.016649605    Oike… Huhti… 2018  fin      Lehti/… Trump, … Kansal… Kolum…
##  3 ite.msl-7906      Esa … Juho … 2020  NA       Kuva, … taiteil… Maaseu… NA    
##  4 fikka.4313837     Venä… NA     2019  fin      Muu, K… Putin, … Kansal… NA    
##  5 arto.013622649    Kaik… Honki… 2010  fin      Lehti/… 2010; k… Kansal… NA    
##  6 museovirasto.2A9… miel… NA     2018  NA       Esine   kyltit;… Suomen… NA    
##  7 3amk.310976       Sota… Hauta… 2024  fin      Kirja,… Putin, … 3AMK-k… NA    
##  8 museovirasto.ae7… Vapa… Häkki… 2019  NA       Kuva, … valtiov… Museov… NA    
##  9 museovirasto.b32… Vapa… Häkki… 2019  NA       Kuva, … valtiov… Museov… NA    
## 10 museovirasto.4B3… miel… NA     NA    NA       Esine   kyltit;… Suomen… NA    
## # ℹ 22 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: 32 × 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 arto.016649605    Oike… Huhti… 2018  fin      Lehti/… Trump, … Kansal… Kolum…
##  3 ite.msl-7906      Esa … Juho … 2020  NA       Kuva, … taiteil… Maaseu… NA    
##  4 fikka.4313837     Venä… NA     2019  fin      Muu, K… Putin, … Kansal… NA    
##  5 arto.013622649    Kaik… Honki… 2010  fin      Lehti/… 2010; k… Kansal… NA    
##  6 museovirasto.2A9… miel… NA     2018  NA       Esine   kyltit;… Suomen… NA    
##  7 3amk.310976       Sota… Hauta… 2024  fin      Kirja,… Putin, … 3AMK-k… NA    
##  8 museovirasto.ae7… Vapa… Häkki… 2019  NA       Kuva, … valtiov… Museov… NA    
##  9 museovirasto.b32… Vapa… Häkki… 2019  NA       Kuva, … valtiov… Museov… NA    
## 10 museovirasto.4B3… miel… NA     NA    NA       Esine   kyltit;… Suomen… NA    
## # ℹ 22 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.137098 Finns abro… Heikk… 2011  eng      Kirja,… 2000-20… 3AMK-k… Migra…
##  4 3amk.293263 Sukupolvie… Hämäl… 2021  fin      Kirja,… 2010-lu… 3AMK-k… Väest…
##  5 3amk.85597  Hyvinvoint… Taimi… 2015  fin      Kirja,… 2010-lu… 3AMK-k… Rapor…
##  6 3amk.134144 Tervetuloa… Sjöbl… 2013  fin      Kirja,… opiskel… 3AMK-k… Siirt…
##  7 3amk.131653 Erilaisuuk… Saukk… 2013  fin      Kirja,… 2010-lu… 3AMK-k… NA    
##  8 3amk.132507 Toimeentul… Kuiva… 2013  fin      Kirja,… 2010-lu… 3AMK-k… Rapor…
##  9 3amk.305929 Talouskuri… Autto… 2023  fin      Kirja,… 2010-lu… 3AMK-k… NA    
## 10 3amk.88454  Yksinäiste… Saari… 2016  fin      Kirja,… 2010-lu… 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] 1004

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.293263 Sukupolvie… Hämäl… 2021  fin      Kirja,… 2010-lu… 3AMK-k… Väest…
##  2 3amk.85597  Hyvinvoint… Taimi… 2015  fin      Kirja,… 2010-lu… 3AMK-k… Rapor…
##  3 3amk.132507 Toimeentul… Kuiva… 2013  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.267454 Nuorten pä… Raita… 2016  fin      Kirja,… 1995-20… 3AMK-k… Rapor…
##  8 3amk.298602 Hidasta ka… Kivij… 2022  fin      Kirja,… 2000-lu… 3AMK-k… Julka…
##  9 3amk.284506 Virkamiesv… Murto… 2014  fin      Kirja,… 1980-lu… 3AMK-k… NA    
## 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] 710

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 valto.10024_1603… "Tea… Hakal… 2002  fin      Text, … opetusm… Instit… NA    
##  4 theseus_oamk.100… "Tea… Kaupp… 2021  fin      Journa… tanssi;… Oulu U… NA    
##  5 jyx.123456789_80… "Kuu… Veint… 2002  fin      Thesis… symboli… Univer… NA    
##  6 trepo.10024_1006… "Muu… Välim… 2015  fin      Book m… musiikk… Tamper… NA    
##  7 theseus_tuamk.10… "Mus… Suoma… 2017  fin      Thesis… musiikk… Turku … NA    
##  8 theseus_tuamk.10… "\"S… Niemi… 2019  fin      Thesis… Sovelta… Turku … NA    
##  9 theseus_tuamk.10… "Tee… Söder… 2021  fin      Thesis… Taiteen… Turku … NA    
## 10 tyl.10138_231573  "7 T… Otto … NA    fin      Text, … NA       Librar… NA    
## # ℹ 90 more rows
## # ℹ 1 more variable: last_indexed <chr>