1 Title: Nikita og Noark 5 tjenestegrensesnittet tilbyr ny måte å tenke arkivering
3 Tags: norsk, standard, noark5
5 <p>av Thomas Sødring (OsloMet) og Petter Reinholdtsen (foreningen
8 Nikita Noark 5-kjerne er et fri programvareprosjekt som tar i bruk
9 Arkivverkets spesifikasjonen for Noark 5 Tjenestegrensesnitt og tilbyr
10 et maskinlesbar grensesnitt (arkiv-API) til datasystemer som trenger å
11 arkivere dokumenter og informasjon. I tillegg tilbyr Nikita et
12 nettleserbasert brukergrensesnitt for brukere av arkivet. Dette
13 brukergrensesnittet benytter det maskinlesbare grensesnittet. Noark 5
14 Tjenestegrensesnitt er en ny måte å tenke arkivering, med fokus på
15 automatisering og maskinell behandling av arkivmateriale, i stedet for
16 å fokusere på brukergrensesnitt. En kan tenke på
17 tjenestegrensesnittet som arkivet uten brukergrensesnitt, der flere
18 aktører kan koble til ulike brukergrensesnitt, tilpasset ulike behov.
20 Historisk sett gjorde Noark en veldig bra jobb med overgangen fra
21 papir til digital saksbehandling, men det har kommet til kort på andre
22 områder. Den teknologiske utviklingen har brakt oss ditt av vi kan og
23 skal forvente langt mer fra en arkivkjerne enn før, men det offentlig
24 er ofte konservativ når det gjelder nytenking. For lengst skulle
25 begreper som samvirke mellom datasystemer, metadata, prosess og
26 tjenestegrensesnitt (API) vært dominerende når systemer kjøpes
27 inn. Dessverre er det slik at ikke alle ønsker samvirke mellom
28 datasystemer velkommen, og det kan være trygt å kjøpe svarte bokser
29 der du slipper å ta stilling til hvordan man skal få flere systemer
30 til å virke sammen. Men IT-arkitektur er et begrep arkivfolk også
31 begynner å ta inn over seg.
33 Slike systemer for å organisere metadata bør ha nettbaserte
34 tjenestegrensesnitt der brukergrensesnitt er tydelig adskilt fra
35 bakenforliggende system. Det finnes mange rapporter som snakker om å
36 bryte ned siloer i forvaltningen og standardiserte tjenestegrensesnitt
37 er det viktigste virkemiddel mot datasiloer og legger til rette for
38 økt samvirke mellom systemer. Et standardisert tjenestegrensesnitt er
39 et viktig middel for å få systemer til å samhandle da det sikrer at
40 ulike produsenters systemer kan snakke sammen på tvers. Samfunnet
41 fungerer ikke uten standardisering. Vi har alle samme strømstyrke og
42 kontakter i veggene og kjører alle på høyre side. Det er i en slik
43 sammenheng at prosjektet «Noark 5 Tjenestegrensesnitt» er veldig
44 viktig. Hvis alle leverandører av arkivsystemer forholdt seg til et
45 standardisert tjenestegrensesnitt kunne kostnadene for arkivering
46 reduseres. Tenk at du er en kommune som ønsker et fagsystem integrert
47 med arkivløsningen din. I dag må fagsystemleverandøren vite og
48 tilpasse seg den spesifikke versjonen og varianten av arkivløsningen
49 du har. Hvis vi antar at alle leverandører av arkivkjerner har solgt
50 inn enten SOAP eller REST-grensesnitt til kunder de siste 10 årene og
51 det kommer endret versjon av grensesnittet innimellom så gir det
52 veldig mange forskjellige tjenestegrensesnitt en fagsystemleverandør
53 må forholde seg til. Med 12 leverandører og kvartalsvise oppdateringer
54 kan det potensielt bli 96 ulike varianter hvert eneste år. Det sier
55 seg selv at det blir dyrt. Men det blir faktisk verre. Hvis du senere
56 ønsker å bytte ut arkivsystemet med et annet så er du avhengig å få
57 alle integrasjonene dine laget på nytt. Dette kan gjøre at du velger å
58 forbli hos en dårlig leverandør framfor å skaffe nytt system, fordi
59 det blir for vanskelig og dyrt å bytte. Dermed etableres det små
60 monopolsituasjoner som er vanskelig å bryte ut av. Dårlige valg i dag
61 kan ha uante kostander på sikt. I Nikita-prosjektet har vi kun jobbet
62 opp mot Noark 5 Tjenestegrensesnittet. Det har tatt en god del
63 ressurser å sette seg inn i spesifikasjonen og ta den i bruk, spesielt
64 på grunn av uklarheter i spesifikasjonen. Hvis vi måtte gjøre det
65 samme for alle versjoner og varianter av de forskjellige
66 tjenestegrensesnittene ville det blitt veldig dyrt.
68 For deg som arkivar er digitalisering og systemer som skal virke
69 sammen en del av den nye hverdagen. Du har kanskje blitt skånet for
70 det ved å kjøpe svarte bokser, men du risikerer at du gjør deg selv en
71 bjørnetjeneste. Det kan oppleves som kjedelig å fortelle kolleger at
72 du skal sette deg inn i et tjenestegrensesnitt, men dette er faktisk
73 veldig spennende. Tjenestegrensesnittet er på en måte blitt levende og
74 det er spesielt et begrep du bør merke deg: OData. Å trekke inn deler
75 av OData-standarden som en måte å filtrere entitetsøk i et arkivsystem
76 var et nyttig trekk i prosjektet. Følgende eksempel er en
77 OData-spørring det går an å sende inn til en standardisert
80 .../sakarkiv/journalpost?filter=contains(tittel, 'nabovarsel')
82 Spørringen over vil hente en liste av alle dine journalposter der
83 tittelen til journalposten inneholder ordet 'nabovarsel'. Alle
84 leverandører som implementerer tjenestegrensesnittet vil måtte tilby
85 dette. Det betyr at hvis du lærer dete språket for et system, vil det
86 være gjeldende for alle. Dette er egentlig en nye måte å søke i
87 arkivdatabasen på og vil være svært nyttig, for eksempel kan søk i
88 tjenestegrensesnittet antagelig brukes til å hente ut offentlig
89 postjournal. I arkivverden pleier vi å like teknologier som er
90 menneskelesbart, da vet vi det er enkelt og nyttig! OData er også
91 viktig fordi det kan bli en ny måte å svare innsynsforespørsler på i
92 tråd med offentlighetsloven § 9, der retten til å kreve innsyn i
93 sammenstilling fra databaser er nedfelt. I dag ser vi
94 forvaltningsorganer som avviser slike krav fordi det «ikke kan gjøres
95 med enkle framgangsmåter». Bruken av OData i tjenestegrensesnittet,
96 sammen med maskinlesbar markeringsformater kan være et viktig bidrag
97 til å åpne arkivene i tråd med prinsippene om en åpen og transparent
100 Standardisering er viktig fordi det *kan* sikre samvirke. Men den
101 effekten kommer kun hvis standardiseringen sikrer at alle forstår
102 standarden på samme måte, dvs. at den er entydig og klar. En god måte
103 å sikre en entydig og klar spesifikasjon er ved å kreve at det finnes
104 minst to ulike implementasjoner som følger spesifikasjonen og som kan
105 snakke sammen, det vil si at de snakker samme språk, slik IETF krever
106 for alle sine standarder, før spesifikasjonen anses å være
107 ferdig. Tilbakemelding fra miljøet forteller at både leverandører og
108 kunder har et avslappet forhold til Noark 5 Tjenestegrensesnitt og det
109 er så langt kun Evry som har visst offentlig at de har en
110 implementasjon av tjenestegrensesnittet. For å redusere kostnadene for
111 samvirkende datasystemer betraktelig, er det veldig viktig at vi
112 kommer i en situasjon der alle leverandører har sine egne
113 implementasjoner av tjenestegrensesnittet, og at disse oppfører seg
114 likt og i tråd med det som er beskrevet i spesifikasjonen.
116 Det er er her fri programvare spiller en viktig rolle. Med en uklar
117 standard blir det som en polsk riksdag, der ingenting fungerer. Nikita
118 er en fri programvareimplementasjon av tjenestegrensesnitt og kan
119 fungere som teknisk referanse slik at leverandører enklere kan se og
120 forstå hvordan standarden skal tolkes. Vi har i Nikitaprosjektet
121 erfart å ende opp med vidt forskjellige tolkninger når
122 prosjektmedlemmene leser spesifikasjonsteksten, en effekt av en uklar
123 spesifikasjon. Men Nikitaprosjektet har også utviklet et test-program
124 som sjekker om et tjenestegrensesnitt er i samsvar med standarden, og
125 prosjektet bruker det hele tiden for å sikre at endringer og
126 forbedringer fungerer. Egenerklæringsskjemaenes dager kan væræ talte!
127 Snart vil du selv kunne teste hver oppdatering av arkivsystemet med en
130 Fri programvare representerer en demokratisering av kunnskap der
131 tolkning- og innlåsingsmakt flyttes fra leverandør til almenheten.
132 Med fri programvare har du en litt annerledes verdikjede, der selve
133 produktet ikke holdes hemmelig for å tjene penger, slik en gjør med
134 ufri programvare og skytjenester som ikke bruker fri programvare, men
135 du kan tjene penger på andre deler av verdikjeden. Med fri programvare
136 kan samfunnet betale for å videreutvikle nyttig fellesfunksjonalitet.
138 Nikita er en fri programvareimplementasjon av tjenestegrensesnittet og
139 kan fungere som en referanseimplementasjon dersom det er ønskelig.
140 Alle har lik tilgang til koden og det koster ingenting å ta den i bruk
141 og utforske det. Nikitaprosjektet ønsker tjenestegrensesnittet
142 velkommen og stiller veldig gjerne opp i diskusjoner om tolkning av
143 tjenestegrensesnittet. Nikita er bygget på moderne
144 programmeringsrammeverk og utviklet i full åpenhet. Men nikita er ikke
145 noe du kan kjøpe. Nikita er først og fremst et verktøy for forsking og
146 utvikling laget for å fremme forskning på arkivfeltet. Systemer som
147 virker sammen har alltid vært hovedfokus og vil være det fremover.
148 Det brukes som undervisningsverktøy der studentene ved OsloMet lærer
149 om administrativ oppsett, saksbehandling, uttrekk og samvirkende
150 datasystemer. Det brukes også som forskningsobjekt der vi ser på
151 import av dokumentsamlinger, bruk av blokkjede og andre nyskapende
152 måter å tenke arkiv på. Det er dog helt greit om andre tar Nikita og
153 pakker det for å selge det som produkt. Forvaltningsorganer med
154 sterke drift- og utviklingsmiljøer kan også se på Nikita og utforske
155 hva som er mulig. Dette kan de gjøre uten å måtte betale for
156 bruksrettigheter eller tilgang til konsulenter. Men arkivering blir
157 ikke gratis på grunn av Nikita. Det trengs fortsatt folk med
158 kompetanse og tid til å ta i bruk Nikita.
160 Nikita har nylig kommet med en ny utgave, den sjette i rekken.
161 Systemet er ikke ferdig, mest på grunn av at API-spesifikasjonen for
162 Noark 5 Tjenestegrensesnitt ikke er ferdig, men allerede i dag kan en
163 bruke Nikita som arkiv. Vi har laget eksempelsystem for å importere
164 data fra deponi-XML og slik gjøre eksisterende arkivdata tilgjengelig
165 via et API. Vi har også laget en testklient som importerer epost inn
166 i arkivet med vedlegg der epostenes trådinformasjon brukes til å legge
167 eposttråder i samme arkivmappe, og en annen testklient som henter
168 epost ut av en arkivmappe på mbox-format slik at en vanlig epostklient
169 kan brukes til å lese igjennom og svare på epostene i en
170 arkivmappe. De som vil ta en titt på Nikita kan besøke
171 https://nikita.oslomet.no og logge inn med brukernavn
172 «admin@example.com» og passord «password». Dette gir tilgang til det
173 forenklede brukergrensesnittet som brukes til undervisning. De som
174 heller vil ta en titt under panseret kan besøke
175 https://nikita.oslomet.no/browse.html og der se hvordan API-et
176 fungerer mer i detalj. Innloggingsdetaljer her er det samme som for
179 Fremover er fokuset på forbedring av spesifikasjonen Noark 5
180 Tjenestegrensesnitt. De som skrev tjenestegrensesnittet gjorde et
181 interessant og framtidsrettet grep, de skilte sak fra arkiv.
182 Tjenestegrensesnittet består av flere "pakker", der noen er
183 grunnleggende mens andre bygger på de grunnleggende pakkene. Pakkene
184 som er beskrevet så langt heter «arkivstruktur», «sakarkiv»,
185 «administrasjon», «loggogsporing» og «moeter». Etter hvert håper vi å
186 utforske prosses- og metadatabeskrivelser til flere fagområder og
187 bidra til at tjenestegrensesnittet kan legge til flere pakker som
188 «byggarkiv», «barnevern», «personal», «barnehage», der arkivfaglig
189 metadata- og dokumentasjonsbehov er kartlagt og standardisert.
191 Nikita utvikles av en liten prosjektgruppe, og vi er alltid
192 interessert å bli flere. Hvis en åpen, fri og standardisert tilnærming
193 til arkivering høres interessant ut, bli med oss på veien videre. Vi
194 er tilstede på IRC-kanalen #nikita hos FreeNode (tilgjengelig via
195 nettleser på https://webchat.freenode.net?channels=#nikita), og har en
196 e-postliste nikita-noark@nuug.no hos NUUG (tilgjengelig for påmelding
197 og arkiv på https://lists.nuug.no/mailman/listinfo/nikita-noark) der
198 en kan følge med eller være med oss på den spennende veien videre.
200 <p><em>Artikkelen ble første gang publisert på
201 <ahref="https://beta.arkivverket.no/">Arkivverket Beta</a>
204 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
205 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
207 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>