]> pere.pagekite.me Git - homepage.git/blob - blog/tags/noark5/index.html
dfc9dc6c6a9f05d31c023f0493c623f7e7a8deb0
[homepage.git] / blog / tags / noark5 / index.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: Entries Tagged noark5</title>
7 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel="alternate" title="RSS Feed" href="noark5.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <div class="title">
13 <h1>
14 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
15
16 </h1>
17
18 </div>
19
20
21 <h3>Entries tagged "noark5".</h3>
22
23 <div class="entry">
24 <div class="title">
25 <a href="http://people.skolelinux.org/pere/blog/Blockchain_and_IoT_articles_accepted_into_Records_Management_Journal.html">Blockchain and IoT articles accepted into Records Management Journal</a>
26 </div>
27 <div class="date">
28 27th February 2020
29 </div>
30 <div class="body">
31 <p>On Tuesday, two scietific articles we have been working on for a
32 while, was finally accepted for publication into
33 <a href="https://www.emerald.com/insight/publication/issn/0956-5698">Records
34 Management Journal</a>. Still waiting for the assigned DOI urls to
35 start working, but you can have a look at the LaTeX originals here.</p>
36
37 <p>The first article is
38 "<a href="http://people.skolelinux.org/pere/blog/images/2020-02-25-rmj-iot-record-keeping.pdf">A
39 record-keeping approach to managing IoT-data for government
40 agencies</a>" (<a href="https://doi.org/10.1108/RMJ-09-2019-0056">DOI
41 10.1108/RMJ-09-2019-0056</a>) by Thomas Sødring, Petter Reinholdtsen
42 and David Massey, and sketches some approaches for storing measurement
43 data (aka Internet of Things sensor data) in a archive, thus providing
44 a well defined mechanism for screening and deletion of the information </p>
45
46 <p>The second article is
47 "<a href="http://people.skolelinux.org/pere/blog/images/2020-02-25-rmj-block-chain-record-keeping.pdf">Publishing
48 and using record-keeping structural information in a blockchain</a>"
49 (<a href="https://doi.org/10.1108/RMJ-09-2019-0050">DOI
50 10.1108/RMJ-09-2019-0050<a/>) by Thomas Sødring, Petter Reinholdtsen
51 and Svein Ølnes, where we describe a way for third parties to validate
52 authenticity and thus improve trust in the records kept in a
53 archive.</p>
54
55 <p>As usual, if you use Bitcoin and want to show your support of my
56 activities, please send Bitcoin donations to my address
57 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
58
59 </div>
60 <div class="tags">
61
62
63 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>.
64
65
66 </div>
67 </div>
68 <div class="padding"></div>
69
70 <div class="entry">
71 <div class="title">
72 <a href="http://people.skolelinux.org/pere/blog/Redaksjon_p__plass_for_Noark_5_tjenestegrensesnitt.html">Redaksjon på plass for Noark 5 tjenestegrensesnitt</a>
73 </div>
74 <div class="date">
75 5th February 2020
76 </div>
77 <div class="body">
78 <p>Arbeidet med å lage et godt, fritt og åpent standardisert maskinelt
79 grensesnitt for arkivering, med tilhørende fri
80 programvareimplementasjon fortsetter. Jeg snakker om
81 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard">Noark
82 5 Tjenestegrensesnitt</a> og
83 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita</a>.
84 Siste nytt etter
85 <a href="https://www.nuug.no/aktiviteter/20200127-noark-seminar/">seminaret
86 for noen dager siden</a>, er vi i Nikita-prosjektet har fått beskjed
87 fra Arkivverket at det blir satt ned en redaksjon for å videreutvikle
88 spesifikasjonen. Redaksjonen består av Mona Danielsen og Anne Sofie
89 Knutsen ved arkivverket, Thomas Sødring ved OsloMet, og meg selv fra
90 NUUG. De to sistenevnte tar seg av de åpenbare forbedringene, mens
91 hele redaksjonen diskuterer tvilstilfeller. Jeg håper dette vil bidra
92 til at vi lykkes i å gjøre denne protokollspesifikasjonen så entydig
93 og klar at den vil bidra til et velfungerende marked for
94 arkivsystemer, og sikre at programmer som trenger å snakke med
95 arkivsystemet kan snakke med enhver implementasjon av
96 API-spesifikasjonen. Nikita er den første implementasjonen, men det
97 bør blir flere.</p>
98
99 <p>Det gjenstår riktig nok endel før vi er i mål, selv om svært mye
100 allerede er på plass. Med innspill og forslag til forbedringer fra
101 alle som vil ha et leverandøruavhengig og fullstendig
102 datamaskinlesbart grensesnitt til arkivet, så tror jeg vi vil
103 lykkes.</p>
104
105 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
106 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
107 til min adresse
108 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.
109 Merk, betaling med bitcoin er ikke anonymt. :)</p>
110
111 </div>
112 <div class="tags">
113
114
115 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
116
117
118 </div>
119 </div>
120 <div class="padding"></div>
121
122 <div class="entry">
123 <div class="title">
124 <a href="http://people.skolelinux.org/pere/blog/Artikkel_om_Noark_5_Tjenestegrensesnitt_og_Nikita_i_Arkivr_d_nummer_3_for_2019.html">Artikkel om Noark 5 Tjenestegrensesnitt og Nikita i Arkivråd nummer 3 for 2019</a>
125 </div>
126 <div class="date">
127 26th December 2019
128 </div>
129 <div class="body">
130 <p>Like før julaften ble en artikkel jeg har skrevet om vedlikehold av
131 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard">Noark
132 5 Tjenestegrensesnitt</a> og Nikita publisert i <a
133 href="https://www.arkivrad.no/arkivrad">tidsskriftet Arkivråd</a>.
134 Det er basert på
135 <a href="http://people.skolelinux.org/pere/blog/_pen_og_gjennomsiktig_vedlikehold_av_spesifikasjonen_for_Noark_5_Tjenestegrensesnitt.html">min bloggpost
136 om samme tema</a> som ble publisert 2019-03-11. Jeg oppdaget nettopp
137 at nettsiden til tidsskriftet Arkivråd er oppdatert med siste utgave,
138 og artikkelen dermed er tilgjengelig for alle. Du finner den i
139 <a href="https://www.arkivrad.no/sites/arkivrad/files/arkivrad_03_2019_nett.pdf">PDF-en
140 til nummer 2019/3 på side 30-33</a>. Jeg håper leserne av
141 tidsskriftet får lyst til å sjekke ut tjenestegrensesnittet og at
142 artikkelen vil gjøre det enklere for flere å bidra til en enda bedre,
143 klarere og mer entydig API-spesifikasjon. Det kan gjøre at
144 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">arkivsystemet
145 Nikita</a> kan bli enda bedre når spesifikasjonen forbedres.</p>
146
147 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
148 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
149 til min adresse
150 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.
151 Merk, betaling med bitcoin er ikke anonymt. :)</p>
152
153 </div>
154 <div class="tags">
155
156
157 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
158
159
160 </div>
161 </div>
162 <div class="padding"></div>
163
164 <div class="entry">
165 <div class="title">
166 <a href="http://people.skolelinux.org/pere/blog/Artikkel_om_Nikita_i_Arkheion_nummer_2019_2.html">Artikkel om Nikita i Arkheion nummer 2019/2</a>
167 </div>
168 <div class="date">
169 9th December 2019
170 </div>
171 <div class="body">
172 <p>Jeg hadde i dag gleden av å oppdage at en artikkel om
173 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">arkivsystemet
174 Nikita</a> som vi skrev i sommer, nå er publisert i
175 <a href="http://www.arkheion.no/">Arkheion, fagtidsskrift for kommunial
176 arkivsektor</a>. Du finner artikkelen på side 30-33 i nummer 2019/2,
177 PDF kan lastes ned fra nettstedet til tidsskriftet. Kanskje
178 publiseringen kan føre til at noen flere får øynene opp for verdien av
179 et åpent standardisert API for arkivering og søk i arkivet.</p>
180
181 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
182 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
183 til min adresse
184 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.
185 Merk, betaling med bitcoin er ikke anonymt. :)</p>
186
187 </div>
188 <div class="tags">
189
190
191 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
192
193
194 </div>
195 </div>
196 <div class="padding"></div>
197
198 <div class="entry">
199 <div class="title">
200 <a href="http://people.skolelinux.org/pere/blog/Oppdatert_Noark_5_Tjenestegrenesnitt_versjon_1_0_for_Noark_5_5_0.html">Oppdatert Noark 5 Tjenestegrenesnitt versjon 1.0 for Noark 5.5.0</a>
201 </div>
202 <div class="date">
203 5th July 2019
204 </div>
205 <div class="body">
206 <p>Jeg er veldig glad for å kunne fortelle at i går ble ny versjon av
207 <a href="https://www.arkivverket.no/forvaltning-og-utvikling/noark-standarden/noark-5/tjenestegrensesnitt-noark5">API-spesifikasjonen
208 for Noark 5 Tjenestegrensesnitt</a> gitt ut. Det så lenge mørkt ut
209 for sjansene for å få inn nødvendige korreksjoner i
210 spesifikasjonsteksten innen rimelig tid, men takket være intens og god
211 innsats fra Mona og Anne Sofie hos Arkivverket de siste ukene, så ble
212 resultatet som ble gitt ut på USAs uavhengighetsdag mye bedre enn jeg
213 fryktet.</p>
214
215 <p>Spesifikasjonen er
216 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">tilgjengelig
217 som markdown-filer i Arkivverkets github-prosjekt for dette</a>, og de
218 aller fleste av forslagene til forbedringer fra oss som holder på med
219 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core">Nikita-prosjektet</a>
220 kom med i denne nye og oppdaterte spesifikasjonsteksten. Det er
221 fortsatt mye som gjenstår før den er entydig, klar og sikrer samvirke
222 på tvers av leverandører, men utgangspunktet er veldig mye bedre enn
223 forrige versjon fra 2016. Ta gjerne en titt.</p>
224
225 <p>Ellers må jeg jo si at det var hyggelig å se at min forrige
226 bloggpost om tjenestegrensesnittet fikk en
227 <a href="https://beta.arkivverket.no/post/186020592045/noark-5-versjon-50-tjenestegrensesnitt-10">lenke
228 fra Arkivverket Beta</a>.</p>
229
230 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
231 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
232 til min adresse
233 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.
234 Merk, betaling med bitcoin er ikke anonymt. :)</p>
235
236 </div>
237 <div class="tags">
238
239
240 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
241
242
243 </div>
244 </div>
245 <div class="padding"></div>
246
247 <div class="entry">
248 <div class="title">
249 <a href="http://people.skolelinux.org/pere/blog/Nikita_og_Noark_5_tjenestegrensesnittet_tilbyr_ny_m_te___tenke_arkivering.html">Nikita og Noark 5 tjenestegrensesnittet tilbyr ny måte å tenke arkivering</a>
250 </div>
251 <div class="date">
252 21st June 2019
253 </div>
254 <div class="body">
255 <p><em>av Thomas Sødring (OsloMet) og Petter Reinholdtsen (foreningen
256 NUUG)</em></p>
257
258 <p>Nikita Noark 5-kjerne er et fri programvareprosjekt som tar i bruk
259 Arkivverkets spesifikasjonen for Noark 5 Tjenestegrensesnitt og tilbyr
260 et maskinlesbart grensesnitt (arkiv-API) til datasystemer som trenger å
261 arkivere dokumenter og informasjon. I tillegg tilbyr Nikita et
262 nettleserbasert brukergrensesnitt for brukere av arkivet. Dette
263 brukergrensesnittet benytter det maskinlesbare grensesnittet. Noark 5
264 Tjenestegrensesnitt er en ny måte å tenke arkivering, med fokus på
265 automatisering og maskinell behandling av arkivmateriale, i stedet for
266 å fokusere på brukergrensesnitt. En kan tenke på
267 tjenestegrensesnittet som arkivet uten brukergrensesnitt, der flere
268 aktører kan koble til ulike brukergrensesnitt, tilpasset ulike
269 behov.</p>
270
271 <p>Historisk sett gjorde Noark standarden en veldig bra jobb med
272 overgangen fra
273 papir til digital saksbehandling, men det har kommet til kort på andre
274 områder. Den teknologiske utviklingen har brakt oss ditt at vi kan og
275 skal forvente langt mer fra en arkivkjerne enn før, men det offentlig
276 er ofte konservativ når det gjelder nytenking. For lengst skulle
277 begreper som samvirke mellom datasystemer, metadata, prosess og
278 tjenestegrensesnitt (API) vært dominerende når systemer kjøpes
279 inn. Dessverre er det slik at ikke alle ønsker samvirke mellom
280 datasystemer velkommen, og det kan være trygt å kjøpe «svarte bokser»
281 der du slipper å ta stilling til hvordan man skal få flere systemer
282 til å virke sammen. Men IT-arkitektur er et begrep arkivfolk også
283 begynner å ta inn over seg.</p>
284
285 <p>Slike systemer for å organisere metadata bør ha nettbaserte
286 tjenestegrensesnitt der brukergrensesnitt er tydelig adskilt fra
287 bakenforliggende system. Det finnes mange rapporter som snakker om å
288 bryte ned siloer i forvaltningen og standardiserte tjenestegrensesnitt
289 er det viktigste virkemiddel mot datasiloer og legger til rette for
290 økt samvirke mellom systemer. Et standardisert tjenestegrensesnitt er
291 et viktig middel for å få systemer til å samhandle da det sikrer at
292 ulike produsenters systemer kan snakke sammen på tvers. Samfunnet
293 fungerer ikke uten standardisering. Vi har alle samme strømstyrke og
294 kontakter i veggene og kjører alle på høyre side av veien i Norge. Det er i en slik
295 sammenheng at prosjektet «Noark 5 Tjenestegrensesnitt» er veldig
296 viktig. Hvis alle leverandører av arkivsystemer forholdt seg til et
297 standardisert tjenestegrensesnitt kunne kostnadene for arkivering
298 reduseres. Tenk deg at du er en kommune som ønsker et fagsystem integrert
299 med arkivløsningen din. I dag må fagsystemleverandøren vite og
300 tilpasse seg den spesifikke versjonen og varianten av arkivløsningen
301 du har. Hvis vi antar at alle leverandører av arkivkjerner har solgt
302 inn enten SOAP eller REST-grensesnitt til kunder de siste 10 årene og
303 det kommer endret versjon av grensesnittet innimellom, så gir det
304 veldig mange forskjellige tjenestegrensesnitt en fagsystemleverandør
305 må forholde seg til. Med 12 leverandører og kvartalsvise oppdateringer
306 kan det potensielt bli 96 ulike varianter hvert eneste år. Det sier
307 seg selv at det blir dyrt. Men det blir faktisk verre. Hvis du senere
308 ønsker å bytte ut arkivsystemet med et annet så er du avhengig å få
309 alle integrasjonene dine laget på nytt. Dette kan gjøre at du velger å
310 forbli hos en dårlig leverandør framfor å skaffe nytt system, fordi
311 det blir for vanskelig og dyrt å bytte. Dermed etableres det «små»
312 monopolsituasjoner som er vanskelig å bryte ut av. Dårlige valg i dag
313 kan ha uante kostander på sikt. I Nikita-prosjektet har vi kun jobbet
314 opp mot Noark 5 Tjenestegrensesnittet. Det har tatt en god del
315 ressurser å sette seg inn i spesifikasjonen og ta den i bruk, spesielt
316 på grunn av uklarheter i spesifikasjonen. Hvis vi måtte gjøre det
317 samme for alle versjoner og varianter av de forskjellige
318 tjenestegrensesnittene ville det blitt veldig tidkrevende og
319 kostbart.</p>
320
321 <p>For deg som arkivar er digitalisering og systemer som skal virke
322 sammen en del av den nye hverdagen. Du har kanskje blitt skånet for
323 det ved å kjøpe svarte bokser, men du risikerer at du gjør deg selv en
324 bjørnetjeneste. Det kan oppleves som kjedelig å fortelle kolleger at
325 du skal sette deg inn i et tjenestegrensesnitt, men dette er faktisk
326 veldig spennende. Tjenestegrensesnittet er på en måte blitt levende og
327 det er spesielt et begrep du bør merke deg: OData. Å trekke inn deler
328 av OData-standarden som en måte å filtrere entitetsøk i et arkivsystem
329 var et nyttig trekk i prosjektet. Følgende eksempel er en
330 OData-spørring det går an å sende inn til en standardisert
331 arkivkjerne:</p>
332
333 <p><blockquote>
334 .../sakarkiv/journalpost?filter=contains(tittel, 'nabovarsel')
335 </blockquote></p>
336
337 <p>Spørringen over vil hente en liste av alle dine journalposter der
338 tittelen til journalposten inneholder ordet 'nabovarsel'. Alle
339 leverandører som implementerer tjenestegrensesnittet vil måtte tilby
340 dette. Det betyr at hvis du lærer dette språket for et system, vil det
341 være gjeldende for alle. Dette er egentlig en ny måte å søke i
342 arkivdatabasen på og vil være svært nyttig, for eksempel kan søk i
343 tjenestegrensesnittet antagelig brukes til å hente ut offentlig
344 postjournal. I arkivverden pleier vi å like teknologier som er
345 menneskelesbart, da vet vi det er enkelt og nyttig! OData er også
346 viktig fordi det kan bli en ny måte å svare innsynsforespørsler på i
347 tråd med offentlighetsloven § 9, der retten til å kreve innsyn i
348 sammenstilling fra databaser er nedfelt. I dag ser vi
349 forvaltningsorganer som avviser slike krav fordi det «ikke kan gjøres
350 med enkle framgangsmåter». Bruken av OData i tjenestegrensesnittet,
351 sammen med maskinlesbar markeringsformater kan være et viktig bidrag
352 til å åpne arkivene i tråd med prinsippene om en åpen og transparent
353 forvaltning.</p>
354
355 <p>Standardisering er viktig fordi det <em>kan</em> sikre samvirke.
356 Men den effekten kommer kun hvis standardiseringen sikrer at alle
357 forstår standarden på samme måte, dvs. at den er entydig og klar. En
358 god måte å sikre en entydig og klar spesifikasjon er ved å kreve at
359 det finnes minst to ulike implementasjoner som følger spesifikasjonen
360 og som kan snakke sammen, det vil si at de snakker samme språk, slik
361 IETF krever for alle sine standarder, før spesifikasjonen anses å være
362 ferdig. Tilbakemelding fra miljøet forteller at både leverandører og
363 kunder har et avslappet forhold til Noark 5 Tjenestegrensesnitt og det
364 er så langt kun Evry som har visst offentlig at de har en
365 implementasjon av tjenestegrensesnittet. Evry, HK Data og Fredrikstad
366 kommune er igang med et pilotprosjekt på Noark 5
367 Tjenestegrensesnitt. For å redusere kostnadene for samvirkende
368 datasystemer betraktelig, er det veldig viktig at vi kommer i en
369 situasjon der alle leverandører har sine egne implementasjoner av
370 tjenestegrensesnittet, og at disse oppfører seg likt og i tråd med det
371 som er beskrevet i spesifikasjonen.</p>
372
373 <p>Det er her fri programvare spiller en viktig rolle. Med en uklar
374 standard blir det som en polsk riksdag, der ingenting fungerer. Nikita
375 er en fri programvareimplementasjon av tjenestegrensesnitt og kan
376 fungere som teknisk referanse slik at leverandører enklere kan se og
377 forstå hvordan standarden skal tolkes. Vi har i Nikitaprosjektet
378 erfart å ende opp med vidt forskjellige tolkninger når
379 prosjektmedlemmene leser spesifikasjonsteksten, en effekt av en uklar
380 spesifikasjon. Men Nikitaprosjektet har også utviklet et test-program
381 som sjekker om et tjenestegrensesnitt er i samsvar med standarden, og
382 prosjektet bruker det hele tiden for å sikre at endringer og
383 forbedringer fungerer. Egenerklæringsskjemaenes dager kan være talte!
384 Snart vil du selv kunne teste hver oppdatering av arkivsystemet med en
385 uavhengig sjekk.</p>
386
387 <p>Fri programvare representerer en demokratisering av kunnskap der
388 tolkning- og innlåsingsmakt flyttes fra leverandør til allmenheten.
389 Med fri programvare har du en litt annerledes verdikjede, der selve
390 produktet ikke holdes hemmelig for å tjene penger, slik en gjør med
391 ufri programvare og skytjenester som ikke bruker fri programvare, men
392 du kan tjene penger på andre deler av verdikjeden. Med fri programvare
393 kan samfunnet betale for å videreutvikle nyttig
394 fellesfunksjonalitet.</p>
395
396 <p>Nikita er en fri programvareimplementasjon av tjenestegrensesnittet og
397 kan fungere som en referanseimplementasjon dersom det er ønskelig.
398 Alle har lik tilgang til koden og det koster ingenting å ta den i bruk
399 og utforske det. Nikitaprosjektet ønsker tjenestegrensesnittet
400 velkommen og stiller veldig gjerne opp i diskusjoner om tolkning av
401 tjenestegrensesnittet. Nikita er bygget på moderne
402 programmeringsrammeverk og utviklet i full åpenhet. Men Nikita er ikke
403 noe du kan kjøpe. Nikita er først og fremst et verktøy for forsking og
404 utvikling laget for å fremme forskning på arkivfeltet. Systemer som
405 virker sammen har alltid vært hovedfokus og vil være det fremover.
406 Det brukes som undervisningsverktøy der studentene ved OsloMet lærer
407 om administrativt oppsett, saksbehandling, uttrekk og samvirkende
408 datasystemer. Det brukes også som forskningsobjekt der vi ser på
409 import av dokumentsamlinger, bruk av blokkjede og andre nyskapende
410 måter å tenke arkiv på. Det er dog helt greit om andre tar Nikita og
411 pakker det for å selge det som produkt. Forvaltningsorganer med
412 sterke drift- og utviklingsmiljøer kan også se på Nikita og utforske
413 hva som er mulig. Dette kan de gjøre uten å måtte betale for
414 bruksrettigheter eller tilgang til konsulenter. Men arkivering blir
415 ikke gratis på grunn av Nikita. Det trengs fortsatt folk med
416 kompetanse og tid til å ta i bruk Nikita.</p>
417
418 <p>Nikita har nylig kommet med en ny utgave, den sjette i rekken.
419 Systemet er ikke ferdig, mest på grunn av at API-spesifikasjonen for
420 Noark 5 Tjenestegrensesnitt ikke er ferdig, men allerede i dag kan en
421 bruke Nikita som arkiv. Vi har laget eksempelsystem for å importere
422 data fra deponi-XML og slik gjøre eksisterende arkivdata tilgjengelig
423 via et API. Vi har også laget en testklient som importerer epost inn
424 i arkivet med vedlegg der epostenes trådinformasjon brukes til å legge
425 eposttråder i samme arkivmappe, og en annen testklient som henter
426 epost ut av en arkivmappe på mbox-format slik at en vanlig epostklient
427 kan brukes til å lese igjennom og svare på epostene i en
428 arkivmappe. De som vil ta en titt på Nikita kan besøke
429 <a href="https://nikita.oslomet.no">https://nikita.oslomet.no</a> og
430 logge inn med brukernavn «admin@example.com» og passord «password».
431 Dette gir tilgang til det forenklede brukergrensesnittet som brukes
432 til undervisning. De som heller vil ta en titt under panseret kan
433 besøke
434 <a href="https://nikita.oslomet.no/browse.html">https://nikita.oslomet.no/browse.html</a>
435 og der se hvordan API-et fungerer mer i detalj. Innloggingsdetaljer
436 her er det samme som for brukergrensesnittet.</p>
437
438 <p>Fremover er fokuset på forbedring av spesifikasjonen Noark 5
439 Tjenestegrensesnitt. De som skrev tjenestegrensesnittet gjorde et
440 interessant og framtidsrettet grep, de skilte sak fra arkiv.
441 Tjenestegrensesnittet består av flere "pakker", der noen er
442 grunnleggende mens andre bygger på de grunnleggende pakkene. Pakkene
443 som er beskrevet så langt heter «arkivstruktur», «sakarkiv»,
444 «administrasjon», «loggogsporing» og «moeter» (dessverre
445 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/pull/120">planlagt
446 fjernet</a> i første utgave). Etter hvert håper vi å utforske
447 prosses- og metadatabeskrivelser til flere fagområder og bidra til at
448 tjenestegrensesnittet kan legge til flere pakker som «byggarkiv»,
449 «barnevern», «personal», «barnehage», der arkivfaglig metadata- og
450 dokumentasjonsbehov er kartlagt og standardisert.</p>
451
452 <p>Nikita utvikles av en liten prosjektgruppe, og vi er alltid
453 interessert å bli flere. Hvis en åpen, fri og standardisert tilnærming
454 til arkivering høres interessant ut, bli med oss på veien videre. Vi
455 er tilstede på IRC-kanalen #nikita hos FreeNode (tilgjengelig via
456 nettleser på
457 <a href="https://webchat.freenode.net?channels=#nikita">https://webchat.freenode.net?channels=#nikita</a>),
458 og har en e-postliste nikita-noark@nuug.no hos NUUG (tilgjengelig for
459 påmelding og arkiv på
460 <a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">https://lists.nuug.no/mailman/listinfo/nikita-noark</a>)
461 der en kan følge med eller være med oss på den spennende veien videre.
462 Spesifikasjonen for Noark 5 Tjenestegrensesnitt vedlikeholdes på
463 github,
464 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/</a>.</p>
465
466 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
467 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
468 til min adresse
469 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
470
471 </div>
472 <div class="tags">
473
474
475 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
476
477
478 </div>
479 </div>
480 <div class="padding"></div>
481
482 <div class="entry">
483 <div class="title">
484 <a href="http://people.skolelinux.org/pere/blog/Official_MIME_type__text_vnd_sosi__for_SOSI_map_data.html">Official MIME type "text/vnd.sosi" for SOSI map data</a>
485 </div>
486 <div class="date">
487 4th June 2019
488 </div>
489 <div class="body">
490 <p>Just 15 days ago,
491 <ahref="http://people.skolelinux.org/pere/blog/MIME_type__text_vnd_sosi__for_SOSI_map_data.html">I
492 mentioned</a> my submission to IANA to register an official MIME type
493 for the SOSI vector map format. This morning, just an hour ago, I was
494 notified that
495 <a href="https://www.iana.org/assignments/media-types/text/vnd.sosi">the
496 MIME type "text/vnd.sosi"</a> is registered for this format. In
497 addition to this registration, my
498 <a href="https://github.com/file/file/blob/master/magic/Magdir/sosi">file(1)
499 patch for a pattern matching rule for SOSI files</a> has been accepted
500 into the official source of that program (pending a new release), and
501 I've been told by the team behind
502 <a href="https://www.nationalarchives.gov.uk/PRONOM/">PRONOM</a> that
503 the SOSI format will be included in the next release of PRONOM, which
504 they plan to release this summer around July.</p>
505
506 <p>I am very happy to see all of this fall into place, for use by
507 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">the
508 Noark 5 Tjenestegrensesnitt</a> implementations.</p>
509
510 <p>As usual, if you use Bitcoin and want to show your support of my
511 activities, please send Bitcoin donations to my address
512 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
513
514 </div>
515 <div class="tags">
516
517
518 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/kart">kart</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
519
520
521 </div>
522 </div>
523 <div class="padding"></div>
524
525 <div class="entry">
526 <div class="title">
527 <a href="http://people.skolelinux.org/pere/blog/Nikita_version_0_4_released___free_software_archive_API_server.html">Nikita version 0.4 released - free software archive API server</a>
528 </div>
529 <div class="date">
530 22nd May 2019
531 </div>
532 <div class="body">
533 <p>This morning, a new release of
534 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
535 Noark 5 core project</a> was
536 <a href="https://lists.nuug.no/pipermail/nikita-noark/2019-May/000468.html">announced
537 on the project mailing list</a>. The Nikita free software solution is
538 an implementation of the Norwegian archive standard Noark 5 used by
539 government offices in Norway. These were the changes in version 0.4
540 since version 0.3, see the email link above for links to a demo site:</p>
541
542 <ul>
543
544 <li>Roll out OData handling to all endpoints where applicable</li>
545 <li>Changed the relation key for "ny-journalpost" to the official one.</li>
546 <li>Better link generation on outgoing links.</li>
547 <li>Tidy up code and make code and approaches more consistent throughout
548 the codebase</li>
549 <li>Update rels to be in compliance with updated version in the
550 interface standard</li>
551 <li>Avoid printing links on empty objects as they can't have links</li>
552 <li>Small bug fixes and improvements</li>
553 <li>Start moving generation of outgoing links to @Service layer so access
554 control can be used when generating links</li>
555 <li>Log exception that was being swallowed so it's traceable</li>
556 <li>Fix name mapping problem</li>
557 <li>Update templated printing so templated should only be printed if it
558 is set true. Requires more work to roll out across entire
559 application.</li>
560 <li>Remove Record->DocumentObject as per domain model of n5v4</li>
561 <li>Add ability to delete lists filtered with OData</li>
562 <li>Return NO_CONTENT (204) on delete as per interface standard</li>
563 <li>Introduce support for ConstraintViolationException exception</li>
564 <li>Make Service classes extend NoarkService</li>
565 <li>Make code base respect X-Forwarded-Host, X-Forwarded-Proto and
566 X-Forwarded-Port</li>
567 <li>Update CorrespondencePart* code to be more in line with Single
568 Responsibility Principle</li>
569 <li>Make package name follow directory structure</li>
570 <li>Make sure Document number starts at 1, not 0</li>
571 <li>Fix isues discovered by FindBugs</li>
572 <li>Update from Date to ZonedDateTime</li>
573 <li>Fix wrong tablename</li>
574 <li>Introduce Service layer tests</li>
575 <li>Improvements to CorrespondencePart</li>
576 <li>Continued work on Class / Classificationsystem</li>
577 <li>Fix feature where authors were stored as storageLocations</li>
578 <li>Update HQL builder for OData</li>
579 <li>Update OData search capability from webpage</li>
580
581 </ul>
582
583 <p>If free and open standardized archiving API sound interesting to
584 you, please contact us on IRC
585 (<a href="irc://irc.freenode.net/%23nikita">#nikita on
586 irc.freenode.net</a>) or email
587 (<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
588 mailing list</a>).</p>
589
590 <p>As usual, if you use Bitcoin and want to show your support of my
591 activities, please send Bitcoin donations to my address
592 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
593
594 </div>
595 <div class="tags">
596
597
598 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
599
600
601 </div>
602 </div>
603 <div class="padding"></div>
604
605 <div class="entry">
606 <div class="title">
607 <a href="http://people.skolelinux.org/pere/blog/MIME_type__text_vnd_sosi__for_SOSI_map_data.html">MIME type "text/vnd.sosi" for SOSI map data</a>
608 </div>
609 <div class="date">
610 20th May 2019
611 </div>
612 <div class="body">
613 <p>As part of my involvement in the work to
614 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard">standardise
615 a REST based API for Noark 5</a>, the Norwegian archiving standard, I
616 spent some time the last few months to try to register a
617 <a href="https://www.iana.org/assignments/media-types/">MIME type</a>
618 and <a href="https://www.nationalarchives.gov.uk/PRONOM/">PRONOM
619 code</a> for the SOSI file format. The background is that there is a
620 set of formats approved for long term storage and archiving in Norway,
621 and among these formats, SOSI is the only format missing a MIME type
622 and PRONOM code.</p>
623
624 <p>What is SOSI, you might ask? To quote Wikipedia: SOSI is short for
625 Samordnet Opplegg for Stedfestet Informasjon (literally "Coordinated
626 Approach for Spatial Information", but more commonly expanded in
627 English to Systematic Organization of Spatial Information). It is a
628 text based file format for geo-spatial vector information used in
629 Norway. Information about the SOSI format can be found in English
630 from <a href="https://en.wikipedia.org/wiki/SOSI">Wikipedia</a>. The
631 specification is available in Norwegian from
632 <a href="https://www.kartverket.no/geodataarbeid/Standarder/SOSI/">the
633 Norwegian mapping authority</a>. The SOSI standard, which originated
634 in the beginning of nineteen eighties, was the inspiration and formed the
635 basis for the XML based
636 <a href="https://en.wikipedia.org/wiki/Geography_Markup_Language">Geography
637 Markup Language</a>.</p>
638
639 <p>I have so far written
640 <a href="https://github.com/file/file/pull/67">a pattern matching
641 rule</a> for the file(1) unix tool to recognize SOSI files, submitted
642 a request to the PRONOM project to have a PRONOM ID assigned to the
643 format (reference TNA1555078202S60), and today send a request to IANA
644 to register the "text/vnd.sosi" MIME type for this format (referanse
645 <a href="https://tools.iana.org/public-view/viewticket/1143144">IANA
646 #1143144</a>). If all goes well, in a few months, anyone implementing
647 the Noark 5 Tjenestegrensesnitt API spesification should be able to
648 use an official MIME type and PRONOM code for SOSI files. In
649 addition, anyone using SOSI files on Linux should be able to
650 automatically recognise the format and web sites handing out SOSI
651 files can begin providing a more specific MIME type. So far, SOSI
652 files has been handed out from web sites using the
653 "application/octet-stream" MIME type, which is just a nice way of
654 stating "I do not know". Soon, we will know. :)</p>
655
656 <p>As usual, if you use Bitcoin and want to show your support of my
657 activities, please send Bitcoin donations to my address
658 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
659
660 </div>
661 <div class="tags">
662
663
664 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/kart">kart</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
665
666
667 </div>
668 </div>
669 <div class="padding"></div>
670
671 <div class="entry">
672 <div class="title">
673 <a href="http://people.skolelinux.org/pere/blog/PlantUML_for_text_based_UML_diagram_modelling___nice_free_software.html">PlantUML for text based UML diagram modelling - nice free software</a>
674 </div>
675 <div class="date">
676 25th March 2019
677 </div>
678 <div class="body">
679 <p>As part of my involvement with the
680 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
681 Noark 5 core project</a>, I have been proposing improvements to the
682 API specification created by <a href="https://www.arkivverket.no/">The
683 National Archives of Norway</a> and helped migrating the text from a
684 version control system unfriendly binary format (docx) to Markdown in
685 git. Combined with the migration to a public git repository (on
686 github), this has made it possible for anyone to suggest improvement
687 to the text.</p>
688
689 <p>The specification is filled with UML diagrams. I believe the
690 original diagrams were modelled using Sparx Systems Enterprise
691 Architect, and exported as EMF files for import into docx. This
692 approach make it very hard to track changes using a version control
693 system. To improve the situation I have been looking for a good text
694 based UML format with associated command line free software tools on
695 Linux and Windows, to allow anyone to send in corrections to the UML
696 diagrams in the specification. The tool must be text based to work
697 with git, and command line to be able to run it automatically to
698 generate the diagram images. Finally, it must be free software to
699 allow anyone, even those that can not accept a non-free software
700 license, to contribute.</p>
701
702 <p>I did not know much about free software UML modelling tools when I
703 started. I have used dia and inkscape for simple modelling in the
704 past, but neither are available on Windows, as far as I could tell. I
705 came across a nice
706 <a href="https://modeling-languages.com/text-uml-tools-complete-list/">list
707 of text mode uml tools</a>, and tested out a few of the tools listed
708 there. <a href="http://plantuml.com/">The PlantUML tool</a> seemed
709 most promising. After verifying that the packages
710 <a href="https://tracker.debian.org/pkg/plantuml">is available in
711 Debian</a> and found <a href="https://github.com/plantuml/plantuml">its
712 Java source</a> under a GPL license on github, I set out to test if it
713 could represent the diagrams we needed, ie the ones currently in
714 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">the
715 Noark 5 Tjenestegrensesnitt specification</a>. I am happy to report
716 that it could represent them, even thought it have a few warts here
717 and there.</p>
718
719 <p>After a few days of modelling I completed the task this weekend. A
720 temporary link to the complete set of diagrams (original and from
721 PlantUML) is available in
722 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/76">the
723 github issue discussing the need for a text based UML format</a>, but
724 please note I lack a sensible tool to convert EMF files to PNGs, so
725 the "original" rendering is not as good as the original was in the
726 publised PDF.</p>
727
728 <p>Here is an example UML diagram, showing the core classes for
729 keeping metadata about archived documents:</p>
730
731 <pre>
732 @startuml
733 skinparam classAttributeIconSize 0
734
735 !include media/uml-class-arkivskaper.iuml
736 !include media/uml-class-arkiv.iuml
737 !include media/uml-class-klassifikasjonssystem.iuml
738 !include media/uml-class-klasse.iuml
739 !include media/uml-class-arkivdel.iuml
740 !include media/uml-class-mappe.iuml
741 !include media/uml-class-merknad.iuml
742 !include media/uml-class-registrering.iuml
743 !include media/uml-class-basisregistrering.iuml
744 !include media/uml-class-dokumentbeskrivelse.iuml
745 !include media/uml-class-dokumentobjekt.iuml
746 !include media/uml-class-konvertering.iuml
747 !include media/uml-datatype-elektronisksignatur.iuml
748
749 Arkivstruktur.Arkivskaper "+arkivskaper 1..*" <-o "+arkiv 0..*" Arkivstruktur.Arkiv
750 Arkivstruktur.Arkiv o--> "+underarkiv 0..*" Arkivstruktur.Arkiv
751 Arkivstruktur.Arkiv "+arkiv 1" o--> "+arkivdel 0..*" Arkivstruktur.Arkivdel
752 Arkivstruktur.Klassifikasjonssystem "+klassifikasjonssystem [0..1]" <--o "+arkivdel 1..*" Arkivstruktur.Arkivdel
753 Arkivstruktur.Klassifikasjonssystem "+klassifikasjonssystem [0..1]" o--> "+klasse 0..*" Arkivstruktur.Klasse
754 Arkivstruktur.Arkivdel "+arkivdel 0..1" o--> "+mappe 0..*" Arkivstruktur.Mappe
755 Arkivstruktur.Arkivdel "+arkivdel 0..1" o--> "+registrering 0..*" Arkivstruktur.Registrering
756 Arkivstruktur.Klasse "+klasse 0..1" o--> "+mappe 0..*" Arkivstruktur.Mappe
757 Arkivstruktur.Klasse "+klasse 0..1" o--> "+registrering 0..*" Arkivstruktur.Registrering
758 Arkivstruktur.Mappe --> "+undermappe 0..*" Arkivstruktur.Mappe
759 Arkivstruktur.Mappe "+mappe 0..1" o--> "+registrering 0..*" Arkivstruktur.Registrering
760 Arkivstruktur.Merknad "+merknad 0..*" <--* Arkivstruktur.Mappe
761 Arkivstruktur.Merknad "+merknad 0..*" <--* Arkivstruktur.Dokumentbeskrivelse
762 Arkivstruktur.Basisregistrering -|> Arkivstruktur.Registrering
763 Arkivstruktur.Merknad "+merknad 0..*" <--* Arkivstruktur.Basisregistrering
764 Arkivstruktur.Registrering "+registrering 1..*" o--> "+dokumentbeskrivelse 0..*" Arkivstruktur.Dokumentbeskrivelse
765 Arkivstruktur.Dokumentbeskrivelse "+dokumentbeskrivelse 1" o-> "+dokumentobjekt 0..*" Arkivstruktur.Dokumentobjekt
766 Arkivstruktur.Dokumentobjekt *-> "+konvertering 0..*" Arkivstruktur.Konvertering
767 Arkivstruktur.ElektroniskSignatur -[hidden]-> Arkivstruktur.Dokumentobjekt
768 @enduml
769 </pre>
770
771 <p><a href="http://plantuml.com/class-diagram">The format</a> is quite
772 compact, with little redundant information. The text expresses
773 entities and relations, and there is little layout related fluff. One
774 can reuse content by using include files, allowing for consistent
775 naming across several diagrams. The include files can be standalone
776 PlantUML too. Here is the content of
777 <tt>media/uml-class-arkivskaper.iuml<tt>:</p>
778
779 <pre>
780 @startuml
781 class Arkivstruktur.Arkivskaper <Arkivenhet> {
782 +arkivskaperID : string
783 +arkivskaperNavn : string
784 +beskrivelse : string [0..1]
785 }
786 @enduml
787 </pre>
788
789 <p>This is what the complete diagram for the PlantUML notation above
790 look like:</p>
791
792 <p><img width="80%" src="http://people.skolelinux.org/pere/blog/images/2019-03-25-noark5-plantuml-diagrameksempel.png"></p>
793
794 <p>A cool feature of PlantUML is that the generated PNG files include
795 the entire original source diagram as text. The source (with include
796 statements expanded) can be extracted using for example
797 <tt>exiftool</tt>. Another cool feature is that parts of the entities
798 can be hidden after inclusion. This allow to use include files with
799 all attributes listed, even for UML diagrams that should not list any
800 attributes.</p>
801
802 <p>The diagram also show some of the warts. Some times the layout
803 engine place text labels on top of each other, and some times it place
804 the class boxes too close to each other, not leaving room for the
805 labels on the relationship arrows. The former can be worked around by
806 placing extra newlines in the labes (ie "\n"). I did not do it here
807 to be able to demonstrate the issue. I have not found a good way
808 around the latter, so I normally try to reduce the problem by changing
809 from vertical to horizontal links to improve the layout.</p>
810
811 <p>All in all, I am quite happy with PlantUML, and very impressed with
812 how quickly its lead developer responds to questions. So far I got an
813 answer to my questions in a few hours when I send an email. I
814 definitely recommend looking at PlantUML if you need to make UML
815 diagrams. Note, PlantUML can draw a lot more than class relations.
816 Check out the documention for a complete list. :)</p>
817
818 <p>As usual, if you use Bitcoin and want to show your support of my
819 activities, please send Bitcoin donations to my address
820 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
821
822 </div>
823 <div class="tags">
824
825
826 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
827
828
829 </div>
830 </div>
831 <div class="padding"></div>
832
833 <div class="entry">
834 <div class="title">
835 <a href="http://people.skolelinux.org/pere/blog/Release_0_3_of_free_software_archive_API_system_Nikita_announced.html">Release 0.3 of free software archive API system Nikita announced</a>
836 </div>
837 <div class="date">
838 24th March 2019
839 </div>
840 <div class="body">
841 <p>Yesterday, a new release of
842 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
843 Noark 5 core project</a> was
844 <a href="https://lists.nuug.no/pipermail/nikita-noark/2019-March/000451.html">announced
845 on the project mailing list</a>. The free software solution is an
846 implementation of the Norwegian archive standard Noark 5 used by
847 government offices in Norway. These were the changes in version 0.3
848 since version 0.2.1 (from NEWS.md):</p>
849
850 <ul>
851 <li>Improved ClassificationSystem and Class behaviour.</li>
852 <li>Tidied up known inconsistencies between domain model and hateaos links.</li>
853 <li>Added experimental code for blockchain integration. </li>
854 <li>Make token expiry time configurable at upstart from properties file.</li>
855 <li>Continued work on OData search syntax.</li>
856 <li>Started work on pagination for entities, partly implemented for Saksmappe.</li>
857 <li>Finalise ClassifiedCode Metadata entity.</li>
858 <li>Implement mechanism to check if authentication token is still
859 valid. This allow the GUI to return a more sensible message to the
860 user if the token is expired.</li>
861 <li>Reintroduce browse.html page to allow user to browse JSON API using
862 hateoas links.</li>
863 <li>Fix bug in handling file/mappe sequence number. Year change was
864 not properly handled.</li>
865 <li>Update application yml files to be in sync with current development.</li>
866 <li>Stop 'converting' everything to PDF using libreoffice. Only
867 convert the file formats doc, ppt, xls, docx, pptx, xlsx, odt, odp
868 and ods.</li>
869 <li>Continued code style fixing, making code more readable.</li>
870 <li>Minor bug fixes.</li>
871
872 </ul>
873
874 <p>If free and open standardized archiving API sound interesting to
875 you, please contact us on IRC
876 (<a href="irc://irc.freenode.net/%23nikita">#nikita on
877 irc.freenode.net</a>) or email
878 (<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
879 mailing list</a>).</p>
880
881 <p>As usual, if you use Bitcoin and want to show your support of my
882 activities, please send Bitcoin donations to my address
883 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
884
885 </div>
886 <div class="tags">
887
888
889 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
890
891
892 </div>
893 </div>
894 <div class="padding"></div>
895
896 <div class="entry">
897 <div class="title">
898 <a href="http://people.skolelinux.org/pere/blog/_pen_og_gjennomsiktig_vedlikehold_av_spesifikasjonen_for_Noark_5_Tjenestegrensesnitt.html">Åpen og gjennomsiktig vedlikehold av spesifikasjonen for Noark 5 Tjenestegrensesnitt</a>
899 </div>
900 <div class="date">
901 11th March 2019
902 </div>
903 <div class="body">
904 <p>Et virksomhetsarkiv for meg, er et arbeidsverktøy der en enkelt kan
905 finne informasjonen en trenger når en trenger det, og der
906 virksomhetens samlede kunnskap er tilgjengelig. Det må være greit å
907 finne frem i, litt som en bibliotek. Men der et bibliotek gjerne tar
908 vare på offentliggjort informasjon som er tilgjengelig flere steder,
909 tar et arkiv vare på virksomhetsintern og til tider personlig
910 informasjon som ofte kun er tilgjengelig fra et sted.</p>
911
912 <p>Jeg mistenker den eneste måten å sikre at arkivet inneholder den
913 samlede kunnskapen i en virksomhet, er å bruke det som virksomhetens
914 kunnskapslager. Det innebærer å automatisk kopiere (brev, epost,
915 SMS-er etc) inn i arkivet når de sendes og mottas, og der filtrere
916 vekk det en ikke vil ta vare på, og legge på metadata om det som er
917 samlet inn for enkel gjenfinning. En slik bruk av arkivet innebærer at
918 arkivet er en del av daglig virke, ikke at det er siste hvilested for
919 informasjon ingen lenger har daglig bruk for. For å kunne være en del
920 av det daglige virket må arkivet enkelt kunne integreres med andre
921 systemer. I disse dager betyr det å tilby arkivet som en
922 nett-tjeneste til hele virksomheten, tilgjengelig for både mennesker
923 og datamaskiner. Det betyr i tur å både tilby nettsider og et
924 maskinlesbart grensesnitt.</p>
925
926 <p>For noen år siden erkjente visjonære arkivarer fordelene med et
927 standardisert maskinlesbart grensesnitt til organisasjonens arkiv. De
928 gikk igang med å lage noe de kalte
929 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">Noark
930 5 Tjenestegrensesnitt</a>. Gjort riktig, så åpner slike maskinlesbare
931 grensesnitt for samvirke på tvers av uavhengige programvaresystemer.
932 Gjort feil, vil det blokkere for samvirke og bidra til
933 leverandørinnlåsing. For å gjøre det riktig så må grensesnittet være
934 klart og entydig beskrevet i en spesifikasjon som gjør at
935 spesifikasjonen tolkes på samme måte uavhengig av hvem som leser den,
936 og uavhengig av hvem som tar den i bruk.</p>
937
938 <p>For å oppnå klare og entydige beskrivelser i en spesifikasjon, som
939 trengs for å kunne få en fri og åpen standard (se
940 <a href="http://people.skolelinux.org/pere/blog/Fri_og__pen_standard__slik_Digistan_ser_det.html">Digistan-definisjon</a>),
941 så trengs det en åpen og gjennomsiktig inngangsport med lav terskel,
942 der de som forsøker å ta den i bruk enkelt kan få inn korreksjoner,
943 etterlyse klargjøringer og rapportere uklarheter i spesifikasjonen.
944 En trenger også automatiserte datasystemer som måler og sjekker at et
945 gitt grensesnitt fungerer i tråd med spesifikasjonen.</p>
946
947 <p>For Noark 5 Tjenestegrensesnittet er det nå etablert en slik åpen
948 og gjennomsiktig inngangsport på prosjekttjenesten github. Denne
949 inngangsporten består først og fremst av en åpen portal som lar enhver
950 se hva som er gjort av endringer i spesifikasjonsteksten over tid, men
951 det hører også med et åpent &quot;diskusjonsforum&quot; der en kan
952 komme med endringsforslag og forespørsler om klargjøringer. Alle
953 registrerte brukere på github kan bidra med innspill til disse
954 henvendelsene.</p>
955
956 <p>I samarbeide med Arkivverket har jeg fått opprettet et git-depot
957 med spesifikasjonsteksten for tjenestegrensesnittet, der det er lagt
958 inn historikk for endringer i teksten de siste årene, samt lagt inn
959 endringsforslag og forespørsler om klargjøring av teksten. Bakgrunnen
960 for at jeg bidro med dette er at jeg er involvert i
961 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core">Nikita-prosjektet</a>,
962 som lager en fri programvare-utgave av Noark 5 Tjenestegrensesnitt.
963 Det er først når en forsøker å lage noe i tråd med en spesifikasjon at
964 en oppdager hvor mange detaljer som må beskrives i spesifikasjonen for
965 å sikre samhandling.</p>
966
967 <p>Spesifikasjonen vedlikeholdes i et rent tekstformat, for å ha et
968 format egnet for versjonskontroll via versjontrollsystemet git. Dette
969 gjør det både enkelt å se konkret hvilke endringer som er gjort når,
970 samt gjør det praktisk mulig for enhver med github-konto å sende inn
971 endringsforslag med formuleringer til spesifikasjonsteksten. Dette
972 tekstformatet vises frem som nettsider på github, slik at en ikke
973 trenger spesielle verktøy for å se på siste utgave av
974 spesifikasjonen.</p>
975
976 <p>Fra dette rene tekstformatet kan det så avledes ulike formater, som
977 HTML for websider, PDF for utskrift på papir og ePub for lesing med
978 ebokleser. Avlednings-systemet (byggesystemet) bruker i dag
979 verktøyene pandoc, latex, docbook-xsl og GNU make til
980 transformasjonen. Tekstformatet som brukes dag er
981 <a href="https://www.markdownguide.org/">Markdown</a>, men det vurderes
982 å
983 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/9">endre
984 til formatet RST</a> i fremtiden for bedre styring av utseende på
985 PDF-utgaven.</p>
986
987 <p>Versjonskontrollsystemet git ble valgt da det er både fleksibelt,
988 avansert og enkelt å ta i bruk. Github ble valgt (foran f.eks. Gitlab
989 som vi bruker i Nikita), da Arkivverket allerede hadde tatt i bruk
990 Github i andre sammenhenger.</p>
991
992 <p>Enkle endringer i teksten kan gjøres av priviligerte brukere
993 direkte i nettsidene til Github, ved å finne aktuell fil som skal
994 endres (f.eks. kapitler/03-konformitet.md), klikke på den lille
995 bokstaven i høyre hjørne over teksten. Det kommer opp en nettside der
996 en kan endre teksten slik en ønsker. Når en er fornøyd med endringen
997 så må endringen &quot;sjekkes inn&quot; i historikken. Det gjøres ved
998 å gi en kort beskrivelse av endringen (beskriv helst hvorfor endringen
999 trengs, ikke hva som er endret), under overskriften &quot;Commit
1000 changes&quot;. En kan og bør legge inn en lengre forklaring i det
1001 større skrivefeltet, før en velger om endringen skal sendes direkte
1002 til 'master'-grenen (dvs. autorativ utgave av spesifikasjonen) eller
1003 om en skal lage en ny gren for denne endringen og opprette en
1004 endringsforespørsel (aka &quot;Pull Request&quot;/PR). Når alt dette
1005 er gjort kan en velge &quot;Commit changes&quot; for å sende inn
1006 endringen. Hvis den er lagt inn i &quot;master&quot;-grenen så er den
1007 en offisiell del av spesifikasjonen med en gang. Hvis den derimot er
1008 en endringsforespørsel, så legges den inn i
1009 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/pulls">listen
1010 over forslag til endringer</a> som venter på korrekturlesing og
1011 godkjenning.</p>
1012
1013 <p>Større endringer (for eksempel samtidig endringer i flere filer)
1014 gjøres enklest ved å hente ned en kopi av git-depoet lokalt og gjøre
1015 endringene der før endringsforslaget sendes inn. Denne prosessen er
1016 godt beskrivet i dokumentasjon fra github. Git-prosjektet som skal
1017 &quot;klones&quot; er
1018 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/</a>.</p>
1019
1020 <p>For å registrere nye utfordringer (issues) eller kommentere på
1021 eksisterende utfordringer benyttes nettsiden
1022 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues</a>.
1023 I skrivende stund er det 48 åpne og 11 avsluttede utfordringer. Et
1024 forslag til hva som bør være med når en beskriver en utfordring er
1025 tilgjengelig som utfordring
1026 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/14">#14</a>.</p>
1027
1028 <p>For å bygge en PDF-utgave av spesifikasjonen så bruker jeg i dag en
1029 Debian GNU/Linux-maskin med en rekke programpakker installert. Når
1030 dette er på plass, så holder det å kjøre kommandoen 'make pdf html' på
1031 kommandolinjen, vente ca. 20 sekunder, før spesifikasjon.pdf og
1032 spesifikasjon.html ligger klar på disken. Verktøyene for bygging av
1033 PDF, HTML og ePub-utgave er også tilgjengelig på Windows og
1034 MacOSX.</p>
1035
1036 <p>Github bidrar med rammeverket. Men for at åpent vedlikehold av
1037 spesifikasjonen skal fungere, så trengs det folk som bidrar med sin
1038 tid og kunnskap. Arkivverket har sagt de skal bidra med innspill og
1039 godkjenne forslag til endringer, men det blir størst suksess hvis alle
1040 som bruker og lager systemer basert på Noark 5 Tjenestegrensesnitt
1041 bidrar med sin kunnskap og kommer med forslag til forebedringer. Jeg
1042 stiller. Blir du med?</p>
1043
1044 <p>Det er viktig å legge til rette for åpen diskusjon blant alle
1045 interesserte, som ikke krever at en må godta lange kontrakter med
1046 vilkår for deltagelse. Inntil Arkivverket dukker opp på IRC har vi
1047 laget en IRC-kanal der interesserte enkelt kan orientere seg og
1048 diskutere tjenestegrensesnittet. Alle er velkommen til å ta turen
1049 innom
1050 <a href="https://webchat.freenode.net/?channels=nikita">#nikita</a>
1051 (f.eks. via irc.freenode.net) for å møte likesinnede.</p>
1052
1053 <p>Det holder dog ikke å ha en god spesifikasjon, hvis ikke de som tar
1054 den i bruk gjør en like god jobb. For å automatisk teste om et konkret
1055 tjenestegrensesnitt følger (min) forståelse av
1056 spesifikasjonsdokumentet, har jeg skrevet et program som kobler seg
1057 opp til et Noark 5v4 REST-tjeneste og tester alt den finner for å se
1058 om det er i henhold til min tolkning av spesifikasjonen. Dette
1059 verktøyet er tilgjengelig fra
1060 <a href="https://github.com/petterreinholdtsen/noark5-tester">https://github.com/petterreinholdtsen/noark5-tester</a>,
1061 og brukes daglig mens vi utvikler Nikita for å sikre at vi ikke
1062 introduserer nye feil. Hvis en skal sikre samvirke på tvers av ulike
1063 systemer er det helt essensielt å kunne raskt og automatisk sjekke at
1064 tjenestegrensesnittet oppfører seg som forventet. Jeg håper andre som
1065 lager sin utgave av tjenestegrensesnittet vi bruke dette verktøyet,
1066 slik at vi tidlig og raskt kan oppdage hvor vi har tolket
1067 spesifikasjonen ulikt, og dermed få et godt grunnlag for å gjøre
1068 spesifikasjonsteksten enda klarere og bedre.</p>
1069
1070 <p>Dagens beskrivelse av Noark 5 Tjenestegrensesnitt er et svært godt
1071 utgangspunkt for å gjøre virksomhetens arkiv til et dynamisk og
1072 sentralt arbeidsverktøy i organisasjonen. Blir du med å gjøre den
1073 enda bedre?</p>
1074
1075 </div>
1076 <div class="tags">
1077
1078
1079 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
1080
1081
1082 </div>
1083 </div>
1084 <div class="padding"></div>
1085
1086 <div class="entry">
1087 <div class="title">
1088 <a href="http://people.skolelinux.org/pere/blog/Time_for_an_official_MIME_type_for_patches_.html">Time for an official MIME type for patches?</a>
1089 </div>
1090 <div class="date">
1091 1st November 2018
1092 </div>
1093 <div class="body">
1094 <p>As part of my involvement in
1095 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core">the Nikita
1096 archive API project</a>, I've been importing a fairly large lump of
1097 emails into a test instance of the archive to see how well this would
1098 go. I picked a subset of <a href="https://notmuchmail.org/">my
1099 notmuch email database</a>, all public emails sent to me via
1100 @lists.debian.org, giving me a set of around 216 000 emails to import.
1101 In the process, I had a look at the various attachments included in
1102 these emails, to figure out what to do with attachments, and noticed
1103 that one of the most common attachment formats do not have
1104 <a href="https://www.iana.org/assignments/media-types/media-types.xhtml">an
1105 official MIME type</a> registered with IANA/IETF. The output from
1106 diff, ie the input for patch, is on the top 10 list of formats
1107 included in these emails. At the moment people seem to use either
1108 text/x-patch or text/x-diff, but neither is officially registered. It
1109 would be better if one official MIME type were registered and used
1110 everywhere.</p>
1111
1112 <p>To try to get one official MIME type for these files, I've brought
1113 up the topic on
1114 <a href="https://www.ietf.org/mailman/listinfo/media-types">the
1115 media-types mailing list</a>. If you are interested in discussion
1116 which MIME type to use as the official for patch files, or involved in
1117 making software using a MIME type for patches, perhaps you would like
1118 to join the discussion?</p>
1119
1120 <p>As usual, if you use Bitcoin and want to show your support of my
1121 activities, please send Bitcoin donations to my address
1122 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
1123
1124 </div>
1125 <div class="tags">
1126
1127
1128 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
1129
1130
1131 </div>
1132 </div>
1133 <div class="padding"></div>
1134
1135 <div class="entry">
1136 <div class="title">
1137 <a href="http://people.skolelinux.org/pere/blog/Release_0_2_of_free_software_archive_system_Nikita_announced.html">Release 0.2 of free software archive system Nikita announced</a>
1138 </div>
1139 <div class="date">
1140 18th October 2018
1141 </div>
1142 <div class="body">
1143 <p>This morning, the new release of the
1144 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
1145 Noark 5 core project</a> was
1146 <a href="https://lists.nuug.no/pipermail/nikita-noark/2018-October/000406.html">announced
1147 on the project mailing list</a>. The free software solution is an
1148 implementation of the Norwegian archive standard Noark 5 used by
1149 government offices in Norway. These were the changes in version 0.2
1150 since version 0.1.1 (from NEWS.md):
1151
1152 <ul>
1153 <li>Fix typos in REL names</li>
1154 <li>Tidy up error message reporting</li>
1155 <li>Fix issue where we used Integer.valueOf(), not Integer.getInteger()</li>
1156 <li>Change some String handling to StringBuffer</li>
1157 <li>Fix error reporting</li>
1158 <li>Code tidy-up</li>
1159 <li>Fix issue using static non-synchronized SimpleDateFormat to avoid
1160 race conditions</li>
1161 <li>Fix problem where deserialisers were treating integers as strings</li>
1162 <li>Update methods to make them null-safe</li>
1163 <li>Fix many issues reported by coverity</li>
1164 <li>Improve equals(), compareTo() and hash() in domain model</li>
1165 <li>Improvements to the domain model for metadata classes</li>
1166 <li>Fix CORS issues when downloading document</li>
1167 <li>Implementation of case-handling with registryEntry and document upload</li>
1168 <li>Better support in Javascript for OPTIONS</li>
1169 <li>Adding concept description of mail integration</li>
1170 <li>Improve setting of default values for GET on ny-journalpost</li>
1171 <li>Better handling of required values during deserialisation </li>
1172 <li>Changed tilknyttetDato (M620) from date to dateTime</li>
1173 <li>Corrected some opprettetDato (M600) (de)serialisation errors.</li>
1174 <li>Improve parse error reporting.</li>
1175 <li>Started on OData search and filtering.</li>
1176 <li>Added Contributor Covenant Code of Conduct to project.</li>
1177 <li>Moved repository and project from Github to Gitlab.</li>
1178 <li>Restructured repository, moved code into src/ and web/.</li>
1179 <li>Updated code to use Spring Boot version 2.</li>
1180 <li>Added support for OAuth2 authentication.</li>
1181 <li>Fixed several bugs discovered by Coverity.</li>
1182 <li>Corrected handling of date/datetime fields.</li>
1183 <li>Improved error reporting when rejecting during deserializatoin.</li>
1184 <li>Adjusted default values provided for ny-arkivdel, ny-mappe,
1185 ny-saksmappe, ny-journalpost and ny-dokumentbeskrivelse.</li>
1186 <li>Several fixes for korrespondansepart*.</li>
1187 <li>Updated web GUI:
1188 <ul>
1189 <li>Now handle both file upload and download.</li>
1190 <li>Uses new OAuth2 authentication for login.</li>
1191 <li>Forms now fetches default values from API using GET.</li>
1192 <li>Added RFC 822 (email), TIFF and JPEG to list of possible file formats.</li>
1193 </ul></li>
1194 </ul>
1195
1196 <p>The changes and improvements are extensive. Running diffstat on
1197 the changes between git tab 0.1.1 and 0.2 show 1098 files changed,
1198 108666 insertions(+), 54066 deletions(-).</p>
1199
1200 <p>If free and open standardized archiving API sound interesting to
1201 you, please contact us on IRC
1202 (<a href="irc://irc.freenode.net/%23nikita">#nikita on
1203 irc.freenode.net</a>) or email
1204 (<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
1205 mailing list</a>).</p>
1206
1207 <p>As usual, if you use Bitcoin and want to show your support of my
1208 activities, please send Bitcoin donations to my address
1209 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
1210
1211 </div>
1212 <div class="tags">
1213
1214
1215 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
1216
1217
1218 </div>
1219 </div>
1220 <div class="padding"></div>
1221
1222 <div class="entry">
1223 <div class="title">
1224 <a href="http://people.skolelinux.org/pere/blog/Fetching_trusted_timestamps_using_the_rfc3161ng_python_module.html">Fetching trusted timestamps using the rfc3161ng python module</a>
1225 </div>
1226 <div class="date">
1227 8th October 2018
1228 </div>
1229 <div class="body">
1230 <p>I have earlier covered the basics of trusted timestamping using the
1231 'openssl ts' client. See blog post for
1232 <a href="http://people.skolelinux.org/pere/blog/Public_Trusted_Timestamping_services_for_everyone.html">2014</a>,
1233 <a href="http://people.skolelinux.org/pere/blog/syslog_trusted_timestamp___chain_of_trusted_timestamps_for_your_syslog.html">2016</a>
1234 and
1235 <a href="http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html">2017</a>
1236 for those stories. But some times I want to integrate the timestamping
1237 in other code, and recently I needed to integrate it into Python.
1238 After searching a bit, I found
1239 <a href="https://dev.entrouvert.org/projects/python-rfc3161">the
1240 rfc3161 library</a> which seemed like a good fit, but I soon
1241 discovered it only worked for python version 2, and I needed something
1242 that work with python version 3. Luckily I next came across
1243 <a href="https://github.com/trbs/rfc3161ng/">the rfc3161ng library</a>,
1244 a fork of the original rfc3161 library. Not only is it working with
1245 python 3, it have fixed a few of the bugs in the original library, and
1246 it has an active maintainer. I decided to wrap it up and make it
1247 <a href="https://tracker.debian.org/pkg/python-rfc3161ng">available in
1248 Debian</a>, and a few days ago it entered Debian unstable and testing.</p>
1249
1250 <p>Using the library is fairly straight forward. The only slightly
1251 problematic step is to fetch the required certificates to verify the
1252 timestamp. For some services it is straight forward, while for others
1253 I have not yet figured out how to do it. Here is a small standalone
1254 code example based on of the integration tests in the library code:</p>
1255
1256 <pre>
1257 #!/usr/bin/python3
1258
1259 """
1260
1261 Python 3 script demonstrating how to use the rfc3161ng module to
1262 get trusted timestamps.
1263
1264 The license of this code is the same as the license of the rfc3161ng
1265 library, ie MIT/BSD.
1266
1267 """
1268
1269 import os
1270 import pyasn1.codec.der
1271 import rfc3161ng
1272 import subprocess
1273 import tempfile
1274 import urllib.request
1275
1276 def store(f, data):
1277 f.write(data)
1278 f.flush()
1279 f.seek(0)
1280
1281 def fetch(url, f=None):
1282 response = urllib.request.urlopen(url)
1283 data = response.read()
1284 if f:
1285 store(f, data)
1286 return data
1287
1288 def main():
1289 with tempfile.NamedTemporaryFile() as cert_f,\
1290 tempfile.NamedTemporaryFile() as ca_f,\
1291 tempfile.NamedTemporaryFile() as msg_f,\
1292 tempfile.NamedTemporaryFile() as tsr_f:
1293
1294 # First fetch certificates used by service
1295 certificate_data = fetch('https://freetsa.org/files/tsa.crt', cert_f)
1296 ca_data_data = fetch('https://freetsa.org/files/cacert.pem', ca_f)
1297
1298 # Then timestamp the message
1299 timestamper = \
1300 rfc3161ng.RemoteTimestamper('http://freetsa.org/tsr',
1301 certificate=certificate_data)
1302 data = b"Python forever!\n"
1303 tsr = timestamper(data=data, return_tsr=True)
1304
1305 # Finally, convert message and response to something 'openssl ts' can verify
1306 store(msg_f, data)
1307 store(tsr_f, pyasn1.codec.der.encoder.encode(tsr))
1308 args = ["openssl", "ts", "-verify",
1309 "-data", msg_f.name,
1310 "-in", tsr_f.name,
1311 "-CAfile", ca_f.name,
1312 "-untrusted", cert_f.name]
1313 subprocess.check_call(args)
1314
1315 if '__main__' == __name__:
1316 main()
1317 </pre>
1318
1319 <p>The code fetches the required certificates, store them as temporary
1320 files, timestamp a simple message, store the message and timestamp to
1321 disk and ask 'openssl ts' to verify the timestamp. A timestamp is
1322 around 1.5 kiB in size, and should be fairly easy to store for future
1323 use.</p>
1324
1325 <p>As usual, if you use Bitcoin and want to show your support of my
1326 activities, please send Bitcoin donations to my address
1327 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
1328
1329 </div>
1330 <div class="tags">
1331
1332
1333 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>.
1334
1335
1336 </div>
1337 </div>
1338 <div class="padding"></div>
1339
1340 <div class="entry">
1341 <div class="title">
1342 <a href="http://people.skolelinux.org/pere/blog/Release_0_1_1_of_free_software_archive_system_Nikita_announced.html">Release 0.1.1 of free software archive system Nikita announced</a>
1343 </div>
1344 <div class="date">
1345 10th June 2017
1346 </div>
1347 <div class="body">
1348 <p>I am very happy to report that the
1349 <a href="https://github.com/hiOA-ABI/nikita-noark5-core">Nikita Noark 5
1350 core project</a> tagged its second release today. The free software
1351 solution is an implementation of the Norwegian archive standard Noark
1352 5 used by government offices in Norway. These were the changes in
1353 version 0.1.1 since version 0.1.0 (from NEWS.md):
1354
1355 <ul>
1356
1357 <li>Continued work on the angularjs GUI, including document upload.</li>
1358 <li>Implemented correspondencepartPerson, correspondencepartUnit and
1359 correspondencepartInternal</li>
1360 <li>Applied for coverity coverage and started submitting code on
1361 regualr basis.</li>
1362 <li>Started fixing bugs reported by coverity</li>
1363 <li>Corrected and completed HATEOAS links to make sure entire API is
1364 available via URLs in _links.</li>
1365 <li>Corrected all relation URLs to use trailing slash.</li>
1366 <li>Add initial support for storing data in ElasticSearch.</li>
1367 <li>Now able to receive and store uploaded files in the archive.</li>
1368 <li>Changed JSON output for object lists to have relations in _links.</li>
1369 <li>Improve JSON output for empty object lists.</li>
1370 <li>Now uses correct MIME type application/vnd.noark5-v4+json.</li>
1371 <li>Added support for docker container images.</li>
1372 <li>Added simple API browser implemented in JavaScript/Angular.</li>
1373 <li>Started on archive client implemented in JavaScript/Angular.</li>
1374 <li>Started on prototype to show the public mail journal.</li>
1375 <li>Improved performance by disabling Sprint FileWatcher.</li>
1376 <li>Added support for 'arkivskaper', 'saksmappe' and 'journalpost'.</li>
1377 <li>Added support for some metadata codelists.</li>
1378 <li>Added support for Cross-origin resource sharing (CORS).</li>
1379 <li>Changed login method from Basic Auth to JSON Web Token (RFC 7519)
1380 style.</li>
1381 <li>Added support for GET-ing ny-* URLs.</li>
1382 <li>Added support for modifying entities using PUT and eTag.</li>
1383 <li>Added support for returning XML output on request.</li>
1384 <li>Removed support for English field and class names, limiting ourself
1385 to the official names.</li>
1386 <li>...</li>
1387
1388 </ul>
1389
1390 <p>If this sound interesting to you, please contact us on IRC (#nikita
1391 on irc.freenode.net) or email
1392 (<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
1393 mailing list).</p>
1394
1395 </div>
1396 <div class="tags">
1397
1398
1399 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
1400
1401
1402 </div>
1403 </div>
1404 <div class="padding"></div>
1405
1406 <div class="entry">
1407 <div class="title">
1408 <a href="http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html">Idea for storing trusted timestamps in a Noark 5 archive</a>
1409 </div>
1410 <div class="date">
1411 7th June 2017
1412 </div>
1413 <div class="body">
1414 <p><em>This is a copy of
1415 <a href="https://lists.nuug.no/pipermail/nikita-noark/2017-June/000297.html">an
1416 email I posted to the nikita-noark mailing list</a>. Please follow up
1417 there if you would like to discuss this topic. The background is that
1418 we are making a free software archive system based on the Norwegian
1419 <a href="https://www.arkivverket.no/forvaltning-og-utvikling/regelverk-og-standarder/noark-standarden">Noark
1420 5 standard</a> for government archives.</em></p>
1421
1422 <p>I've been wondering a bit lately how trusted timestamps could be
1423 stored in Noark 5.
1424 <a href="https://en.wikipedia.org/wiki/Trusted_timestamping">Trusted
1425 timestamps</a> can be used to verify that some information
1426 (document/file/checksum/metadata) have not been changed since a
1427 specific time in the past. This is useful to verify the integrity of
1428 the documents in the archive.</p>
1429
1430 <p>Then it occured to me, perhaps the trusted timestamps could be
1431 stored as dokument variants (ie dokumentobjekt referered to from
1432 dokumentbeskrivelse) with the filename set to the hash it is
1433 stamping?</p>
1434
1435 <p>Given a "dokumentbeskrivelse" with an associated "dokumentobjekt",
1436 a new dokumentobjekt is associated with "dokumentbeskrivelse" with the
1437 same attributes as the stamped dokumentobjekt except these
1438 attributes:</p>
1439
1440 <ul>
1441
1442 <li>format -> "RFC3161"
1443 <li>mimeType -> "application/timestamp-reply"
1444 <li>formatDetaljer -> "&lt;source URL for timestamp service&gt;"
1445 <li>filenavn -> "&lt;sjekksum&gt;.tsr"
1446
1447 </ul>
1448
1449 <p>This assume a service following
1450 <a href="https://tools.ietf.org/html/rfc3161">IETF RFC 3161</a> is
1451 used, which specifiy the given MIME type for replies and the .tsr file
1452 ending for the content of such trusted timestamp. As far as I can
1453 tell from the Noark 5 specifications, it is OK to have several
1454 variants/renderings of a dokument attached to a given
1455 dokumentbeskrivelse objekt. It might be stretching it a bit to make
1456 some of these variants represent crypto-signatures useful for
1457 verifying the document integrity instead of representing the dokument
1458 itself.</p>
1459
1460 <p>Using the source of the service in formatDetaljer allow several
1461 timestamping services to be used. This is useful to spread the risk
1462 of key compromise over several organisations. It would only be a
1463 problem to trust the timestamps if all of the organisations are
1464 compromised.</p>
1465
1466 <p>The following oneliner on Linux can be used to generate the tsr
1467 file. $input is the path to the file to checksum, and $sha256 is the
1468 SHA-256 checksum of the file (ie the "<sjekksum>.tsr" value mentioned
1469 above).</p>
1470
1471 <p><blockquote><pre>
1472 openssl ts -query -data "$inputfile" -cert -sha256 -no_nonce \
1473 | curl -s -H "Content-Type: application/timestamp-query" \
1474 --data-binary "@-" http://zeitstempel.dfn.de > $sha256.tsr
1475 </pre></blockquote></p>
1476
1477 <p>To verify the timestamp, you first need to download the public key
1478 of the trusted timestamp service, for example using this command:</p>
1479
1480 <p><blockquote><pre>
1481 wget -O ca-cert.txt \
1482 https://pki.pca.dfn.de/global-services-ca/pub/cacert/chain.txt
1483 </pre></blockquote></p>
1484
1485 <p>Note, the public key should be stored alongside the timestamps in
1486 the archive to make sure it is also available 100 years from now. It
1487 is probably a good idea to standardise how and were to store such
1488 public keys, to make it easier to find for those trying to verify
1489 documents 100 or 1000 years from now. :)</p>
1490
1491 <p>The verification itself is a simple openssl command:</p>
1492
1493 <p><blockquote><pre>
1494 openssl ts -verify -data $inputfile -in $sha256.tsr \
1495 -CAfile ca-cert.txt -text
1496 </pre></blockquote></p>
1497
1498 <p>Is there any reason this approach would not work? Is it somehow against
1499 the Noark 5 specification?</p>
1500
1501 </div>
1502 <div class="tags">
1503
1504
1505 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
1506
1507
1508 </div>
1509 </div>
1510 <div class="padding"></div>
1511
1512 <div class="entry">
1513 <div class="title">
1514 <a href="http://people.skolelinux.org/pere/blog/Epost_inn_som_arkivformat_i_Riksarkivarens_forskrift_.html">Epost inn som arkivformat i Riksarkivarens forskrift?</a>
1515 </div>
1516 <div class="date">
1517 27th April 2017
1518 </div>
1519 <div class="body">
1520 <p>I disse dager, med frist 1. mai, har Riksarkivaren ute en høring på
1521 sin forskrift. Som en kan se er det ikke mye tid igjen før fristen
1522 som går ut på søndag. Denne forskriften er det som lister opp hvilke
1523 formater det er greit å arkivere i
1524 <a href="http://www.arkivverket.no/arkivverket/Offentleg-forvalting/Noark/Noark-5">Noark
1525 5-løsninger</a> i Norge.</p>
1526
1527 <p>Jeg fant høringsdokumentene hos
1528 <a href="https://www.arkivrad.no/aktuelt/riksarkivarens-forskrift-pa-horing">Norsk
1529 Arkivråd</a> etter å ha blitt tipset på epostlisten til
1530 <a href="https://github.com/hiOA-ABI/nikita-noark5-core">fri
1531 programvareprosjektet Nikita Noark5-Core</a>, som lager et Noark 5
1532 Tjenestegresesnitt. Jeg er involvert i Nikita-prosjektet og takket
1533 være min interesse for tjenestegrensesnittsprosjektet har jeg lest en
1534 god del Noark 5-relaterte dokumenter, og til min overraskelse oppdaget
1535 at standard epost ikke er på listen over godkjente formater som kan
1536 arkiveres. Høringen med frist søndag er en glimrende mulighet til å
1537 forsøke å gjøre noe med det. Jeg holder på med
1538 <a href="https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/hoering-arkivforskrift.tex">egen
1539 høringsuttalelse</a>, og lurer på om andre er interessert i å støtte
1540 forslaget om å tillate arkivering av epost som epost i arkivet.</p>
1541
1542 <p>Er du igang med å skrive egen høringsuttalelse allerede? I så fall
1543 kan du jo vurdere å ta med en formulering om epost-lagring. Jeg tror
1544 ikke det trengs så mye. Her et kort forslag til tekst:</p>
1545
1546 <p><blockquote>
1547
1548 <p>Viser til høring sendt ut 2017-02-17 (Riksarkivarens referanse
1549 2016/9840 HELHJO), og tillater oss å sende inn noen innspill om
1550 revisjon av Forskrift om utfyllende tekniske og arkivfaglige
1551 bestemmelser om behandling av offentlige arkiver (Riksarkivarens
1552 forskrift).</p>
1553
1554 <p>Svært mye av vår kommuikasjon foregår i dag på e-post.  Vi
1555 foreslår derfor at Internett-e-post, slik det er beskrevet i IETF
1556 RFC 5322,
1557 <a href="https://tools.ietf.org/html/rfc5322">https://tools.ietf.org/html/rfc5322</a>. bør
1558 inn som godkjent dokumentformat.  Vi foreslår at forskriftens
1559 oversikt over godkjente dokumentformater ved innlevering i § 5-16
1560 endres til å ta med Internett-e-post.</p>
1561
1562 </blockquote></p>
1563
1564 <p>Som del av arbeidet med tjenestegrensesnitt har vi testet hvordan
1565 epost kan lagres i en Noark 5-struktur, og holder på å skrive et
1566 forslag om hvordan dette kan gjøres som vil bli sendt over til
1567 arkivverket så snart det er ferdig. De som er interesserte kan
1568 <a href="https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/epostlagring.md">følge
1569 fremdriften på web</a>.</p>
1570
1571 <p>Oppdatering 2017-04-28: I dag ble høringuttalelsen jeg skrev
1572 <a href="https://www.nuug.no/news/NUUGs_h_ringuttalelse_til_Riksarkivarens_forskrift.shtml">sendt
1573 inn av foreningen NUUG</a>.</p>
1574
1575 </div>
1576 <div class="tags">
1577
1578
1579 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
1580
1581
1582 </div>
1583 </div>
1584 <div class="padding"></div>
1585
1586 <div class="entry">
1587 <div class="title">
1588 <a href="http://people.skolelinux.org/pere/blog/Free_software_archive_system_Nikita_now_able_to_store_documents.html">Free software archive system Nikita now able to store documents</a>
1589 </div>
1590 <div class="date">
1591 19th March 2017
1592 </div>
1593 <div class="body">
1594 <p>The <a href="https://github.com/hiOA-ABI/nikita-noark5-core">Nikita
1595 Noark 5 core project</a> is implementing the Norwegian standard for
1596 keeping an electronic archive of government documents.
1597 <a href="http://www.arkivverket.no/arkivverket/Offentlig-forvaltning/Noark/Noark-5/English-version">The
1598 Noark 5 standard</a> document the requirement for data systems used by
1599 the archives in the Norwegian government, and the Noark 5 web interface
1600 specification document a REST web service for storing, searching and
1601 retrieving documents and metadata in such archive. I've been involved
1602 in the project since a few weeks before Christmas, when the Norwegian
1603 Unix User Group
1604 <a href="https://www.nuug.no/news/NOARK5_kjerne_som_fri_programvare_f_r_epostliste_hos_NUUG.shtml">announced
1605 it supported the project</a>. I believe this is an important project,
1606 and hope it can make it possible for the government archives in the
1607 future to use free software to keep the archives we citizens depend
1608 on. But as I do not hold such archive myself, personally my first use
1609 case is to store and analyse public mail journal metadata published
1610 from the government. I find it useful to have a clear use case in
1611 mind when developing, to make sure the system scratches one of my
1612 itches.</p>
1613
1614 <p>If you would like to help make sure there is a free software
1615 alternatives for the archives, please join our IRC channel
1616 (<a href="irc://irc.freenode.net/%23nikita">#nikita on
1617 irc.freenode.net</a>) and
1618 <a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">the
1619 project mailing list</a>.</p>
1620
1621 <p>When I got involved, the web service could store metadata about
1622 documents. But a few weeks ago, a new milestone was reached when it
1623 became possible to store full text documents too. Yesterday, I
1624 completed an implementation of a command line tool
1625 <tt>archive-pdf</tt> to upload a PDF file to the archive using this
1626 API. The tool is very simple at the moment, and find existing
1627 <a href="https://en.wikipedia.org/wiki/Fonds">fonds</a>, series and
1628 files while asking the user to select which one to use if more than
1629 one exist. Once a file is identified, the PDF is associated with the
1630 file and uploaded, using the title extracted from the PDF itself. The
1631 process is fairly similar to visiting the archive, opening a cabinet,
1632 locating a file and storing a piece of paper in the archive. Here is
1633 a test run directly after populating the database with test data using
1634 our API tester:</p>
1635
1636 <p><blockquote><pre>
1637 ~/src//noark5-tester$ ./archive-pdf mangelmelding/mangler.pdf
1638 using arkiv: Title of the test fonds created 2017-03-18T23:49:32.103446
1639 using arkivdel: Title of the test series created 2017-03-18T23:49:32.103446
1640
1641 0 - Title of the test case file created 2017-03-18T23:49:32.103446
1642 1 - Title of the test file created 2017-03-18T23:49:32.103446
1643 Select which mappe you want (or search term): 0
1644 Uploading mangelmelding/mangler.pdf
1645 PDF title: Mangler i spesifikasjonsdokumentet for NOARK 5 Tjenestegrensesnitt
1646 File 2017/1: Title of the test case file created 2017-03-18T23:49:32.103446
1647 ~/src//noark5-tester$
1648 </pre></blockquote></p>
1649
1650 <p>You can see here how the fonds (arkiv) and serie (arkivdel) only had
1651 one option, while the user need to choose which file (mappe) to use
1652 among the two created by the API tester. The <tt>archive-pdf</tt>
1653 tool can be found in the git repository for the API tester.</p>
1654
1655 <p>In the project, I have been mostly working on
1656 <a href="https://github.com/petterreinholdtsen/noark5-tester">the API
1657 tester</a> so far, while getting to know the code base. The API
1658 tester currently use
1659 <a href="https://en.wikipedia.org/wiki/HATEOAS">the HATEOAS links</a>
1660 to traverse the entire exposed service API and verify that the exposed
1661 operations and objects match the specification, as well as trying to
1662 create objects holding metadata and uploading a simple XML file to
1663 store. The tester has proved very useful for finding flaws in our
1664 implementation, as well as flaws in the reference site and the
1665 specification.</p>
1666
1667 <p>The test document I uploaded is a summary of all the specification
1668 defects we have collected so far while implementing the web service.
1669 There are several unclear and conflicting parts of the specification,
1670 and we have
1671 <a href="https://github.com/petterreinholdtsen/noark5-tester/tree/master/mangelmelding">started
1672 writing down</a> the questions we get from implementing it. We use a
1673 format inspired by how <a href="http://www.opengroup.org/austin/">The
1674 Austin Group</a> collect defect reports for the POSIX standard with
1675 <a href="http://www.opengroup.org/austin/mantis.html">their
1676 instructions for the MANTIS defect tracker system</a>, in lack of an official way to structure defect reports for Noark 5 (our first submitted defect report was a <a href="https://github.com/petterreinholdtsen/noark5-tester/blob/master/mangelmelding/sendt/2017-03-15-mangel-prosess.md">request for a procedure for submitting defect reports</a> :).
1677
1678 <p>The Nikita project is implemented using Java and Spring, and is
1679 fairly easy to get up and running using Docker containers for those
1680 that want to test the current code base. The API tester is
1681 implemented in Python.</p>
1682
1683 </div>
1684 <div class="tags">
1685
1686
1687 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
1688
1689
1690 </div>
1691 </div>
1692 <div class="padding"></div>
1693
1694 <div class="entry">
1695 <div class="title">
1696 <a href="http://people.skolelinux.org/pere/blog/Hva__mangler__i_OEP___litt_statistikk_utledet_fra_saksnummer_og_dokumentnummer.html">Hva «mangler» i OEP - litt statistikk utledet fra saksnummer og dokumentnummer</a>
1697 </div>
1698 <div class="date">
1699 29th January 2015
1700 </div>
1701 <div class="body">
1702 <p>En ting jeg har lurt på når det gjelder offentlige postjournaler,
1703 er hvor stor andel av det som ligger i de interne databasene kommer
1704 ikke med i postjournalen. Dette er det mulig å finne ut basert på det
1705 som ligger i postjournalen. For å forstå hva jeg mener, trengs det
1706 litt bakgrunnsinformasjon. I henhold til
1707 <a href="http://www.arkivverket.no/arkivverket/Offentleg-forvalting/Noark">NOARK-standarden</a>
1708 for norske offentlige arkiv skal enhver sak ha et årstall og et
1709 løpenummer, og ethvert dokument i saken skal gis et
1710 dokument-løpenummer. Det vil si at en ender opp med dokument-ID som
1711 ser ut som ÅÅÅÅ/SAKNR-DOKNR, f.eks. 2014/2-1 eller 2014/12312-14.
1712 Mange oppgir kun tosifret årstall, men prinsippet er det samme. Så
1713 vidt jeg vet skal saksnummer og dokumentnummer tildeles løpende og i
1714 stigende rekkefølge. Gitt en instans med følgende dokument-ID i
1715 postjournalen, så kan en regne ut hvor mye som ikke finnes i
1716 journalen:
1717
1718 <ul>
1719 <li>2014/2-1</li>
1720 <li>2014/5-1</li>
1721 <li>2014/5-3</li>
1722 </ul>
1723
1724 <p>Her ser en at saksnummer 2 og 5 finnes i postjournalen, mens
1725 nummerene 1, 3 og 4 mangler. En ser også at i sak 2014/5 mangler
1726 dokument 2. Ved hjelp av denne informasjonen har jeg regnet ut hvor
1727 stor andel av saksnummer og dokumentløpenummer som ikke har dukket opp
1728 i <a href="https://www.oep.no/">Offentlig Elektronisk Postjournal</a>
1729 (OEP). For saksnummer har jeg tatt utgangspunkt i at en ikke trenger
1730 å starte på 1, og dermed regnet med området fra laveste til høyeste
1731 saksnummer og talt antall unike saksnummer som forekommer i OEP. I
1732 dette tilfellet betyr de at 2 av 4 saksnummer er ubrukte (50%). For
1733 dokumentløpenummer har jeg tilsvarende tatt utgangspunkt i laveste og
1734 høyeste kjente dokumentløpenummer, for å handtere databaser der jeg
1735 mangler komplett postjournal. For sak 2014/5 her betyr det at 1 av 3
1736 dokumenter mangler (33%).</p>
1737
1738 <p>Det er flere årsaker til at det kan bli hull i nummerseriene.
1739 Feilføring der et dokument tildeles et nytt saksnummer ved en feil, og
1740 deretter flyttes inn i riktig sak vil gi et ubrukt saksnummer, da
1741 saksnummer skal tildeles i stigende rekkefølge og en ikke får opprette
1742 nye saker innimellom gamle saker. Tilsvarende kan skje med
1743 dokument-løpenummer. Det er jo heller ikke sikkert at et saksnummer i
1744 OEP er det samme som løpenummeret som brukes som saksnummeret i
1745 instansens interne datasystem. Kanskje snakker vi om ulike ontologier
1746 der en delmengde av interne saksnummer tilsvarer saksnummer i OEP.
1747 Hvis like nummer også tildeles andre ting enn saker som skal til OEP
1748 vil en tilsvarende få «hull» i saksnumrene i postjournalen.</p>
1749
1750 <p>Jeg er litt usikker på hva denne statistikken egentlig viser, og
1751 heller ikke sikker på om det er reelt sett mangler i OEP (som kanskje
1752 kunne anses å være kritikkverdig), bare er resultatet av hendelige
1753 uhell i nummertildelingen eller resultat av ulik ontologi i OEP og
1754 instansens datasystem. Men jeg syntes tallene og variasjonen var så
1755 interessant at jeg hadde lyst til å dele dem med mine lesere. Jeg har
1756 sortert listen på prosent upubliserte saksnummer for 2014.</p>
1757
1758 <table border="1">
1759 <tr><th colspan="6">Saksnummer</th><th colspan="3">Dokumentnummer</th><th rowspan="3">Instans</th></tr>
1760 <tr><th colspan="3">2014</th><th colspan="3">2013</th><th colspan="3">2014</th></tr>
1761 <tr><th>%</th><th>Upubl. saksnr.</th><th>Totalt</th>
1762 <th>%</th><th>Upubl. saksnr</th><th>Totalt</th>
1763 <th>%</th><th>Upubl. dok.nr.</th><th>Totalt</th>
1764 </tr>
1765
1766 <tr><td> 0.6</td><td> 8</td><td> 1282</td><td> 0.2</td><td> 2</td><td> 861</td><td> 0.0</td><td> 0</td><td> 6105</td><td>Vox, nasjonalt fagorgan for kompetansepolitikk</td></tr>
1767 <tr><td> 0.9</td><td> 91</td><td> 9863</td><td> 2.7</td><td> 313</td><td> 11703</td><td> 0.0</td><td> 0</td><td> 24029</td><td>Direktoratet for byggkvalitet</td></tr>
1768 <tr><td> 1.0</td><td> 161</td><td> 15663</td><td> 3.3</td><td> 558</td><td> 17045</td><td> 0.0</td><td> 0</td><td> 41954</td><td>Justervesenet</td></tr>
1769 <tr><td> 1.1</td><td> 325</td><td> 28515</td><td> 1.2</td><td> 357</td><td> 29621</td><td> 0.0</td><td> 0</td><td> 66871</td><td>Arkivverket</td></tr>
1770 <tr><td> 1.8</td><td> 28</td><td> 1568</td><td> 1.0</td><td> 17</td><td> 1722</td><td> 0.0</td><td> 0</td><td> 9259</td><td>Statistisk sentralbyrå</td></tr>
1771 <tr><td> 1.8</td><td> 92</td><td> 5066</td><td>75.4</td><td>3144</td><td> 4169</td><td> 0.0</td><td> 0</td><td> 17056</td><td>Arbeids- og sosialdepartementet</td></tr>
1772 <tr><td> 2.2</td><td> 32</td><td> 1470</td><td> 2.4</td><td> 36</td><td> 1471</td><td> 0.0</td><td> 0</td><td> 9757</td><td>Norsk Filminstitutt</td></tr>
1773 <tr><td> 2.3</td><td> 34</td><td> 1478</td><td> 2.9</td><td> 41</td><td> 1425</td><td> 0.0</td><td> 0</td><td> 4522</td><td>Datatilsynet</td></tr>
1774 <tr><td> 2.7</td><td> 49</td><td> 1795</td><td> 2.8</td><td> 34</td><td> 1199</td><td> 0.0</td><td> 0</td><td> 5824</td><td>Direktoratet for mineralforvaltning med Bergmesteren for Svalbard</td></tr>
1775 <tr><td> 3.1</td><td> 134</td><td> 4326</td><td> 2.8</td><td> 144</td><td> 5119</td><td> 0.0</td><td> 0</td><td> 12223</td><td>Brønnøysundregistrene</td></tr>
1776 <tr><td> 3.1</td><td> 201</td><td> 6571</td><td> 6.1</td><td> 603</td><td> 9870</td><td> 0.0</td><td> 0</td><td> 22390</td><td>Statens kartverk</td></tr>
1777 <tr><td> 3.2</td><td> 228</td><td> 7092</td><td> 2.0</td><td> 143</td><td> 7032</td><td> 0.1</td><td> 14</td><td> 24491</td><td>Lotteri- og stiftelsestilsynet</td></tr>
1778 <tr><td> 3.6</td><td> 32</td><td> 891</td><td> 4.9</td><td> 37</td><td> 753</td><td> 0.0</td><td> 0</td><td> 3055</td><td>Statens innkrevingssentral</td></tr>
1779 <tr><td> 3.8</td><td>1016</td><td> 26466</td><td> 2.5</td><td> 716</td><td> 28727</td><td> 0.0</td><td> 0</td><td> 86951</td><td>Husbanken</td></tr>
1780 <tr><td> 3.9</td><td> 52</td><td> 1326</td><td>14.4</td><td> 180</td><td> 1247</td><td> 0.0</td><td> 0</td><td> 4922</td><td>Sysselmannen på Svalbard</td></tr>
1781 <tr><td> 4.0</td><td> 248</td><td> 6250</td><td> 4.6</td><td> 332</td><td> 7159</td><td> 0.0</td><td> 0</td><td> 22063</td><td>Post- og teletilsynet</td></tr>
1782 <tr><td> 4.1</td><td> 102</td><td> 2488</td><td> 2.7</td><td> 62</td><td> 2291</td><td> 0.0</td><td> 0</td><td> 9707</td><td>Forbrukerombudet</td></tr>
1783 <tr><td> 4.8</td><td> 51</td><td> 1060</td><td>12.6</td><td> 132</td><td> 1046</td><td> 0.0</td><td> 0</td><td> 3616</td><td>Statens strålevern</td></tr>
1784 <tr><td> 5.2</td><td> 924</td><td> 17781</td><td> 6.3</td><td>1184</td><td> 18665</td><td> 0.0</td><td> 0</td><td> 59772</td><td>Fiskeridirektoratet</td></tr>
1785 <tr><td> 5.5</td><td> 254</td><td> 4638</td><td> 6.1</td><td> 315</td><td> 5168</td><td> 0.0</td><td> 0</td><td> 15470</td><td>Barne-, likestillings- og inkluderingsdepartementet</td></tr>
1786 <tr><td> 6.0</td><td> 80</td><td> 1336</td><td> 3.7</td><td> 48</td><td> 1314</td><td> 0.0</td><td> 0</td><td> 2691</td><td>Medietilsynet</td></tr>
1787 <tr><td> 6.1</td><td> 91</td><td> 1486</td><td> 5.0</td><td> 83</td><td> 1651</td><td> 0.2</td><td> 17</td><td> 7473</td><td>Petroleumstilsynet</td></tr>
1788 <tr><td> 6.2</td><td> 248</td><td> 3997</td><td>73.7</td><td>3459</td><td> 4693</td><td> 0.0</td><td> 0</td><td> 10963</td><td>Klima- og miljødepartementet</td></tr>
1789 <tr><td> 7.0</td><td> 190</td><td> 2700</td><td>10.2</td><td> 207</td><td> 2033</td><td> 0.0</td><td> 1</td><td> 14299</td><td>Samferdselsdepartementet</td></tr>
1790 <tr><td> 7.1</td><td> 35</td><td> 492</td><td> 4.5</td><td> 41</td><td> 909</td><td> 0.0</td><td> 0</td><td> 2960</td><td>Konkurransetilsynet</td></tr>
1791 <tr><td> 7.1</td><td> 482</td><td> 6800</td><td> 6.4</td><td> 532</td><td> 8259</td><td> 0.0</td><td> 0</td><td> 28684</td><td>Justis- og beredskapsdepartementet</td></tr>
1792 <tr><td> 7.2</td><td> 87</td><td> 1204</td><td> 4.2</td><td> 50</td><td> 1199</td><td> 0.0</td><td> 3</td><td> 7428</td><td>Oljedirektoratet</td></tr>
1793 <tr><td> 7.2</td><td> 106</td><td> 1478</td><td> 6.3</td><td> 129</td><td> 2045</td><td> 0.0</td><td> 2</td><td> 4987</td><td>Statens jernbanetilsyn</td></tr>
1794 <tr><td> 7.2</td><td> 131</td><td> 1813</td><td> 8.5</td><td> 124</td><td> 1452</td><td> 0.0</td><td> 2</td><td> 8758</td><td>Statsministerens kontor</td></tr>
1795 <tr><td> 7.3</td><td> 816</td><td> 11218</td><td> 6.1</td><td> 655</td><td> 10665</td><td> 0.0</td><td> 0</td><td> 47160</td><td>Norges forskningsråd</td></tr>
1796 <tr><td> 7.8</td><td>1150</td><td> 14712</td><td> 6.7</td><td> 746</td><td> 11202</td><td> 0.0</td><td> 0</td><td> 33794</td><td>Miljødirektoratet</td></tr>
1797 <tr><td> 7.9</td><td> 411</td><td> 5216</td><td> 8.3</td><td> 446</td><td> 5365</td><td> 0.0</td><td> 0</td><td> 16441</td><td>Helse- og omsorgsdepartementet</td></tr>
1798 <tr><td> 8.3</td><td> 376</td><td> 4514</td><td> 8.2</td><td> 457</td><td> 5548</td><td> 0.0</td><td> 3</td><td> 20840</td><td>Luftfartstilsynet</td></tr>
1799 <tr><td> 8.5</td><td> 185</td><td> 2181</td><td> 9.8</td><td> 175</td><td> 1780</td><td> 0.0</td><td> 0</td><td> 7669</td><td>Landbruks- og matdepartementet</td></tr>
1800 <tr><td> 8.6</td><td> 10</td><td> 116</td><td> 0.8</td><td> 1</td><td> 127</td><td> 0.0</td><td> 0</td><td> 318</td><td>Statens institutt for rusmiddelforskning</td></tr>
1801 <tr><td> 9.0</td><td> 597</td><td> 6648</td><td> 9.7</td><td> 705</td><td> 7236</td><td> 0.0</td><td> 3</td><td> 35663</td><td>Utdanningsdirektoratet</td></tr>
1802 <tr><td> 9.0</td><td>1139</td><td> 12632</td><td> 8.2</td><td>1100</td><td> 13344</td><td> 0.0</td><td> 2</td><td> 36987</td><td>Finanstilsynet</td></tr>
1803 <tr><td> 9.1</td><td> 540</td><td> 5949</td><td>13.4</td><td> 769</td><td> 5743</td><td> 0.0</td><td> 0</td><td> 13908</td><td>Finansdepartementet</td></tr>
1804 <tr><td> 9.2</td><td> 256</td><td> 2787</td><td> 6.5</td><td> 203</td><td> 3147</td><td> 0.0</td><td> 0</td><td> 9487</td><td>Riksantikvaren - Direktoratet for kulturminneforvaltning</td></tr>
1805 <tr><td> 9.3</td><td>1596</td><td> 17209</td><td> 2.5</td><td> 463</td><td> 18438</td><td> 0.0</td><td> 0</td><td> 53119</td><td>Statens legemiddelverk</td></tr>
1806 <tr><td> 9.7</td><td> 299</td><td> 3085</td><td>10.7</td><td> 329</td><td> 3072</td><td> 0.1</td><td> 6</td><td> 7579</td><td>Forsvarsdepartementet</td></tr>
1807 <tr><td>10.1</td><td> 167</td><td> 1650</td><td> 4.5</td><td> 65</td><td> 1445</td><td> 0.0</td><td> 0</td><td> 11157</td><td>Statens helsetilsyn</td></tr>
1808 <tr><td>10.9</td><td> 59</td><td> 542</td><td> 7.7</td><td> 44</td><td> 569</td><td> 0.0</td><td> 0</td><td> 1283</td><td>Statens arbeidsmiljøinstitutt</td></tr>
1809 <tr><td>11.3</td><td> 46</td><td> 407</td><td>96.1</td><td>2591</td><td> 2695</td><td> 0.0</td><td> 0</td><td> 1489</td><td>Landbruksdirektoratet Alta</td></tr>
1810 <tr><td>11.4</td><td> 675</td><td> 5933</td><td>13.6</td><td> 613</td><td> 4492</td><td> 0.0</td><td> 0</td><td> 24598</td><td>Kystverket</td></tr>
1811 <tr><td>11.6</td><td> 739</td><td> 6383</td><td>12.2</td><td> 748</td><td> 6121</td><td> 0.0</td><td> 1</td><td> 18605</td><td>Kunnskapsdepartementet</td></tr>
1812 <tr><td>11.9</td><td> 641</td><td> 5398</td><td> 9.3</td><td> 432</td><td> 4655</td><td> 0.0</td><td> 0</td><td> 14438</td><td>Kulturdepartementet</td></tr>
1813 <tr><td>11.9</td><td> 934</td><td> 7835</td><td> 0.0</td><td> 0</td><td> 0</td><td> 0.0</td><td> 0</td><td> 33448</td><td>Kommunal- og moderniseringsdepartementet</td></tr>
1814 <tr><td>12.1</td><td> 588</td><td> 4860</td><td>12.2</td><td> 522</td><td> 4294</td><td> 0.0</td><td> 0</td><td> 14173</td><td>Politidirektoratet</td></tr>
1815 <tr><td>12.1</td><td>1444</td><td> 11893</td><td>46.0</td><td>5212</td><td> 11331</td><td> 0.0</td><td> 0</td><td> 51438</td><td>Helsedirektoratet</td></tr>
1816 <tr><td>12.6</td><td> 220</td><td> 1745</td><td>17.5</td><td> 112</td><td> 640</td><td> 0.1</td><td> 3</td><td> 4184</td><td>Språkrådet</td></tr>
1817 <tr><td>12.7</td><td> 211</td><td> 1664</td><td> 9.7</td><td> 226</td><td> 2318</td><td> 0.0</td><td> 0</td><td> 9151</td><td>Direktoratet for utviklingssamarbeid</td></tr>
1818 <tr><td>13.9</td><td> 321</td><td> 2309</td><td>15.1</td><td> 329</td><td> 2185</td><td> 0.0</td><td> 0</td><td> 6307</td><td>Olje- og energidepartementet</td></tr>
1819 <tr><td>14.3</td><td> 429</td><td> 2996</td><td>12.5</td><td> 303</td><td> 2432</td><td> 0.0</td><td> 0</td><td> 7560</td><td>Nasjonalt folkehelseinstitutt</td></tr>
1820 <tr><td>14.4</td><td>1408</td><td> 9785</td><td> 0.0</td><td> 0</td><td> 0</td><td> 0.0</td><td> 0</td><td> 38923</td><td>Nærings- og fiskeridepartementet</td></tr>
1821 <tr><td>14.7</td><td> 143</td><td> 973</td><td> 7.7</td><td> 83</td><td> 1084</td><td> 0.0</td><td> 0</td><td> 4130</td><td>Utlendingsnemnda</td></tr>
1822 <tr><td>15.8</td><td> 173</td><td> 1097</td><td>38.8</td><td> 621</td><td> 1602</td><td> 0.0</td><td> 0</td><td> 7557</td><td>Direktoratet for forvaltning og IKT</td></tr>
1823 <tr><td>16.7</td><td>1345</td><td> 8069</td><td> 8.6</td><td> 703</td><td> 8219</td><td> 0.0</td><td> 0</td><td> 20834</td><td>Norges vassdrags- og energidirektorat</td></tr>
1824 <tr><td>17.5</td><td> 61</td><td> 348</td><td>17.2</td><td> 67</td><td> 389</td><td> 0.0</td><td> 0</td><td> 7732</td><td>Senter for internasjonalisering av utdanning</td></tr>
1825 <tr><td>18.9</td><td>3737</td><td> 19734</td><td> 4.4</td><td> 606</td><td> 13752</td><td> 0.0</td><td> 0</td><td> 49938</td><td>Direktoratet for samfunnssikkerhet og beredskap</td></tr>
1826 <tr><td>19.1</td><td>1392</td><td> 7269</td><td>19.1</td><td>1263</td><td> 6601</td><td> 0.0</td><td> 0</td><td> 19869</td><td>Fylkesmannen i Troms</td></tr>
1827 <tr><td>20.4</td><td> 768</td><td> 3758</td><td>15.7</td><td> 471</td><td> 3008</td><td> 0.1</td><td> 9</td><td> 11280</td><td>Integrerings- og mangfoldsdirektoratet</td></tr>
1828 <tr><td>21.0</td><td> 995</td><td> 4737</td><td>17.8</td><td> 978</td><td> 5508</td><td> 0.0</td><td> 0</td><td> 11260</td><td>Fylkesmannen i Sogn og Fjordane</td></tr>
1829 <tr><td>21.6</td><td> 16</td><td> 74</td><td>97.3</td><td>2626</td><td> 2698</td><td> 0.0</td><td> 0</td><td> 155</td><td>Statens reindriftsforvaltning</td></tr>
1830 <tr><td>22.1</td><td> 96</td><td> 435</td><td>17.6</td><td> 81</td><td> 459</td><td> 0.2</td><td> 3</td><td> 1943</td><td>Norges geologiske undersøkelse</td></tr>
1831 <tr><td>22.3</td><td> 27</td><td> 121</td><td>10.6</td><td> 15</td><td> 141</td><td> 0.1</td><td> 1</td><td> 779</td><td>Kunst i offentlige rom</td></tr>
1832 <tr><td>22.4</td><td>1939</td><td> 8659</td><td>21.8</td><td>1992</td><td> 9120</td><td> 0.0</td><td> 1</td><td> 17738</td><td>Fylkesmannen i Nordland</td></tr>
1833 <tr><td>22.5</td><td> 52</td><td> 231</td><td>14.7</td><td> 32</td><td> 217</td><td> 0.0</td><td> 0</td><td> 896</td><td>Fredskorpset</td></tr>
1834 <tr><td>22.5</td><td>2017</td><td> 8957</td><td>95.5</td><td>40498</td><td> 42425</td><td> 0.0</td><td> 0</td><td> 14223</td><td>Statens landbruksforvaltning</td></tr>
1835 <tr><td>22.9</td><td> 116</td><td> 507</td><td>15.2</td><td> 81</td><td> 532</td><td> 0.0</td><td> 0</td><td> 2069</td><td>Nasjonalbiblioteket</td></tr>
1836 <tr><td>25.5</td><td> 211</td><td> 829</td><td>20.8</td><td> 205</td><td> 987</td><td> 0.0</td><td> 0</td><td> 3867</td><td>Direktoratet for økonomistyring</td></tr>
1837 <tr><td>26.1</td><td> 6</td><td> 23</td><td> 9.7</td><td> 3</td><td> 31</td><td> 0.0</td><td> 0</td><td> 106</td><td>Kompetansesenter for distriktsutvikling</td></tr>
1838 <tr><td>26.6</td><td> 187</td><td> 702</td><td>28.5</td><td> 248</td><td> 871</td><td> 0.0</td><td> 1</td><td> 3154</td><td>Nasjonalt organ for kvalitet i utdanningen</td></tr>
1839 <tr><td>27.1</td><td> 90</td><td> 332</td><td>13.2</td><td> 41</td><td> 311</td><td> 0.0</td><td> 0</td><td> 2400</td><td>Norsk Akkreditering</td></tr>
1840 <tr><td>28.3</td><td> 562</td><td> 1986</td><td>20.0</td><td> 518</td><td> 2586</td><td> 0.0</td><td> 0</td><td> 6267</td><td>Statens lånekasse for utdanning</td></tr>
1841 <tr><td>28.8</td><td> 443</td><td> 1538</td><td>41.0</td><td> 688</td><td> 1679</td><td> 0.0</td><td> 0</td><td> 5556</td><td>Havforskningsinstituttet</td></tr>
1842 <tr><td>29.8</td><td>1473</td><td> 4944</td><td>24.8</td><td>1047</td><td> 4230</td><td> 0.0</td><td> 0</td><td> 9850</td><td>Utlendingsdirektoratet</td></tr>
1843 <tr><td>29.8</td><td>1563</td><td> 5249</td><td>31.0</td><td>1421</td><td> 4588</td><td> 0.0</td><td> 0</td><td> 15660</td><td>Fylkesmannen i Finnmark</td></tr>
1844 <tr><td>30.8</td><td> 314</td><td> 1021</td><td>58.4</td><td> 941</td><td> 1610</td><td> 0.3</td><td> 13</td><td> 3979</td><td>Direktoratet for nødkommunikasjon</td></tr>
1845 <tr><td>31.4</td><td> 463</td><td> 1475</td><td>37.0</td><td> 280</td><td> 757</td><td> 0.1</td><td> 7</td><td> 4797</td><td>Domstoladministrasjonen</td></tr>
1846 <tr><td>31.8</td><td>4708</td><td> 14785</td><td>25.2</td><td>2236</td><td> 8879</td><td> 0.0</td><td> 2</td><td> 39313</td><td>Utenriksdepartementet</td></tr>
1847 <tr><td>36.1</td><td> 526</td><td> 1456</td><td>76.6</td><td>1364</td><td> 1781</td><td> 0.0</td><td> 0</td><td> 4472</td><td>Departementenes sikkerhets- og serviceorganisasjon</td></tr>
1848 <tr><td>36.7</td><td> 447</td><td> 1217</td><td>63.8</td><td>1503</td><td> 2355</td><td> 1.8</td><td> 92</td><td> 5121</td><td>Garantiinstituttet for eksportkreditt</td></tr>
1849 <tr><td>38.2</td><td>3341</td><td> 8744</td><td>34.7</td><td>3096</td><td> 8927</td><td> 0.0</td><td> 3</td><td> 15180</td><td>Fylkesmannen i Oppland</td></tr>
1850 <tr><td>39.3</td><td>6267</td><td> 15947</td><td>37.7</td><td>6262</td><td> 16606</td><td> 0.1</td><td> 15</td><td> 29707</td><td>Fylkesmannen i Hordaland</td></tr>
1851 <tr><td>39.6</td><td>2122</td><td> 5365</td><td>41.3</td><td>2242</td><td> 5428</td><td> 0.0</td><td> 0</td><td> 12680</td><td>Fylkesmannen i Telemark</td></tr>
1852 <tr><td>40.8</td><td>3137</td><td> 7698</td><td>37.0</td><td>3059</td><td> 8272</td><td> 0.0</td><td> 5</td><td> 13848</td><td>Fylkesmannen i Nord-Trøndelag</td></tr>
1853 <tr><td>42.1</td><td>1528</td><td> 3627</td><td>19.2</td><td> 529</td><td> 2750</td><td> 0.0</td><td> 1</td><td> 13524</td><td>Statsbygg</td></tr>
1854 <tr><td>42.4</td><td>2844</td><td> 6700</td><td>42.4</td><td>2913</td><td> 6863</td><td> 0.0</td><td> 0</td><td> 12090</td><td>Fylkesmannen i Vest-Agder</td></tr>
1855 <tr><td>42.9</td><td> 6</td><td> 14</td><td>88.9</td><td>2398</td><td> 2698</td><td> 0.0</td><td> 0</td><td> 23</td><td>Reindriftsforvaltningen</td></tr>
1856 <tr><td>43.3</td><td>3310</td><td> 7645</td><td>42.6</td><td>3369</td><td> 7908</td><td> 0.0</td><td> 0</td><td> 15739</td><td>Fylkesmannen i Vestfold</td></tr>
1857 <tr><td>43.4</td><td>3433</td><td> 7905</td><td>40.8</td><td>3508</td><td> 8594</td><td> 0.0</td><td> 0</td><td> 12921</td><td>Fylkesmannen i Møre og Romsdal</td></tr>
1858 <tr><td>43.4</td><td>5540</td><td> 12773</td><td>40.1</td><td>5429</td><td> 13534</td><td> 0.0</td><td> 0</td><td> 22389</td><td>Fylkesmannen i Rogaland</td></tr>
1859 <tr><td>43.6</td><td>2334</td><td> 5350</td><td>39.5</td><td>2314</td><td> 5861</td><td> 0.0</td><td> 0</td><td> 9997</td><td>Fylkesmannen i Aust-Agder</td></tr>
1860 <tr><td>43.7</td><td>2656</td><td> 6079</td><td>23.1</td><td> 890</td><td> 3853</td><td> 0.1</td><td> 21</td><td> 18064</td><td>Forsvarsbygg</td></tr>
1861 <tr><td>48.9</td><td>4276</td><td> 8747</td><td>48.0</td><td>4189</td><td> 8734</td><td> 0.0</td><td> 0</td><td> 16281</td><td>Fylkesmannen i Buskerud</td></tr>
1862 <tr><td>50.9</td><td>5106</td><td> 10024</td><td>45.7</td><td>4584</td><td> 10022</td><td> 0.0</td><td> 0</td><td> 15340</td><td>Fylkesmannen i Sør-Trøndelag</td></tr>
1863 <tr><td>51.4</td><td>4477</td><td> 8703</td><td>45.8</td><td>4240</td><td> 9253</td><td> 0.0</td><td> 5</td><td> 12067</td><td>Fylkesmannen i Hedmark</td></tr>
1864 <tr><td>51.5</td><td> 210</td><td> 408</td><td>36.8</td><td> 656</td><td> 1785</td><td> 0.0</td><td> 0</td><td> 658</td><td>Departementenes servicesenter</td></tr>
1865 <tr><td>52.7</td><td>4663</td><td> 8852</td><td>46.6</td><td>4110</td><td> 8824</td><td> 0.0</td><td> 0</td><td> 13869</td><td>Fylkesmannen i Østfold</td></tr>
1866 <tr><td>59.7</td><td>14852</td><td> 24867</td><td>56.6</td><td>14366</td><td> 25404</td><td> 0.0</td><td> 0</td><td> 38706</td><td>Fylkesmannen i Oslo og Akershus</td></tr>
1867 <tr><td>61.1</td><td>44900</td><td> 73495</td><td>95.1</td><td>40365</td><td> 42462</td><td> 0.0</td><td> 11</td><td> 63747</td><td>Landbruksdirektoratet Oslo</td></tr>
1868 <tr><td>63.8</td><td>68121</td><td>106802</td><td>18.5</td><td>7592</td><td> 41093</td><td> 0.0</td><td> 0</td><td>144950</td><td>Arbeidstilsynet</td></tr>
1869 <tr><td>69.8</td><td>110225</td><td>157962</td><td>70.8</td><td>105811</td><td>149449</td><td> 0.0</td><td> 14</td><td>106772</td><td>Statens vegvesen Region øst</td></tr>
1870 <tr><td>72.2</td><td>16772</td><td> 23215</td><td>95.2</td><td>16409</td><td> 17238</td><td> 0.0</td><td> 0</td><td> 16705</td><td>Norsk kulturråd</td></tr>
1871 <tr><td>78.6</td><td>124131</td><td>157956</td><td>77.6</td><td>115949</td><td>149462</td><td> 0.0</td><td> 0</td><td> 77689</td><td>Statens vegvesen Region sør</td></tr>
1872 <tr><td>80.7</td><td>55587</td><td> 68896</td><td>71.9</td><td>36121</td><td> 50269</td><td> 0.0</td><td> 0</td><td> 42152</td><td>Sjøfartsdirektoratet</td></tr>
1873 <tr><td>81.0</td><td>128006</td><td>157956</td><td>80.1</td><td>119743</td><td>149456</td><td> 0.0</td><td> 8</td><td> 74195</td><td>Statens vegvesen Region vest</td></tr>
1874 <tr><td>87.2</td><td>137798</td><td>157962</td><td>87.6</td><td>130971</td><td>149449</td><td> 0.0</td><td> 9</td><td> 50814</td><td>Statens vegvesen Region midt</td></tr>
1875 <tr><td>88.0</td><td>12239</td><td> 13902</td><td>86.1</td><td>19158</td><td> 22244</td><td> 0.0</td><td> 0</td><td> 5492</td><td>Barne-, ungdoms- og familiedirektoratet</td></tr>
1876 <tr><td>90.8</td><td>143453</td><td>157956</td><td>90.6</td><td>135441</td><td>149453</td><td> 0.0</td><td> 0</td><td> 39961</td><td>Statens vegvesen Region nord</td></tr>
1877 <tr><td>93.8</td><td>5865</td><td> 6250</td><td>99.3</td><td>7093</td><td> 7140</td><td> 0.0</td><td> 0</td><td> 984</td><td>Nasjonal kommunikasjonsmyndighet</td></tr>
1878 <tr><td>95.3</td><td>4655</td><td> 4883</td><td>94.3</td><td>3819</td><td> 4049</td><td> 0.1</td><td> 1</td><td> 967</td><td>Landinfo</td></tr>
1879 <tr><td>96.2</td><td>151935</td><td>157870</td><td>96.0</td><td>143497</td><td>149452</td><td> 0.0</td><td> 0</td><td> 19555</td><td>Statens vegvesen Vegdirektoratet</td></tr>
1880 <tr><td>97.5</td><td>100799</td><td>103373</td><td>96.9</td><td>119802</td><td>123636</td><td> 0.0</td><td> 0</td><td> 7605</td><td>Toll- og avgiftsdirektoratet</td></tr>
1881 <tr><td>97.7</td><td>24104</td><td> 24666</td><td>98.2</td><td>23640</td><td> 24062</td><td> 0.2</td><td> 5</td><td> 2108</td><td>Kriminalomsorgsdirektoratet</td></tr>
1882 <tr><td>98.3</td><td>60845</td><td> 61922</td><td>98.3</td><td>58575</td><td> 59605</td><td> 0.0</td><td> 0</td><td> 2837</td><td>Statens pensjonskasse</td></tr>
1883 <tr><td>99.5</td><td>990661</td><td>995873</td><td>99.4</td><td>953094</td><td>958529</td><td> 0.0</td><td> 0</td><td> 18246</td><td>Skattedirektoratet</td></tr>
1884
1885 </table>
1886
1887 <p>Det kunne vært interessant å se hva som skjedde hvis en ba om
1888 innsyn i en dokument-ID som ikke finnes i OEP... :) Det hadde også
1889 vært interessant å få vite hva årsaken til at noen saksnummer ikke
1890 dukker opp i OEP der det er få og mange. Jeg mistenker jo at årsaken
1891 ikke er den samme hos Skattedirektoratet og hos Landinfo, selv om
1892 andelen upubliserte nummer er ganske lik.</p>
1893
1894 </div>
1895 <div class="tags">
1896
1897
1898 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>.
1899
1900
1901 </div>
1902 </div>
1903 <div class="padding"></div>
1904
1905 <div class="entry">
1906 <div class="title">
1907 <a href="http://people.skolelinux.org/pere/blog/Hvordan_b_r_RFC_822_formattert_epost_lagres_i_en_NOARK5_database_.html">Hvordan bør RFC 822-formattert epost lagres i en NOARK5-database?</a>
1908 </div>
1909 <div class="date">
1910 7th March 2014
1911 </div>
1912 <div class="body">
1913 <p>For noen uker siden ble NXCs fri programvarelisenserte
1914 NOARK5-løsning
1915 <a href="http://www.nuug.no/aktiviteter/20140211-noark/">presentert hos
1916 NUUG</a> (video
1917 <a href="https://www.youtube.com/watch?v=JCb_dNS3MHQ">på youtube
1918 foreløbig</a>), og det fikk meg til å titte litt mer på NOARK5,
1919 standarden for arkivhåndtering i det offentlige Norge. Jeg lurer på
1920 om denne kjernen kan være nyttig i et par av mine prosjekter, og for ett
1921 av dem er det mest aktuelt å lagre epost. Jeg klarte ikke finne noen
1922 anbefaling om hvordan RFC 822-formattert epost (aka Internett-epost)
1923 burde lagres i NOARK5, selv om jeg vet at noen arkiver tar
1924 PDF-utskrift av eposten med sitt epostprogram og så arkiverer PDF-en
1925 (eller enda værre, tar papirutskrift og lagrer bildet av eposten som
1926 PDF i arkivet).</p>
1927
1928 <p>Det er ikke så mange formater som er akseptert av riksarkivet til
1929 langtidsoppbevaring av offentlige arkiver, og PDF og XML er de mest
1930 aktuelle i så måte. Det slo meg at det måtte da finnes en eller annen
1931 egnet XML-representasjon og at det kanskje var enighet om hvilken som
1932 burde brukes, så jeg tok mot til meg og spurte
1933 <a href="http://samdok.com/">SAMDOK</a>, en gruppe tilknyttet
1934 arkivverket som ser ut til å jobbe med NOARK-samhandling, om de hadde
1935 noen anbefalinger:
1936
1937 <p><blockquote>
1938 <p>Hei.</p>
1939
1940 <p>Usikker på om dette er riktig forum å ta opp mitt spørsmål, men jeg
1941 lurer på om det er definert en anbefaling om hvordan RFC
1942 822-formatterte epost (aka vanlig Internet-epost) bør lages håndteres
1943 i NOARK5, slik at en bevarer all informasjon i eposten
1944 (f.eks. Received-linjer). Finnes det en anbefalt XML-mapping ala den
1945 som beskrives på
1946 &lt;URL: <a href="https://www.informit.com/articles/article.aspx?p=32074">https://www.informit.com/articles/article.aspx?p=32074</a> &gt;? Mitt
1947 mål er at det skal være mulig å lagre eposten i en NOARK5-kjerne og
1948 kunne få ut en identisk formattert kopi av opprinnelig epost ved
1949 behov.</p>
1950 </blockquote></p>
1951
1952 <p>Postmottaker hos SAMDOK mente spørsmålet heller burde stilles
1953 direkte til riksarkivet, og jeg fikk i dag svar derfra formulert av
1954 seniorrådgiver Geir Ivar Tungesvik:</p>
1955
1956 <p><blockquote>
1957 <p>Riksarkivet har ingen anbefalinger når det gjelder konvertering fra
1958 e-post til XML. Det står arkivskaper fritt å eventuelt definere/bruke
1959 eget format. Inklusive da - som det spørres om - et format der det er
1960 mulig å re-etablere e-post format ut fra XML-en. XML (e-post)
1961 dokumenter må være referert i arkivstrukturen, og det må vedlegges et
1962 gyldig XML skjema (.xsd) for XML-filene. Arkivskaper står altså fritt
1963 til å gjøre hva de vil, bare det dokumenteres og det kan dannes et
1964 utrekk ved avlevering til depot.</p>
1965
1966 <p>De obligatoriske kravene i Noark 5 standarden må altså oppfylles -
1967 etter dialog med Riksarkivet i forbindelse med godkjenning. For
1968 offentlige arkiv er det særlig viktig med filene loependeJournal.xml
1969 og offentligJournal.xml. Private arkiv som vil forholde seg til Noark
1970 5 standarden er selvsagt frie til å bruke det som er relevant for dem
1971 av obligatoriske krav.</p>
1972 </blockquote></p>
1973
1974 <p>Det ser dermed ut for meg som om det er et lite behov for å
1975 standardisere XML-lagring av RFC-822-formatterte meldinger. Noen som
1976 vet om god spesifikasjon i så måte? I tillegg til den omtalt over,
1977 har jeg kommet over flere aktuelle beskrivelser (søk på "rfc 822
1978 xml", så finner du aktuelle alternativer).</p>
1979
1980 <ul>
1981
1982 <li><a href="http://www.openhealth.org/xmtp/">XML MIME Transformation
1983 protocol (XMTP)</a> fra OpenHealth, sist oppdatert 2001.</li>
1984
1985 <li><a href="https://tools.ietf.org/html/draft-klyne-message-rfc822-xml-03">An
1986 XML format for mail and other messages</a> utkast fra IETF datert
1987 2001.</li>
1988
1989 <li><a href="http://www.informit.com/articles/article.aspx?p=32074">xMail:
1990 E-mail as XML</a> en artikkel fra 2003 som beskriver python-modulen
1991 rfc822 som gir ut XML-representasjon av en RFC 822-formattert epost.</li>
1992
1993 </ul>
1994
1995 <p>Finnes det andre og bedre spesifikasjoner for slik lagring? Send
1996 meg en epost hvis du har innspill.</p>
1997
1998 </div>
1999 <div class="tags">
2000
2001
2002 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>.
2003
2004
2005 </div>
2006 </div>
2007 <div class="padding"></div>
2008
2009 <p style="text-align: right;"><a href="noark5.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS Feed" width="36" height="14" /></a></p>
2010 <div id="sidebar">
2011
2012
2013
2014 <h2>Archive</h2>
2015 <ul>
2016
2017 <li>2020
2018 <ul>
2019
2020 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/02/">February (2)</a></li>
2021
2022 </ul></li>
2023
2024 <li>2019
2025 <ul>
2026
2027 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/01/">January (4)</a></li>
2028
2029 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/02/">February (3)</a></li>
2030
2031 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/03/">March (3)</a></li>
2032
2033 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/05/">May (2)</a></li>
2034
2035 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/06/">June (5)</a></li>
2036
2037 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/07/">July (2)</a></li>
2038
2039 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/08/">August (1)</a></li>
2040
2041 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/09/">September (1)</a></li>
2042
2043 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/11/">November (1)</a></li>
2044
2045 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/12/">December (4)</a></li>
2046
2047 </ul></li>
2048
2049 <li>2018
2050 <ul>
2051
2052 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/01/">January (1)</a></li>
2053
2054 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/02/">February (5)</a></li>
2055
2056 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/03/">March (5)</a></li>
2057
2058 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/04/">April (3)</a></li>
2059
2060 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/06/">June (2)</a></li>
2061
2062 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/07/">July (5)</a></li>
2063
2064 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/08/">August (3)</a></li>
2065
2066 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/09/">September (3)</a></li>
2067
2068 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/10/">October (5)</a></li>
2069
2070 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/11/">November (2)</a></li>
2071
2072 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/12/">December (4)</a></li>
2073
2074 </ul></li>
2075
2076 <li>2017
2077 <ul>
2078
2079 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/01/">January (4)</a></li>
2080
2081 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/02/">February (3)</a></li>
2082
2083 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/03/">March (5)</a></li>
2084
2085 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/04/">April (2)</a></li>
2086
2087 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/06/">June (5)</a></li>
2088
2089 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/07/">July (1)</a></li>
2090
2091 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/08/">August (1)</a></li>
2092
2093 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/09/">September (3)</a></li>
2094
2095 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/10/">October (5)</a></li>
2096
2097 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/11/">November (3)</a></li>
2098
2099 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/12/">December (4)</a></li>
2100
2101 </ul></li>
2102
2103 <li>2016
2104 <ul>
2105
2106 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/01/">January (3)</a></li>
2107
2108 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/02/">February (2)</a></li>
2109
2110 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/03/">March (3)</a></li>
2111
2112 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/04/">April (8)</a></li>
2113
2114 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/05/">May (8)</a></li>
2115
2116 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/06/">June (2)</a></li>
2117
2118 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/07/">July (2)</a></li>
2119
2120 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/08/">August (5)</a></li>
2121
2122 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/09/">September (2)</a></li>
2123
2124 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/10/">October (3)</a></li>
2125
2126 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (8)</a></li>
2127
2128 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/12/">December (5)</a></li>
2129
2130 </ul></li>
2131
2132 <li>2015
2133 <ul>
2134
2135 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
2136
2137 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
2138
2139 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
2140
2141 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
2142
2143 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
2144
2145 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
2146
2147 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
2148
2149 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
2150
2151 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
2152
2153 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
2154
2155 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
2156
2157 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (3)</a></li>
2158
2159 </ul></li>
2160
2161 <li>2014
2162 <ul>
2163
2164 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
2165
2166 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
2167
2168 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
2169
2170 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
2171
2172 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
2173
2174 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
2175
2176 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
2177
2178 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
2179
2180 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
2181
2182 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
2183
2184 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
2185
2186 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
2187
2188 </ul></li>
2189
2190 <li>2013
2191 <ul>
2192
2193 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
2194
2195 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
2196
2197 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
2198
2199 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
2200
2201 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
2202
2203 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
2204
2205 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
2206
2207 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
2208
2209 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
2210
2211 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
2212
2213 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
2214
2215 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
2216
2217 </ul></li>
2218
2219 <li>2012
2220 <ul>
2221
2222 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
2223
2224 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
2225
2226 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
2227
2228 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
2229
2230 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
2231
2232 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
2233
2234 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
2235
2236 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
2237
2238 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
2239
2240 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
2241
2242 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
2243
2244 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
2245
2246 </ul></li>
2247
2248 <li>2011
2249 <ul>
2250
2251 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
2252
2253 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
2254
2255 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
2256
2257 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
2258
2259 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
2260
2261 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
2262
2263 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
2264
2265 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
2266
2267 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
2268
2269 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
2270
2271 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
2272
2273 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
2274
2275 </ul></li>
2276
2277 <li>2010
2278 <ul>
2279
2280 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
2281
2282 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
2283
2284 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
2285
2286 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
2287
2288 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
2289
2290 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
2291
2292 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
2293
2294 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
2295
2296 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
2297
2298 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
2299
2300 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
2301
2302 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
2303
2304 </ul></li>
2305
2306 <li>2009
2307 <ul>
2308
2309 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
2310
2311 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
2312
2313 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
2314
2315 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
2316
2317 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
2318
2319 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
2320
2321 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
2322
2323 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
2324
2325 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
2326
2327 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
2328
2329 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
2330
2331 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
2332
2333 </ul></li>
2334
2335 <li>2008
2336 <ul>
2337
2338 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
2339
2340 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
2341
2342 </ul></li>
2343
2344 </ul>
2345
2346
2347
2348 <h2>Tags</h2>
2349 <ul>
2350
2351 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (16)</a></li>
2352
2353 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
2354
2355 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
2356
2357 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
2358
2359 <li><a href="http://people.skolelinux.org/pere/blog/tags/betalkontant">betalkontant (8)</a></li>
2360
2361 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (11)</a></li>
2362
2363 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (17)</a></li>
2364
2365 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
2366
2367 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
2368
2369 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (168)</a></li>
2370
2371 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (158)</a></li>
2372
2373 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian-handbook">debian-handbook (4)</a></li>
2374
2375 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (11)</a></li>
2376
2377 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (17)</a></li>
2378
2379 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (26)</a></li>
2380
2381 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
2382
2383 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (412)</a></li>
2384
2385 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
2386
2387 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (14)</a></li>
2388
2389 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (34)</a></li>
2390
2391 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
2392
2393 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (20)</a></li>
2394
2395 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
2396
2397 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (42)</a></li>
2398
2399 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (16)</a></li>
2400
2401 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (22)</a></li>
2402
2403 <li><a href="http://people.skolelinux.org/pere/blog/tags/kodi">kodi (4)</a></li>
2404
2405 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
2406
2407 <li><a href="http://people.skolelinux.org/pere/blog/tags/lego">lego (4)</a></li>
2408
2409 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
2410
2411 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
2412
2413 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
2414
2415 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
2416
2417 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (42)</a></li>
2418
2419 <li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (12)</a></li>
2420
2421 <li><a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5 (21)</a></li>
2422
2423 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (311)</a></li>
2424
2425 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (196)</a></li>
2426
2427 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (37)</a></li>
2428
2429 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
2430
2431 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (75)</a></li>
2432
2433 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (111)</a></li>
2434
2435 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (2)</a></li>
2436
2437 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
2438
2439 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
2440
2441 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
2442
2443 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (12)</a></li>
2444
2445 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
2446
2447 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (7)</a></li>
2448
2449 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
2450
2451 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (56)</a></li>
2452
2453 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
2454
2455 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
2456
2457 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (69)</a></li>
2458
2459 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (6)</a></li>
2460
2461 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (12)</a></li>
2462
2463 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (57)</a></li>
2464
2465 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (4)</a></li>
2466
2467 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
2468
2469 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (9)</a></li>
2470
2471 <li><a href="http://people.skolelinux.org/pere/blog/tags/verkidetfri">verkidetfri (17)</a></li>
2472
2473 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (73)</a></li>
2474
2475 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
2476
2477 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (42)</a></li>
2478
2479 </ul>
2480
2481
2482 </div>
2483 <p style="text-align: right">
2484 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
2485 </p>
2486
2487 </body>
2488 </html>