API dokumentasjon for DigitaltMuseum¶
API’et tilbyr søk i data til Digitalt Museum, visning av bilder og tilgang til XML for objekter. For å benytte API’et, så må du ha en nøkkel. For å teste kan du bruke nøkkelen “demo”.
API’et består av følgende:
Museer/samlinger:
En XML med oversikt over museer/samlinger innenfor land finnes på her:
- /api/owners?country=no&api.key=demo
- /api/owners?country=se&api.key=demo
Begrepet owner i API’et tilsvarer museum/samling og skal brukes for å avgrense søk. Heretter brukes owner istedet for museum/samling. Hver owner i XML har et element <identifier>, som skal brukes for å avgrense søk i indeks. Owner’s strukturen er flat, men owner’s som ligger under andre owners i hierarkiet inneholder et <parent>, som peker til overordnet owner.
Alle søk skal begrenses på en eller flere owner’s.
Søk i apache solr indeks:
Søk gjøres mot solr og støtter de vanligste parametere, på select request handler.
Felter:
Det finnes endel felter i solr indeksen, som er søkbare. Noen av feltene er lagret og ikke kjørt igjennom noen tokenizer og noen felter som er kjørt igjennom tokenizers, etc og er ikke lagret, men søkbare. Typiske eksempler på felter, som er lagret er .ingress. feltene. De blir brukt til å vise informasjon i søkeresultatet. Det finnes flere lagrede felter, som ikke har vært endel av ingress, og ikke heter .ingress., men som kan brukes.
Lagrede felter i indeks, ubehandlet og for visning:
- 'identifier.id' : Identifiserer objektet
- 'identifier.owner' : Identifiserer museum/samling
- 'artifact.uniqueId' : Unik Id for objekt. Fremtidens løsning for oppslag.
- 'artifact.type' : Type objekt
- 'artifact.pictureCount' : Antall bilder
- 'artifact.hasPictures' : true/false om objektet har bilde
- 'artifact.defaultMediaIdentifier' : Id for standardbilde i Dimu Multimedia Server (DMS).
- 'artifact.defaultPictureIndex' : imageId for standardbilde (utgår)
- 'artifact.publishedDate' : Dato for publisering
- 'artifact.updatedDate' : Dato for siste oppdatering
- 'artifact.ingress.title' : Tittel for objekt
- 'artifact.ingress.producer' : Produsent for objekt
- 'artifact.ingress.producerRole' : Rollekode for produsent
- 'artifact.ingress.additionalProducers' : Evt. flere produsenter
- 'artifact.ingress.production.fromYear' : Produksjonsår start intervall
- 'artifact.ingress.production.toYear' : Produksjonsår slutt intervall
- 'artifact.ingress.production.place' : Produksjonssted
- 'artifact.ingress.classification' : Klassifisering
- 'artifact.ingress.subjects' : Emneord
- 'artifact.ingress.license' : Lisens
- 'artifact.coordinate' : Koordinat (lat, lon)
Indekserte felter, som er behandlet og bare for søk:
- 'artifact.name' : Betegnelse, alternativ betegnelse, etc
- 'artifact.title' : Tittel
- 'artifact.classification' : Klassifisering
- 'artifact.producer' : Produsent
- 'artifact.depictedPerson' : Avbildet person
- 'artifact.depictedPlace' : Avbildet sted
- 'artifact.material' : Materiale
- 'artifact.technique' : Teknikk
- 'artifact.license' : Lisens
- 'artifact.eventDescription' : Historikkbeskrivelse
- 'artifact.event.fromYear' : Produksjon/Bruk fra år
- 'artifact.event.toYear' : Produksjon/Bruk til år
- 'artifact.event.place' : Produksjon/Bruk sted
- 'artifact.folderUids' : Uuids for tilkoblede mapper
- 'artifact.exhibitionUids' : Uuids for tilkoblede utstillinger
- 'allContent' : Fritekstsøkefelt (default)
Eksempel på fritekstsøk etter ølbolle i Norsk Folkemuseum og Maihaugen:
/api/solr/select?q=ølbolle&wt=json&fq=(identifier.owner:NF OR identifier.owner:MH)&api.key=demo
Eksempel på fritekstsøk etter ølbolle i Norsk Folkemuseum og Maihaugen, men bare objekter som har bilde:
/api/solr/select?q=ølbolle&wt=json&fq=(identifier.owner:NF OR identifier.owner:MH)&fq=artifact.hasPictures:true&api.key=demo
Eksempel på feltsøk, hvor man søker objekter relatert til Oslo:
/api/solr/select?q=artifact.event.place:(oslo)&wt=json&api.key=demo
Ulike objekttyper (artifact.type), man kan finne idag:
- Thing: Gjenstand
- Photograph: Foto
- Architecture: Arkitektur
- Artdesign: Kunstdesign
- Building: Bygning
- Exhibition: Utstilling
- ExternalArticle: Ekstern artikkel, f.eks. KulturNAV
- Fineart: Billedkunst
- Folder: Mappe
- Name: Oppslagslisteverdi fra f.eks. KulturNAV
- Person: Person
Utvidet objektinformasjon:
Utvidet informasjon om objekter kan hentes, som XML.
Feltverdier: owner: kan leses fra identifier.owner i indeks identifier: kan leses fra identifier.id i indeks unique_id: kan leses fra artifact.uniqueId i indeks, alternativ til owner + identifier. mapping: Mapping styrer hvilket format objektet returneres.
Gyldige verdier er:
- ESE - Europeana XML
- ABM - Norwegiana XML.
- simple_json - JSON.
Eksempel på XML i Europeana format:
/api/artifact?owner=OMU&identifier=OB.F11531a&mapping=ESE&api.key=demo
Eksempel på direkte oppslag på unique_id json format:
/api/artifact?unique_id=011014424899&mapping=simple_json&api.key=demo
Bilde for objektet:
Bilde for objektet kan hentes ut i ulike størrelser fra Dimu Multimedia Server (DMS). Feltet ‘artifact.defaultMediaIdentifier’ (<identifier>) i indeksen identifiserer bildet i DMS, og brukes sammen med dimension for å få ut et bilde.
Følgende størrelser (dimension) er mulig å hente ut fra DMS: dimension angir widthxheight[-crop]. Bare de som er listet ut under støttes.
57x57-crop
145x105
167x167
174x156-crop
250x250
400x400
600x380
600x600
720x480
800x800
1200x1200
https://mm.dimu.org/image/<identifier>?dimension=<dim>
- Eksempler:
Det er ingen garanti for at det finnes så store bilder, som det angis med dimension. Det kan være publisert mindre bilder og det skaleres ikke opp bilder i API’et. Bilder kan også fremstå som mindre enn angitt, hvis ratio på bilde tilsier at det ikke stemmer med widthxheight. Den maksimale bildestørrelsen vil også variere etter hva innholdsleverandøren tillater.