1 <?xml version=
"1.0" encoding=
"utf-8"?>
2 <rss version='
2.0' xmlns:lj='http://www.livejournal.org/rss/lj/
1.0/'
>
4 <title>Petter Reinholdtsen - Entries tagged noark5
</title>
5 <description>Entries tagged noark5
</description>
6 <link>http://people.skolelinux.org/pere/blog/
</link>
10 <title>Nikita version
0.5 released - updated free software archive API server
</title>
11 <link>http://people.skolelinux.org/pere/blog/Nikita_version_0_5_released___updated_free_software_archive_API_server.html
</link>
12 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Nikita_version_0_5_released___updated_free_software_archive_API_server.html
</guid>
13 <pubDate>Mon,
2 Mar
2020 19:
00:
00 +
0100</pubDate>
14 <description><p
>Today, after many months of development, a new release of
15 <ahref=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">Nikita
16 Noark
5 core project
</a
> was finally
17 <ahref=
"https://lists.nuug.no/pipermail/nikita-noark/
2020-March/
000519.html
">announced
18 on the project mailing list
</a
>. The Nikita free software solution is
19 an implementation of the Norwegian archive standard Noark
5 used by
20 government offices in Norway. These were the changes in version
0.5
21 since version
0.4, see the email link above for links to a demo
26 <li
>Updated to Noark
5 versjon
5.0 API specification.
28 <li
>Changed formatting of _links from [] to {} to match IETF draft
29 on JSON HAL.
</li
>
30 <li
>Merged Registrering og Basisregistrering in version
4 to
31 combined Registrering.
</li
>
32 <li
>DokumentObjekt is now subtype of ArkivEnhet.
</li
>
33 <li
>Introducing new entity Arkivnotat.
</li
>
34 <li
>Changed all relation keys to use /v5/ instead of /v4/.
</li
>
35 <li
>Corrected to use new official relation keys when possible.
</li
>
36 <li
>Renamed Sakspart to Part and connect it to Mappe, Registrering
37 and Dokumentbeskrivelse instead of only Saksmappe.
</li
>
38 <li
>Moved Korrespondansepart connection from Journalpost to
39 Registrering.
</li
>
40 <li
>Moved Part and Korrespondansepart from package sakarkiv to
41 arkivstruktur.
</li
>
42 <li
>Renamed presedensstatus to presedensStatus.
</li
>
43 <li
>Use new JSON content-type
"application/vnd.noark5+json
".
</li
>
44 <li
>Updated prepopulated format list to use PRONOM codes.
</li
>
45 <li
>Implemented endpoint for system information.
</li
>
46 <li
>Implemented national identifiers for both file and record.
</li
>
47 <li
>Implemented comments.
</li
>
48 <li
>implemented sign off.
</li
>
49 <li
>implemented conversion.
</li
>
50 </ul
></li
>
51 <li
>Improved/implemented OData search and paging support for more entities.
</li
>
52 <li
>No longer exposes attribute Dokumentobjekt.referanseDokumentfil,
53 one should use the relation in _links instead.
</li
>
54 <li
>Corrected relation keys under
55 https://rel.arkivverket.no/noark5/v5/api/administrasjon/, replacing
56 'administrasjon
' with
'admin
'.
</li
>
57 <li
>Fixed several security and stability issues discovered by Coverity.
</li
>
58 <li
>Corrected handling ETag errors, now return code
409.
</li
>
59 <li
>Improved handling of Kryssreferanse.
</li
>
60 <li
>Changed internal database model to use UUID/SystemID as primary keys
62 <li
>Changed internal database table names to use package prefix.
</li
>
63 <li
>Changed time zone handling for date and datetime attributes, to be
64 more according to the new definition in the API specification.
</li
>
65 <li
>Change revoke-token to only drop token on POST requests, not GET.
</li
>
66 <li
>Updated to newer Spring version.
</li
>
67 <li
>Changed primary key and URL component for metadata code lists to
68 use the
'kode
' value instead of a SystemID.
</li
>
69 <li
>Corrected implementation of Part and Sakspart.
</li
>
70 <li
>Changed instance lists with subtypes (like .../registrering/ and
71 .../mappe/) to include the attributes and _links entries for the
72 subtype in the supertype lists.
</li
>
73 <li
>Adjusted _links relations to make it possible to figure out the
74 entity of an instance using the self-
>href-
>relation key lookup
76 <li
>Fixed several end points to make sure GET, PUT, POST and DELETE
77 match each other.
</li
>
78 <li
>Updated DELETE endpoints to work with UUID based entity
79 identifiers.
</li
>
80 <li
>Restructured code to use more common URL related constants in entry
81 point values and replace @RequestMapping with method specific
82 annotations.
</li
>
83 <li
>Added first unit test code.
</li
>
84 <li
>Updated web GUI to work with the updated API.
</li
>
85 <li
>Changed integer fields, enforce them as numeric.
</li
>
86 <li
>Rewrote and simplify metadata handling to use common service and
87 controller code instead of duplicating for each type.
</li
>
88 <li
>Implemented the remaining metadata types.
</li
>
89 <li
>Changed Country list source from Wikipedia to Debian iso-codes and
90 updated the list of Countries.
</li
>
91 <li
>Many many corrections and improvements.
</li
>
95 <p
>If free and open standardized archiving API sound interesting to
96 you, please contact us on IRC
97 (
<a href=
"irc://irc.freenode.net/%
23nikita
">#nikita on
98 irc.freenode.net
</a
>) or email
99 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">nikita-noark
100 mailing list
</a
>).
</p
>
102 <p
>As usual, if you use Bitcoin and want to show your support of my
103 activities, please send Bitcoin donations to my address
104 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
109 <title>Blockchain and IoT articles accepted into Records Management Journal
</title>
110 <link>http://people.skolelinux.org/pere/blog/Blockchain_and_IoT_articles_accepted_into_Records_Management_Journal.html
</link>
111 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Blockchain_and_IoT_articles_accepted_into_Records_Management_Journal.html
</guid>
112 <pubDate>Thu,
27 Feb
2020 09:
05:
00 +
0100</pubDate>
113 <description><p
>On Tuesday, two scietific articles we have been working on for a
114 while, was finally accepted for publication into
115 <a href=
"https://www.emerald.com/insight/publication/issn/
0956-
5698">Records
116 Management Journal
</a
>. Still waiting for the assigned DOI urls to
117 start working, but you can have a look at the LaTeX originals here.
</p
>
119 <p
>The first article is
120 "<a href=
"http://people.skolelinux.org/pere/blog/images/
2020-
02-
25-rmj-iot-record-keeping.pdf
">A
121 record-keeping approach to managing IoT-data for government
122 agencies
</a
>" (
<a href=
"https://doi.org/
10.1108/RMJ-
09-
2019-
0050">DOI
123 10.1108/RMJ-
09-
2019-
0050<a/
>) by Thomas Sødring, Petter Reinholdtsen
124 and David Massey, and sketches some approaches for storing measurement
125 data (aka Internet of Things sensor data) in a archive, thus providing
126 a well defined mechanism for screening and deletion of the information
</p
>
128 <p
>The second article is
129 "<a href=
"http://people.skolelinux.org/pere/blog/images/
2020-
02-
25-rmj-block-chain-record-keeping.pdf
">Publishing
130 and using record-keeping structural information in a blockchain
</a
>"
131 (
<a href=
"https://doi.org/
10.1108/RMJ-
09-
2019-
0056">DOI
132 10.1108/RMJ-
09-
2019-
0056</a
>) by Thomas Sødring, Petter Reinholdtsen
133 and Svein Ølnes, where we describe a way for third parties to validate
134 authenticity and thus improve trust in the records kept in a
137 <p
>As usual, if you use Bitcoin and want to show your support of my
138 activities, please send Bitcoin donations to my address
139 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
141 <p
><strong
>Update
2020-
04-
26</strong
>: Initially managed to swap the
142 DOI numbers. Fixed it.
</p
>
147 <title>Redaksjon på plass for Noark
5 tjenestegrensesnitt
</title>
148 <link>http://people.skolelinux.org/pere/blog/Redaksjon_p__plass_for_Noark_5_tjenestegrensesnitt.html
</link>
149 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Redaksjon_p__plass_for_Noark_5_tjenestegrensesnitt.html
</guid>
150 <pubDate>Wed,
5 Feb
2020 14:
45:
00 +
0100</pubDate>
151 <description><p
>Arbeidet med å lage et godt, fritt og åpent standardisert maskinelt
152 grensesnitt for arkivering, med tilhørende fri
153 programvareimplementasjon fortsetter. Jeg snakker om
154 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard
">Noark
155 5 Tjenestegrensesnitt
</a
> og
156 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">Nikita
</a
>.
158 <a href=
"https://www.nuug.no/aktiviteter/
20200127-noark-seminar/
">seminaret
159 for noen dager siden
</a
>, er vi i Nikita-prosjektet har fått beskjed
160 fra Arkivverket at det blir satt ned en redaksjon for å videreutvikle
161 spesifikasjonen. Redaksjonen består av Mona Danielsen og Anne Sofie
162 Knutsen ved arkivverket, Thomas Sødring ved OsloMet, og meg selv fra
163 NUUG. De to sistenevnte tar seg av de åpenbare forbedringene, mens
164 hele redaksjonen diskuterer tvilstilfeller. Jeg håper dette vil bidra
165 til at vi lykkes i å gjøre denne protokollspesifikasjonen så entydig
166 og klar at den vil bidra til et velfungerende marked for
167 arkivsystemer, og sikre at programmer som trenger å snakke med
168 arkivsystemet kan snakke med enhver implementasjon av
169 API-spesifikasjonen. Nikita er den første implementasjonen, men det
170 bør blir flere.
</p
>
172 <p
>Det gjenstår riktig nok endel før vi er i mål, selv om svært mye
173 allerede er på plass. Med innspill og forslag til forbedringer fra
174 alle som vil ha et leverandøruavhengig og fullstendig
175 datamaskinlesbart grensesnitt til arkivet, så tror jeg vi vil
178 <p
>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
179 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
181 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
182 Merk, betaling med bitcoin er ikke anonymt. :)
</p
>
187 <title>Artikkel om Noark
5 Tjenestegrensesnitt og Nikita i Arkivråd nummer
3 for
2019</title>
188 <link>http://people.skolelinux.org/pere/blog/Artikkel_om_Noark_5_Tjenestegrensesnitt_og_Nikita_i_Arkivr_d_nummer_3_for_2019.html
</link>
189 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Artikkel_om_Noark_5_Tjenestegrensesnitt_og_Nikita_i_Arkivr_d_nummer_3_for_2019.html
</guid>
190 <pubDate>Thu,
26 Dec
2019 08:
00:
00 +
0100</pubDate>
191 <description><p
>Like før julaften ble en artikkel jeg har skrevet om vedlikehold av
192 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard
">Noark
193 5 Tjenestegrensesnitt
</a
> og Nikita publisert i
<a
194 href=
"https://www.arkivrad.no/arkivrad
">tidsskriftet Arkivråd
</a
>.
196 <a href=
"http://people.skolelinux.org/pere/blog/_pen_og_gjennomsiktig_vedlikehold_av_spesifikasjonen_for_Noark_5_Tjenestegrensesnitt.html
">min bloggpost
197 om samme tema
</a
> som ble publisert
2019-
03-
11. Jeg oppdaget nettopp
198 at nettsiden til tidsskriftet Arkivråd er oppdatert med siste utgave,
199 og artikkelen dermed er tilgjengelig for alle. Du finner den i
200 <a href=
"https://www.arkivrad.no/sites/arkivrad/files/arkivrad_03_2019_nett.pdf
">PDF-en
201 til nummer
2019/
3 på side
30-
33</a
>. Jeg håper leserne av
202 tidsskriftet får lyst til å sjekke ut tjenestegrensesnittet og at
203 artikkelen vil gjøre det enklere for flere å bidra til en enda bedre,
204 klarere og mer entydig API-spesifikasjon. Det kan gjøre at
205 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">arkivsystemet
206 Nikita
</a
> kan bli enda bedre når spesifikasjonen forbedres.
</p
>
208 <p
>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
209 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
211 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
212 Merk, betaling med bitcoin er ikke anonymt. :)
</p
>
217 <title>Artikkel om Nikita i Arkheion nummer
2019/
2</title>
218 <link>http://people.skolelinux.org/pere/blog/Artikkel_om_Nikita_i_Arkheion_nummer_2019_2.html
</link>
219 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Artikkel_om_Nikita_i_Arkheion_nummer_2019_2.html
</guid>
220 <pubDate>Mon,
9 Dec
2019 15:
05:
00 +
0100</pubDate>
221 <description><p
>Jeg hadde i dag gleden av å oppdage at en artikkel om
222 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">arkivsystemet
223 Nikita
</a
> som vi skrev i sommer, nå er publisert i
224 <a href=
"http://www.arkheion.no/
">Arkheion, fagtidsskrift for kommunial
225 arkivsektor
</a
>. Du finner artikkelen på side
30-
33 i nummer
2019/
2,
226 PDF kan lastes ned fra nettstedet til tidsskriftet. Kanskje
227 publiseringen kan føre til at noen flere får øynene opp for verdien av
228 et åpent standardisert API for arkivering og søk i arkivet.
</p
>
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
233 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
234 Merk, betaling med bitcoin er ikke anonymt. :)
</p
>
239 <title>Oppdatert Noark
5 Tjenestegrenesnitt versjon
1.0 for Noark
5.5.0</title>
240 <link>http://people.skolelinux.org/pere/blog/Oppdatert_Noark_5_Tjenestegrenesnitt_versjon_1_0_for_Noark_5_5_0.html
</link>
241 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Oppdatert_Noark_5_Tjenestegrenesnitt_versjon_1_0_for_Noark_5_5_0.html
</guid>
242 <pubDate>Fri,
5 Jul
2019 17:
20:
00 +
0200</pubDate>
243 <description><p
>Jeg er veldig glad for å kunne fortelle at i går ble ny versjon av
244 <a href=
"https://www.arkivverket.no/forvaltning-og-utvikling/noark-standarden/noark-
5/tjenestegrensesnitt-noark5
">API-spesifikasjonen
245 for Noark
5 Tjenestegrensesnitt
</a
> gitt ut. Det så lenge mørkt ut
246 for sjansene for å få inn nødvendige korreksjoner i
247 spesifikasjonsteksten innen rimelig tid, men takket være intens og god
248 innsats fra Mona og Anne Sofie hos Arkivverket de siste ukene, så ble
249 resultatet som ble gitt ut på USAs uavhengighetsdag mye bedre enn jeg
252 <p
>Spesifikasjonen er
253 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
">tilgjengelig
254 som markdown-filer i Arkivverkets github-prosjekt for dette
</a
>, og de
255 aller fleste av forslagene til forbedringer fra oss som holder på med
256 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core
">Nikita-prosjektet
</a
>
257 kom med i denne nye og oppdaterte spesifikasjonsteksten. Det er
258 fortsatt mye som gjenstår før den er entydig, klar og sikrer samvirke
259 på tvers av leverandører, men utgangspunktet er veldig mye bedre enn
260 forrige versjon fra
2016. Ta gjerne en titt.
</p
>
262 <p
>Ellers må jeg jo si at det var hyggelig å se at min forrige
263 bloggpost om tjenestegrensesnittet fikk en
264 <a href=
"https://beta.arkivverket.no/post/
186020592045/noark-
5-versjon-
50-tjenestegrensesnitt-
10">lenke
265 fra Arkivverket Beta
</a
>.
</p
>
267 <p
>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
268 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
270 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
271 Merk, betaling med bitcoin er ikke anonymt. :)
</p
>
276 <title>Nikita og Noark
5 tjenestegrensesnittet tilbyr ny måte å tenke arkivering
</title>
277 <link>http://people.skolelinux.org/pere/blog/Nikita_og_Noark_5_tjenestegrensesnittet_tilbyr_ny_m_te___tenke_arkivering.html
</link>
278 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Nikita_og_Noark_5_tjenestegrensesnittet_tilbyr_ny_m_te___tenke_arkivering.html
</guid>
279 <pubDate>Fri,
21 Jun
2019 11:
30:
00 +
0200</pubDate>
280 <description><p
><em
>av Thomas Sødring (OsloMet) og Petter Reinholdtsen (foreningen
281 NUUG)
</em
></p
>
283 <p
>Nikita Noark
5-kjerne er et fri programvareprosjekt som tar i bruk
284 Arkivverkets spesifikasjonen for Noark
5 Tjenestegrensesnitt og tilbyr
285 et maskinlesbart grensesnitt (arkiv-API) til datasystemer som trenger å
286 arkivere dokumenter og informasjon. I tillegg tilbyr Nikita et
287 nettleserbasert brukergrensesnitt for brukere av arkivet. Dette
288 brukergrensesnittet benytter det maskinlesbare grensesnittet. Noark
5
289 Tjenestegrensesnitt er en ny måte å tenke arkivering, med fokus på
290 automatisering og maskinell behandling av arkivmateriale, i stedet for
291 å fokusere på brukergrensesnitt. En kan tenke på
292 tjenestegrensesnittet som arkivet uten brukergrensesnitt, der flere
293 aktører kan koble til ulike brukergrensesnitt, tilpasset ulike
296 <p
>Historisk sett gjorde Noark standarden en veldig bra jobb med
298 papir til digital saksbehandling, men det har kommet til kort på andre
299 områder. Den teknologiske utviklingen har brakt oss ditt at vi kan og
300 skal forvente langt mer fra en arkivkjerne enn før, men det offentlig
301 er ofte konservativ når det gjelder nytenking. For lengst skulle
302 begreper som samvirke mellom datasystemer, metadata, prosess og
303 tjenestegrensesnitt (API) vært dominerende når systemer kjøpes
304 inn. Dessverre er det slik at ikke alle ønsker samvirke mellom
305 datasystemer velkommen, og det kan være trygt å kjøpe «svarte bokser»
306 der du slipper å ta stilling til hvordan man skal få flere systemer
307 til å virke sammen. Men IT-arkitektur er et begrep arkivfolk også
308 begynner å ta inn over seg.
</p
>
310 <p
>Slike systemer for å organisere metadata bør ha nettbaserte
311 tjenestegrensesnitt der brukergrensesnitt er tydelig adskilt fra
312 bakenforliggende system. Det finnes mange rapporter som snakker om å
313 bryte ned siloer i forvaltningen og standardiserte tjenestegrensesnitt
314 er det viktigste virkemiddel mot datasiloer og legger til rette for
315 økt samvirke mellom systemer. Et standardisert tjenestegrensesnitt er
316 et viktig middel for å få systemer til å samhandle da det sikrer at
317 ulike produsenters systemer kan snakke sammen på tvers. Samfunnet
318 fungerer ikke uten standardisering. Vi har alle samme strømstyrke og
319 kontakter i veggene og kjører alle på høyre side av veien i Norge. Det er i en slik
320 sammenheng at prosjektet «Noark
5 Tjenestegrensesnitt» er veldig
321 viktig. Hvis alle leverandører av arkivsystemer forholdt seg til et
322 standardisert tjenestegrensesnitt kunne kostnadene for arkivering
323 reduseres. Tenk deg at du er en kommune som ønsker et fagsystem integrert
324 med arkivløsningen din. I dag må fagsystemleverandøren vite og
325 tilpasse seg den spesifikke versjonen og varianten av arkivløsningen
326 du har. Hvis vi antar at alle leverandører av arkivkjerner har solgt
327 inn enten SOAP eller REST-grensesnitt til kunder de siste
10 årene og
328 det kommer endret versjon av grensesnittet innimellom, så gir det
329 veldig mange forskjellige tjenestegrensesnitt en fagsystemleverandør
330 må forholde seg til. Med
12 leverandører og kvartalsvise oppdateringer
331 kan det potensielt bli
96 ulike varianter hvert eneste år. Det sier
332 seg selv at det blir dyrt. Men det blir faktisk verre. Hvis du senere
333 ønsker å bytte ut arkivsystemet med et annet så er du avhengig å få
334 alle integrasjonene dine laget på nytt. Dette kan gjøre at du velger å
335 forbli hos en dårlig leverandør framfor å skaffe nytt system, fordi
336 det blir for vanskelig og dyrt å bytte. Dermed etableres det «små»
337 monopolsituasjoner som er vanskelig å bryte ut av. Dårlige valg i dag
338 kan ha uante kostander på sikt. I Nikita-prosjektet har vi kun jobbet
339 opp mot Noark
5 Tjenestegrensesnittet. Det har tatt en god del
340 ressurser å sette seg inn i spesifikasjonen og ta den i bruk, spesielt
341 på grunn av uklarheter i spesifikasjonen. Hvis vi måtte gjøre det
342 samme for alle versjoner og varianter av de forskjellige
343 tjenestegrensesnittene ville det blitt veldig tidkrevende og
346 <p
>For deg som arkivar er digitalisering og systemer som skal virke
347 sammen en del av den nye hverdagen. Du har kanskje blitt skånet for
348 det ved å kjøpe svarte bokser, men du risikerer at du gjør deg selv en
349 bjørnetjeneste. Det kan oppleves som kjedelig å fortelle kolleger at
350 du skal sette deg inn i et tjenestegrensesnitt, men dette er faktisk
351 veldig spennende. Tjenestegrensesnittet er på en måte blitt levende og
352 det er spesielt et begrep du bør merke deg: OData. Å trekke inn deler
353 av OData-standarden som en måte å filtrere entitetsøk i et arkivsystem
354 var et nyttig trekk i prosjektet. Følgende eksempel er en
355 OData-spørring det går an å sende inn til en standardisert
356 arkivkjerne:
</p
>
358 <p
><blockquote
>
359 .../sakarkiv/journalpost?filter=contains(tittel,
'nabovarsel
')
360 </blockquote
></p
>
362 <p
>Spørringen over vil hente en liste av alle dine journalposter der
363 tittelen til journalposten inneholder ordet
'nabovarsel
'. Alle
364 leverandører som implementerer tjenestegrensesnittet vil måtte tilby
365 dette. Det betyr at hvis du lærer dette språket for et system, vil det
366 være gjeldende for alle. Dette er egentlig en ny måte å søke i
367 arkivdatabasen på og vil være svært nyttig, for eksempel kan søk i
368 tjenestegrensesnittet antagelig brukes til å hente ut offentlig
369 postjournal. I arkivverden pleier vi å like teknologier som er
370 menneskelesbart, da vet vi det er enkelt og nyttig! OData er også
371 viktig fordi det kan bli en ny måte å svare innsynsforespørsler på i
372 tråd med offentlighetsloven §
9, der retten til å kreve innsyn i
373 sammenstilling fra databaser er nedfelt. I dag ser vi
374 forvaltningsorganer som avviser slike krav fordi det «ikke kan gjøres
375 med enkle framgangsmåter». Bruken av OData i tjenestegrensesnittet,
376 sammen med maskinlesbar markeringsformater kan være et viktig bidrag
377 til å åpne arkivene i tråd med prinsippene om en åpen og transparent
378 forvaltning.
</p
>
380 <p
>Standardisering er viktig fordi det
<em
>kan
</em
> sikre samvirke.
381 Men den effekten kommer kun hvis standardiseringen sikrer at alle
382 forstår standarden på samme måte, dvs. at den er entydig og klar. En
383 god måte å sikre en entydig og klar spesifikasjon er ved å kreve at
384 det finnes minst to ulike implementasjoner som følger spesifikasjonen
385 og som kan snakke sammen, det vil si at de snakker samme språk, slik
386 IETF krever for alle sine standarder, før spesifikasjonen anses å være
387 ferdig. Tilbakemelding fra miljøet forteller at både leverandører og
388 kunder har et avslappet forhold til Noark
5 Tjenestegrensesnitt og det
389 er så langt kun Evry som har visst offentlig at de har en
390 implementasjon av tjenestegrensesnittet. Evry, HK Data og Fredrikstad
391 kommune er igang med et pilotprosjekt på Noark
5
392 Tjenestegrensesnitt. For å redusere kostnadene for samvirkende
393 datasystemer betraktelig, er det veldig viktig at vi kommer i en
394 situasjon der alle leverandører har sine egne implementasjoner av
395 tjenestegrensesnittet, og at disse oppfører seg likt og i tråd med det
396 som er beskrevet i spesifikasjonen.
</p
>
398 <p
>Det er her fri programvare spiller en viktig rolle. Med en uklar
399 standard blir det som en polsk riksdag, der ingenting fungerer. Nikita
400 er en fri programvareimplementasjon av tjenestegrensesnitt og kan
401 fungere som teknisk referanse slik at leverandører enklere kan se og
402 forstå hvordan standarden skal tolkes. Vi har i Nikitaprosjektet
403 erfart å ende opp med vidt forskjellige tolkninger når
404 prosjektmedlemmene leser spesifikasjonsteksten, en effekt av en uklar
405 spesifikasjon. Men Nikitaprosjektet har også utviklet et test-program
406 som sjekker om et tjenestegrensesnitt er i samsvar med standarden, og
407 prosjektet bruker det hele tiden for å sikre at endringer og
408 forbedringer fungerer. Egenerklæringsskjemaenes dager kan være talte!
409 Snart vil du selv kunne teste hver oppdatering av arkivsystemet med en
410 uavhengig sjekk.
</p
>
412 <p
>Fri programvare representerer en demokratisering av kunnskap der
413 tolkning- og innlåsingsmakt flyttes fra leverandør til allmenheten.
414 Med fri programvare har du en litt annerledes verdikjede, der selve
415 produktet ikke holdes hemmelig for å tjene penger, slik en gjør med
416 ufri programvare og skytjenester som ikke bruker fri programvare, men
417 du kan tjene penger på andre deler av verdikjeden. Med fri programvare
418 kan samfunnet betale for å videreutvikle nyttig
419 fellesfunksjonalitet.
</p
>
421 <p
>Nikita er en fri programvareimplementasjon av tjenestegrensesnittet og
422 kan fungere som en referanseimplementasjon dersom det er ønskelig.
423 Alle har lik tilgang til koden og det koster ingenting å ta den i bruk
424 og utforske det. Nikitaprosjektet ønsker tjenestegrensesnittet
425 velkommen og stiller veldig gjerne opp i diskusjoner om tolkning av
426 tjenestegrensesnittet. Nikita er bygget på moderne
427 programmeringsrammeverk og utviklet i full åpenhet. Men Nikita er ikke
428 noe du kan kjøpe. Nikita er først og fremst et verktøy for forsking og
429 utvikling laget for å fremme forskning på arkivfeltet. Systemer som
430 virker sammen har alltid vært hovedfokus og vil være det fremover.
431 Det brukes som undervisningsverktøy der studentene ved OsloMet lærer
432 om administrativt oppsett, saksbehandling, uttrekk og samvirkende
433 datasystemer. Det brukes også som forskningsobjekt der vi ser på
434 import av dokumentsamlinger, bruk av blokkjede og andre nyskapende
435 måter å tenke arkiv på. Det er dog helt greit om andre tar Nikita og
436 pakker det for å selge det som produkt. Forvaltningsorganer med
437 sterke drift- og utviklingsmiljøer kan også se på Nikita og utforske
438 hva som er mulig. Dette kan de gjøre uten å måtte betale for
439 bruksrettigheter eller tilgang til konsulenter. Men arkivering blir
440 ikke gratis på grunn av Nikita. Det trengs fortsatt folk med
441 kompetanse og tid til å ta i bruk Nikita.
</p
>
443 <p
>Nikita har nylig kommet med en ny utgave, den sjette i rekken.
444 Systemet er ikke ferdig, mest på grunn av at API-spesifikasjonen for
445 Noark
5 Tjenestegrensesnitt ikke er ferdig, men allerede i dag kan en
446 bruke Nikita som arkiv. Vi har laget eksempelsystem for å importere
447 data fra deponi-XML og slik gjøre eksisterende arkivdata tilgjengelig
448 via et API. Vi har også laget en testklient som importerer epost inn
449 i arkivet med vedlegg der epostenes trådinformasjon brukes til å legge
450 eposttråder i samme arkivmappe, og en annen testklient som henter
451 epost ut av en arkivmappe på mbox-format slik at en vanlig epostklient
452 kan brukes til å lese igjennom og svare på epostene i en
453 arkivmappe. De som vil ta en titt på Nikita kan besøke
454 <a href=
"https://nikita.oslomet.no
">https://nikita.oslomet.no
</a
> og
455 logge inn med brukernavn «admin@example.com» og passord «password».
456 Dette gir tilgang til det forenklede brukergrensesnittet som brukes
457 til undervisning. De som heller vil ta en titt under panseret kan
459 <a href=
"https://nikita.oslomet.no/browse.html
">https://nikita.oslomet.no/browse.html
</a
>
460 og der se hvordan API-et fungerer mer i detalj. Innloggingsdetaljer
461 her er det samme som for brukergrensesnittet.
</p
>
463 <p
>Fremover er fokuset på forbedring av spesifikasjonen Noark
5
464 Tjenestegrensesnitt. De som skrev tjenestegrensesnittet gjorde et
465 interessant og framtidsrettet grep, de skilte sak fra arkiv.
466 Tjenestegrensesnittet består av flere
"pakker
", der noen er
467 grunnleggende mens andre bygger på de grunnleggende pakkene. Pakkene
468 som er beskrevet så langt heter «arkivstruktur», «sakarkiv»,
469 «administrasjon», «loggogsporing» og «moeter» (dessverre
470 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/pull/
120">planlagt
471 fjernet
</a
> i første utgave). Etter hvert håper vi å utforske
472 prosses- og metadatabeskrivelser til flere fagområder og bidra til at
473 tjenestegrensesnittet kan legge til flere pakker som «byggarkiv»,
474 «barnevern», «personal», «barnehage», der arkivfaglig metadata- og
475 dokumentasjonsbehov er kartlagt og standardisert.
</p
>
477 <p
>Nikita utvikles av en liten prosjektgruppe, og vi er alltid
478 interessert å bli flere. Hvis en åpen, fri og standardisert tilnærming
479 til arkivering høres interessant ut, bli med oss på veien videre. Vi
480 er tilstede på IRC-kanalen #nikita hos FreeNode (tilgjengelig via
482 <a href=
"https://webchat.freenode.net?channels=#nikita
">https://webchat.freenode.net?channels=#nikita
</a
>),
483 og har en e-postliste nikita-noark@nuug.no hos NUUG (tilgjengelig for
484 påmelding og arkiv på
485 <a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">https://lists.nuug.no/mailman/listinfo/nikita-noark
</a
>)
486 der en kan følge med eller være med oss på den spennende veien videre.
487 Spesifikasjonen for Noark
5 Tjenestegrensesnitt vedlikeholdes på
489 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
</a
>.
</p
>
491 <p
>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
492 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
494 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
499 <title>Official MIME type
"text/vnd.sosi
" for SOSI map data
</title>
500 <link>http://people.skolelinux.org/pere/blog/Official_MIME_type__text_vnd_sosi__for_SOSI_map_data.html
</link>
501 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Official_MIME_type__text_vnd_sosi__for_SOSI_map_data.html
</guid>
502 <pubDate>Tue,
4 Jun
2019 09:
20:
00 +
0200</pubDate>
503 <description><p
>Just
15 days ago,
504 <ahref=
"http://people.skolelinux.org/pere/blog/MIME_type__text_vnd_sosi__for_SOSI_map_data.html
">I
505 mentioned
</a
> my submission to IANA to register an official MIME type
506 for the SOSI vector map format. This morning, just an hour ago, I was
508 <a href=
"https://www.iana.org/assignments/media-types/text/vnd.sosi
">the
509 MIME type
"text/vnd.sosi
"</a
> is registered for this format. In
510 addition to this registration, my
511 <a href=
"https://github.com/file/file/blob/master/magic/Magdir/sosi
">file(
1)
512 patch for a pattern matching rule for SOSI files
</a
> has been accepted
513 into the official source of that program (pending a new release), and
514 I
've been told by the team behind
515 <a href=
"https://www.nationalarchives.gov.uk/PRONOM/
">PRONOM
</a
> that
516 the SOSI format will be included in the next release of PRONOM, which
517 they plan to release this summer around July.
</p
>
519 <p
>I am very happy to see all of this fall into place, for use by
520 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
">the
521 Noark
5 Tjenestegrensesnitt
</a
> implementations.
</p
>
523 <p
>As usual, if you use Bitcoin and want to show your support of my
524 activities, please send Bitcoin donations to my address
525 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
530 <title>Nikita version
0.4 released - free software archive API server
</title>
531 <link>http://people.skolelinux.org/pere/blog/Nikita_version_0_4_released___free_software_archive_API_server.html
</link>
532 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Nikita_version_0_4_released___free_software_archive_API_server.html
</guid>
533 <pubDate>Wed,
22 May
2019 11:
30:
00 +
0200</pubDate>
534 <description><p
>This morning, a new release of
535 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">Nikita
536 Noark
5 core project
</a
> was
537 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/
2019-May/
000468.html
">announced
538 on the project mailing list
</a
>. The Nikita free software solution is
539 an implementation of the Norwegian archive standard Noark
5 used by
540 government offices in Norway. These were the changes in version
0.4
541 since version
0.3, see the email link above for links to a demo site:
</p
>
545 <li
>Roll out OData handling to all endpoints where applicable
</li
>
546 <li
>Changed the relation key for
"ny-journalpost
" to the official one.
</li
>
547 <li
>Better link generation on outgoing links.
</li
>
548 <li
>Tidy up code and make code and approaches more consistent throughout
549 the codebase
</li
>
550 <li
>Update rels to be in compliance with updated version in the
551 interface standard
</li
>
552 <li
>Avoid printing links on empty objects as they can
't have links
</li
>
553 <li
>Small bug fixes and improvements
</li
>
554 <li
>Start moving generation of outgoing links to @Service layer so access
555 control can be used when generating links
</li
>
556 <li
>Log exception that was being swallowed so it
's traceable
</li
>
557 <li
>Fix name mapping problem
</li
>
558 <li
>Update templated printing so templated should only be printed if it
559 is set true. Requires more work to roll out across entire
560 application.
</li
>
561 <li
>Remove Record-
>DocumentObject as per domain model of n5v4
</li
>
562 <li
>Add ability to delete lists filtered with OData
</li
>
563 <li
>Return NO_CONTENT (
204) on delete as per interface standard
</li
>
564 <li
>Introduce support for ConstraintViolationException exception
</li
>
565 <li
>Make Service classes extend NoarkService
</li
>
566 <li
>Make code base respect X-Forwarded-Host, X-Forwarded-Proto and
567 X-Forwarded-Port
</li
>
568 <li
>Update CorrespondencePart* code to be more in line with Single
569 Responsibility Principle
</li
>
570 <li
>Make package name follow directory structure
</li
>
571 <li
>Make sure Document number starts at
1, not
0</li
>
572 <li
>Fix isues discovered by FindBugs
</li
>
573 <li
>Update from Date to ZonedDateTime
</li
>
574 <li
>Fix wrong tablename
</li
>
575 <li
>Introduce Service layer tests
</li
>
576 <li
>Improvements to CorrespondencePart
</li
>
577 <li
>Continued work on Class / Classificationsystem
</li
>
578 <li
>Fix feature where authors were stored as storageLocations
</li
>
579 <li
>Update HQL builder for OData
</li
>
580 <li
>Update OData search capability from webpage
</li
>
584 <p
>If free and open standardized archiving API sound interesting to
585 you, please contact us on IRC
586 (
<a href=
"irc://irc.freenode.net/%
23nikita
">#nikita on
587 irc.freenode.net
</a
>) or email
588 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">nikita-noark
589 mailing list
</a
>).
</p
>
591 <p
>As usual, if you use Bitcoin and want to show your support of my
592 activities, please send Bitcoin donations to my address
593 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
598 <title>MIME type
"text/vnd.sosi
" for SOSI map data
</title>
599 <link>http://people.skolelinux.org/pere/blog/MIME_type__text_vnd_sosi__for_SOSI_map_data.html
</link>
600 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/MIME_type__text_vnd_sosi__for_SOSI_map_data.html
</guid>
601 <pubDate>Mon,
20 May
2019 08:
35:
00 +
0200</pubDate>
602 <description><p
>As part of my involvement in the work to
603 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard
">standardise
604 a REST based API for Noark
5</a
>, the Norwegian archiving standard, I
605 spent some time the last few months to try to register a
606 <a href=
"https://www.iana.org/assignments/media-types/
">MIME type
</a
>
607 and
<a href=
"https://www.nationalarchives.gov.uk/PRONOM/
">PRONOM
608 code
</a
> for the SOSI file format. The background is that there is a
609 set of formats approved for long term storage and archiving in Norway,
610 and among these formats, SOSI is the only format missing a MIME type
611 and PRONOM code.
</p
>
613 <p
>What is SOSI, you might ask? To quote Wikipedia: SOSI is short for
614 Samordnet Opplegg for Stedfestet Informasjon (literally
"Coordinated
615 Approach for Spatial Information
", but more commonly expanded in
616 English to Systematic Organization of Spatial Information). It is a
617 text based file format for geo-spatial vector information used in
618 Norway. Information about the SOSI format can be found in English
619 from
<a href=
"https://en.wikipedia.org/wiki/SOSI
">Wikipedia
</a
>. The
620 specification is available in Norwegian from
621 <a href=
"https://www.kartverket.no/geodataarbeid/Standarder/SOSI/
">the
622 Norwegian mapping authority
</a
>. The SOSI standard, which originated
623 in the beginning of nineteen eighties, was the inspiration and formed the
624 basis for the XML based
625 <a href=
"https://en.wikipedia.org/wiki/Geography_Markup_Language
">Geography
626 Markup Language
</a
>.
</p
>
628 <p
>I have so far written
629 <a href=
"https://github.com/file/file/pull/
67">a pattern matching
630 rule
</a
> for the file(
1) unix tool to recognize SOSI files, submitted
631 a request to the PRONOM project to have a PRONOM ID assigned to the
632 format (reference TNA1555078202S60), and today send a request to IANA
633 to register the
"text/vnd.sosi
" MIME type for this format (referanse
634 <a href=
"https://tools.iana.org/public-view/viewticket/
1143144">IANA
635 #
1143144</a
>). If all goes well, in a few months, anyone implementing
636 the Noark
5 Tjenestegrensesnitt API spesification should be able to
637 use an official MIME type and PRONOM code for SOSI files. In
638 addition, anyone using SOSI files on Linux should be able to
639 automatically recognise the format and web sites handing out SOSI
640 files can begin providing a more specific MIME type. So far, SOSI
641 files has been handed out from web sites using the
642 "application/octet-stream
" MIME type, which is just a nice way of
643 stating
"I do not know
". Soon, we will know. :)
</p
>
645 <p
>As usual, if you use Bitcoin and want to show your support of my
646 activities, please send Bitcoin donations to my address
647 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
652 <title>PlantUML for text based UML diagram modelling - nice free software
</title>
653 <link>http://people.skolelinux.org/pere/blog/PlantUML_for_text_based_UML_diagram_modelling___nice_free_software.html
</link>
654 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/PlantUML_for_text_based_UML_diagram_modelling___nice_free_software.html
</guid>
655 <pubDate>Mon,
25 Mar
2019 09:
35:
00 +
0100</pubDate>
656 <description><p
>As part of my involvement with the
657 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">Nikita
658 Noark
5 core project
</a
>, I have been proposing improvements to the
659 API specification created by
<a href=
"https://www.arkivverket.no/
">The
660 National Archives of Norway
</a
> and helped migrating the text from a
661 version control system unfriendly binary format (docx) to Markdown in
662 git. Combined with the migration to a public git repository (on
663 github), this has made it possible for anyone to suggest improvement
664 to the text.
</p
>
666 <p
>The specification is filled with UML diagrams. I believe the
667 original diagrams were modelled using Sparx Systems Enterprise
668 Architect, and exported as EMF files for import into docx. This
669 approach make it very hard to track changes using a version control
670 system. To improve the situation I have been looking for a good text
671 based UML format with associated command line free software tools on
672 Linux and Windows, to allow anyone to send in corrections to the UML
673 diagrams in the specification. The tool must be text based to work
674 with git, and command line to be able to run it automatically to
675 generate the diagram images. Finally, it must be free software to
676 allow anyone, even those that can not accept a non-free software
677 license, to contribute.
</p
>
679 <p
>I did not know much about free software UML modelling tools when I
680 started. I have used dia and inkscape for simple modelling in the
681 past, but neither are available on Windows, as far as I could tell. I
683 <a href=
"https://modeling-languages.com/text-uml-tools-complete-list/
">list
684 of text mode uml tools
</a
>, and tested out a few of the tools listed
685 there.
<a href=
"http://plantuml.com/
">The PlantUML tool
</a
> seemed
686 most promising. After verifying that the packages
687 <a href=
"https://tracker.debian.org/pkg/plantuml
">is available in
688 Debian
</a
> and found
<a href=
"https://github.com/plantuml/plantuml
">its
689 Java source
</a
> under a GPL license on github, I set out to test if it
690 could represent the diagrams we needed, ie the ones currently in
691 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
">the
692 Noark
5 Tjenestegrensesnitt specification
</a
>. I am happy to report
693 that it could represent them, even thought it have a few warts here
696 <p
>After a few days of modelling I completed the task this weekend. A
697 temporary link to the complete set of diagrams (original and from
698 PlantUML) is available in
699 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/
76">the
700 github issue discussing the need for a text based UML format
</a
>, but
701 please note I lack a sensible tool to convert EMF files to PNGs, so
702 the
"original
" rendering is not as good as the original was in the
703 publised PDF.
</p
>
705 <p
>Here is an example UML diagram, showing the core classes for
706 keeping metadata about archived documents:
</p
>
710 skinparam classAttributeIconSize
0
712 !include media/uml-class-arkivskaper.iuml
713 !include media/uml-class-arkiv.iuml
714 !include media/uml-class-klassifikasjonssystem.iuml
715 !include media/uml-class-klasse.iuml
716 !include media/uml-class-arkivdel.iuml
717 !include media/uml-class-mappe.iuml
718 !include media/uml-class-merknad.iuml
719 !include media/uml-class-registrering.iuml
720 !include media/uml-class-basisregistrering.iuml
721 !include media/uml-class-dokumentbeskrivelse.iuml
722 !include media/uml-class-dokumentobjekt.iuml
723 !include media/uml-class-konvertering.iuml
724 !include media/uml-datatype-elektronisksignatur.iuml
726 Arkivstruktur.Arkivskaper
"+arkivskaper
1..*
" <-o
"+arkiv
0..*
" Arkivstruktur.Arkiv
727 Arkivstruktur.Arkiv o--
> "+underarkiv
0..*
" Arkivstruktur.Arkiv
728 Arkivstruktur.Arkiv
"+arkiv
1" o--
> "+arkivdel
0..*
" Arkivstruktur.Arkivdel
729 Arkivstruktur.Klassifikasjonssystem
"+klassifikasjonssystem [
0.
.1]
" <--o
"+arkivdel
1..*
" Arkivstruktur.Arkivdel
730 Arkivstruktur.Klassifikasjonssystem
"+klassifikasjonssystem [
0.
.1]
" o--
> "+klasse
0..*
" Arkivstruktur.Klasse
731 Arkivstruktur.Arkivdel
"+arkivdel
0.
.1" o--
> "+mappe
0..*
" Arkivstruktur.Mappe
732 Arkivstruktur.Arkivdel
"+arkivdel
0.
.1" o--
> "+registrering
0..*
" Arkivstruktur.Registrering
733 Arkivstruktur.Klasse
"+klasse
0.
.1" o--
> "+mappe
0..*
" Arkivstruktur.Mappe
734 Arkivstruktur.Klasse
"+klasse
0.
.1" o--
> "+registrering
0..*
" Arkivstruktur.Registrering
735 Arkivstruktur.Mappe --
> "+undermappe
0..*
" Arkivstruktur.Mappe
736 Arkivstruktur.Mappe
"+mappe
0.
.1" o--
> "+registrering
0..*
" Arkivstruktur.Registrering
737 Arkivstruktur.Merknad
"+merknad
0..*
" <--* Arkivstruktur.Mappe
738 Arkivstruktur.Merknad
"+merknad
0..*
" <--* Arkivstruktur.Dokumentbeskrivelse
739 Arkivstruktur.Basisregistrering -|
> Arkivstruktur.Registrering
740 Arkivstruktur.Merknad
"+merknad
0..*
" <--* Arkivstruktur.Basisregistrering
741 Arkivstruktur.Registrering
"+registrering
1..*
" o--
> "+dokumentbeskrivelse
0..*
" Arkivstruktur.Dokumentbeskrivelse
742 Arkivstruktur.Dokumentbeskrivelse
"+dokumentbeskrivelse
1" o-
> "+dokumentobjekt
0..*
" Arkivstruktur.Dokumentobjekt
743 Arkivstruktur.Dokumentobjekt *-
> "+konvertering
0..*
" Arkivstruktur.Konvertering
744 Arkivstruktur.ElektroniskSignatur -[hidden]-
> Arkivstruktur.Dokumentobjekt
748 <p
><a href=
"http://plantuml.com/class-diagram
">The format
</a
> is quite
749 compact, with little redundant information. The text expresses
750 entities and relations, and there is little layout related fluff. One
751 can reuse content by using include files, allowing for consistent
752 naming across several diagrams. The include files can be standalone
753 PlantUML too. Here is the content of
754 <tt
>media/uml-class-arkivskaper.iuml
</tt
>:
</p
>
758 class Arkivstruktur.Arkivskaper
<Arkivenhet
> {
759 +arkivskaperID : string
760 +arkivskaperNavn : string
761 +beskrivelse : string [
0.
.1]
766 <p
>This is what the complete diagram for the PlantUML notation above
769 <p
><img width=
"80%
" src=
"http://people.skolelinux.org/pere/blog/images/
2019-
03-
25-noark5-plantuml-diagrameksempel.png
"></p
>
771 <p
>A cool feature of PlantUML is that the generated PNG files include
772 the entire original source diagram as text. The source (with include
773 statements expanded) can be extracted using for example
774 <tt
>exiftool
</tt
>. Another cool feature is that parts of the entities
775 can be hidden after inclusion. This allow to use include files with
776 all attributes listed, even for UML diagrams that should not list any
777 attributes.
</p
>
779 <p
>The diagram also show some of the warts. Some times the layout
780 engine place text labels on top of each other, and some times it place
781 the class boxes too close to each other, not leaving room for the
782 labels on the relationship arrows. The former can be worked around by
783 placing extra newlines in the labes (ie
"\n
"). I did not do it here
784 to be able to demonstrate the issue. I have not found a good way
785 around the latter, so I normally try to reduce the problem by changing
786 from vertical to horizontal links to improve the layout.
</p
>
788 <p
>All in all, I am quite happy with PlantUML, and very impressed with
789 how quickly its lead developer responds to questions. So far I got an
790 answer to my questions in a few hours when I send an email. I
791 definitely recommend looking at PlantUML if you need to make UML
792 diagrams. Note, PlantUML can draw a lot more than class relations.
793 Check out the documention for a complete list. :)
</p
>
795 <p
>As usual, if you use Bitcoin and want to show your support of my
796 activities, please send Bitcoin donations to my address
797 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
802 <title>Release
0.3 of free software archive API system Nikita announced
</title>
803 <link>http://people.skolelinux.org/pere/blog/Release_0_3_of_free_software_archive_API_system_Nikita_announced.html
</link>
804 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Release_0_3_of_free_software_archive_API_system_Nikita_announced.html
</guid>
805 <pubDate>Sun,
24 Mar
2019 14:
30:
00 +
0100</pubDate>
806 <description><p
>Yesterday, a new release of
807 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">Nikita
808 Noark
5 core project
</a
> was
809 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/
2019-March/
000451.html
">announced
810 on the project mailing list
</a
>. The free software solution is an
811 implementation of the Norwegian archive standard Noark
5 used by
812 government offices in Norway. These were the changes in version
0.3
813 since version
0.2.1 (from NEWS.md):
</p
>
816 <li
>Improved ClassificationSystem and Class behaviour.
</li
>
817 <li
>Tidied up known inconsistencies between domain model and hateaos links.
</li
>
818 <li
>Added experimental code for blockchain integration.
</li
>
819 <li
>Make token expiry time configurable at upstart from properties file.
</li
>
820 <li
>Continued work on OData search syntax.
</li
>
821 <li
>Started work on pagination for entities, partly implemented for Saksmappe.
</li
>
822 <li
>Finalise ClassifiedCode Metadata entity.
</li
>
823 <li
>Implement mechanism to check if authentication token is still
824 valid. This allow the GUI to return a more sensible message to the
825 user if the token is expired.
</li
>
826 <li
>Reintroduce browse.html page to allow user to browse JSON API using
827 hateoas links.
</li
>
828 <li
>Fix bug in handling file/mappe sequence number. Year change was
829 not properly handled.
</li
>
830 <li
>Update application yml files to be in sync with current development.
</li
>
831 <li
>Stop
'converting
' everything to PDF using libreoffice. Only
832 convert the file formats doc, ppt, xls, docx, pptx, xlsx, odt, odp
834 <li
>Continued code style fixing, making code more readable.
</li
>
835 <li
>Minor bug fixes.
</li
>
839 <p
>If free and open standardized archiving API sound interesting to
840 you, please contact us on IRC
841 (
<a href=
"irc://irc.freenode.net/%
23nikita
">#nikita on
842 irc.freenode.net
</a
>) or email
843 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">nikita-noark
844 mailing list
</a
>).
</p
>
846 <p
>As usual, if you use Bitcoin and want to show your support of my
847 activities, please send Bitcoin donations to my address
848 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
853 <title>Åpen og gjennomsiktig vedlikehold av spesifikasjonen for Noark
5 Tjenestegrensesnitt
</title>
854 <link>http://people.skolelinux.org/pere/blog/_pen_og_gjennomsiktig_vedlikehold_av_spesifikasjonen_for_Noark_5_Tjenestegrensesnitt.html
</link>
855 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/_pen_og_gjennomsiktig_vedlikehold_av_spesifikasjonen_for_Noark_5_Tjenestegrensesnitt.html
</guid>
856 <pubDate>Mon,
11 Mar
2019 16:
00:
00 +
0100</pubDate>
857 <description><p
>Et virksomhetsarkiv for meg, er et arbeidsverktøy der en enkelt kan
858 finne informasjonen en trenger når en trenger det, og der
859 virksomhetens samlede kunnskap er tilgjengelig. Det må være greit å
860 finne frem i, litt som en bibliotek. Men der et bibliotek gjerne tar
861 vare på offentliggjort informasjon som er tilgjengelig flere steder,
862 tar et arkiv vare på virksomhetsintern og til tider personlig
863 informasjon som ofte kun er tilgjengelig fra et sted.
</p
>
865 <p
>Jeg mistenker den eneste måten å sikre at arkivet inneholder den
866 samlede kunnskapen i en virksomhet, er å bruke det som virksomhetens
867 kunnskapslager. Det innebærer å automatisk kopiere (brev, epost,
868 SMS-er etc) inn i arkivet når de sendes og mottas, og der filtrere
869 vekk det en ikke vil ta vare på, og legge på metadata om det som er
870 samlet inn for enkel gjenfinning. En slik bruk av arkivet innebærer at
871 arkivet er en del av daglig virke, ikke at det er siste hvilested for
872 informasjon ingen lenger har daglig bruk for. For å kunne være en del
873 av det daglige virket må arkivet enkelt kunne integreres med andre
874 systemer. I disse dager betyr det å tilby arkivet som en
875 nett-tjeneste til hele virksomheten, tilgjengelig for både mennesker
876 og datamaskiner. Det betyr i tur å både tilby nettsider og et
877 maskinlesbart grensesnitt.
</p
>
879 <p
>For noen år siden erkjente visjonære arkivarer fordelene med et
880 standardisert maskinlesbart grensesnitt til organisasjonens arkiv. De
881 gikk igang med å lage noe de kalte
882 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
">Noark
883 5 Tjenestegrensesnitt
</a
>. Gjort riktig, så åpner slike maskinlesbare
884 grensesnitt for samvirke på tvers av uavhengige programvaresystemer.
885 Gjort feil, vil det blokkere for samvirke og bidra til
886 leverandørinnlåsing. For å gjøre det riktig så må grensesnittet være
887 klart og entydig beskrevet i en spesifikasjon som gjør at
888 spesifikasjonen tolkes på samme måte uavhengig av hvem som leser den,
889 og uavhengig av hvem som tar den i bruk.
</p
>
891 <p
>For å oppnå klare og entydige beskrivelser i en spesifikasjon, som
892 trengs for å kunne få en fri og åpen standard (se
893 <a href=
"http://people.skolelinux.org/pere/blog/Fri_og__pen_standard__slik_Digistan_ser_det.html
">Digistan-definisjon
</a
>),
894 så trengs det en åpen og gjennomsiktig inngangsport med lav terskel,
895 der de som forsøker å ta den i bruk enkelt kan få inn korreksjoner,
896 etterlyse klargjøringer og rapportere uklarheter i spesifikasjonen.
897 En trenger også automatiserte datasystemer som måler og sjekker at et
898 gitt grensesnitt fungerer i tråd med spesifikasjonen.
</p
>
900 <p
>For Noark
5 Tjenestegrensesnittet er det nå etablert en slik åpen
901 og gjennomsiktig inngangsport på prosjekttjenesten github. Denne
902 inngangsporten består først og fremst av en åpen portal som lar enhver
903 se hva som er gjort av endringer i spesifikasjonsteksten over tid, men
904 det hører også med et åpent
&quot;diskusjonsforum
&quot; der en kan
905 komme med endringsforslag og forespørsler om klargjøringer. Alle
906 registrerte brukere på github kan bidra med innspill til disse
907 henvendelsene.
</p
>
909 <p
>I samarbeide med Arkivverket har jeg fått opprettet et git-depot
910 med spesifikasjonsteksten for tjenestegrensesnittet, der det er lagt
911 inn historikk for endringer i teksten de siste årene, samt lagt inn
912 endringsforslag og forespørsler om klargjøring av teksten. Bakgrunnen
913 for at jeg bidro med dette er at jeg er involvert i
914 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core
">Nikita-prosjektet
</a
>,
915 som lager en fri programvare-utgave av Noark
5 Tjenestegrensesnitt.
916 Det er først når en forsøker å lage noe i tråd med en spesifikasjon at
917 en oppdager hvor mange detaljer som må beskrives i spesifikasjonen for
918 å sikre samhandling.
</p
>
920 <p
>Spesifikasjonen vedlikeholdes i et rent tekstformat, for å ha et
921 format egnet for versjonskontroll via versjontrollsystemet git. Dette
922 gjør det både enkelt å se konkret hvilke endringer som er gjort når,
923 samt gjør det praktisk mulig for enhver med github-konto å sende inn
924 endringsforslag med formuleringer til spesifikasjonsteksten. Dette
925 tekstformatet vises frem som nettsider på github, slik at en ikke
926 trenger spesielle verktøy for å se på siste utgave av
927 spesifikasjonen.
</p
>
929 <p
>Fra dette rene tekstformatet kan det så avledes ulike formater, som
930 HTML for websider, PDF for utskrift på papir og ePub for lesing med
931 ebokleser. Avlednings-systemet (byggesystemet) bruker i dag
932 verktøyene pandoc, latex, docbook-xsl og GNU make til
933 transformasjonen. Tekstformatet som brukes dag er
934 <a href=
"https://www.markdownguide.org/
">Markdown
</a
>, men det vurderes
936 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/
9">endre
937 til formatet RST
</a
> i fremtiden for bedre styring av utseende på
938 PDF-utgaven.
</p
>
940 <p
>Versjonskontrollsystemet git ble valgt da det er både fleksibelt,
941 avansert og enkelt å ta i bruk. Github ble valgt (foran f.eks. Gitlab
942 som vi bruker i Nikita), da Arkivverket allerede hadde tatt i bruk
943 Github i andre sammenhenger.
</p
>
945 <p
>Enkle endringer i teksten kan gjøres av priviligerte brukere
946 direkte i nettsidene til Github, ved å finne aktuell fil som skal
947 endres (f.eks. kapitler/
03-konformitet.md), klikke på den lille
948 bokstaven i høyre hjørne over teksten. Det kommer opp en nettside der
949 en kan endre teksten slik en ønsker. Når en er fornøyd med endringen
950 så må endringen
&quot;sjekkes inn
&quot; i historikken. Det gjøres ved
951 å gi en kort beskrivelse av endringen (beskriv helst hvorfor endringen
952 trengs, ikke hva som er endret), under overskriften
&quot;Commit
953 changes
&quot;. En kan og bør legge inn en lengre forklaring i det
954 større skrivefeltet, før en velger om endringen skal sendes direkte
955 til
'master
'-grenen (dvs. autorativ utgave av spesifikasjonen) eller
956 om en skal lage en ny gren for denne endringen og opprette en
957 endringsforespørsel (aka
&quot;Pull Request
&quot;/PR). Når alt dette
958 er gjort kan en velge
&quot;Commit changes
&quot; for å sende inn
959 endringen. Hvis den er lagt inn i
&quot;master
&quot;-grenen så er den
960 en offisiell del av spesifikasjonen med en gang. Hvis den derimot er
961 en endringsforespørsel, så legges den inn i
962 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/pulls
">listen
963 over forslag til endringer
</a
> som venter på korrekturlesing og
964 godkjenning.
</p
>
966 <p
>Større endringer (for eksempel samtidig endringer i flere filer)
967 gjøres enklest ved å hente ned en kopi av git-depoet lokalt og gjøre
968 endringene der før endringsforslaget sendes inn. Denne prosessen er
969 godt beskrivet i dokumentasjon fra github. Git-prosjektet som skal
970 &quot;klones
&quot; er
971 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
</a
>.
</p
>
973 <p
>For å registrere nye utfordringer (issues) eller kommentere på
974 eksisterende utfordringer benyttes nettsiden
975 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues
">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues
</a
>.
976 I skrivende stund er det
48 åpne og
11 avsluttede utfordringer. Et
977 forslag til hva som bør være med når en beskriver en utfordring er
978 tilgjengelig som utfordring
979 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/
14">#
14</a
>.
</p
>
981 <p
>For å bygge en PDF-utgave av spesifikasjonen så bruker jeg i dag en
982 Debian GNU/Linux-maskin med en rekke programpakker installert. Når
983 dette er på plass, så holder det å kjøre kommandoen
'make pdf html
' på
984 kommandolinjen, vente ca.
20 sekunder, før spesifikasjon.pdf og
985 spesifikasjon.html ligger klar på disken. Verktøyene for bygging av
986 PDF, HTML og ePub-utgave er også tilgjengelig på Windows og
989 <p
>Github bidrar med rammeverket. Men for at åpent vedlikehold av
990 spesifikasjonen skal fungere, så trengs det folk som bidrar med sin
991 tid og kunnskap. Arkivverket har sagt de skal bidra med innspill og
992 godkjenne forslag til endringer, men det blir størst suksess hvis alle
993 som bruker og lager systemer basert på Noark
5 Tjenestegrensesnitt
994 bidrar med sin kunnskap og kommer med forslag til forebedringer. Jeg
995 stiller. Blir du med?
</p
>
997 <p
>Det er viktig å legge til rette for åpen diskusjon blant alle
998 interesserte, som ikke krever at en må godta lange kontrakter med
999 vilkår for deltagelse. Inntil Arkivverket dukker opp på IRC har vi
1000 laget en IRC-kanal der interesserte enkelt kan orientere seg og
1001 diskutere tjenestegrensesnittet. Alle er velkommen til å ta turen
1003 <a href=
"https://webchat.freenode.net/?channels=nikita
">#nikita
</a
>
1004 (f.eks. via irc.freenode.net) for å møte likesinnede.
</p
>
1006 <p
>Det holder dog ikke å ha en god spesifikasjon, hvis ikke de som tar
1007 den i bruk gjør en like god jobb. For å automatisk teste om et konkret
1008 tjenestegrensesnitt følger (min) forståelse av
1009 spesifikasjonsdokumentet, har jeg skrevet et program som kobler seg
1010 opp til et Noark
5v4 REST-tjeneste og tester alt den finner for å se
1011 om det er i henhold til min tolkning av spesifikasjonen. Dette
1012 verktøyet er tilgjengelig fra
1013 <a href=
"https://github.com/petterreinholdtsen/noark5-tester
">https://github.com/petterreinholdtsen/noark5-tester
</a
>,
1014 og brukes daglig mens vi utvikler Nikita for å sikre at vi ikke
1015 introduserer nye feil. Hvis en skal sikre samvirke på tvers av ulike
1016 systemer er det helt essensielt å kunne raskt og automatisk sjekke at
1017 tjenestegrensesnittet oppfører seg som forventet. Jeg håper andre som
1018 lager sin utgave av tjenestegrensesnittet vi bruke dette verktøyet,
1019 slik at vi tidlig og raskt kan oppdage hvor vi har tolket
1020 spesifikasjonen ulikt, og dermed få et godt grunnlag for å gjøre
1021 spesifikasjonsteksten enda klarere og bedre.
</p
>
1023 <p
>Dagens beskrivelse av Noark
5 Tjenestegrensesnitt er et svært godt
1024 utgangspunkt for å gjøre virksomhetens arkiv til et dynamisk og
1025 sentralt arbeidsverktøy i organisasjonen. Blir du med å gjøre den
1026 enda bedre?
</p
>
1031 <title>Time for an official MIME type for patches?
</title>
1032 <link>http://people.skolelinux.org/pere/blog/Time_for_an_official_MIME_type_for_patches_.html
</link>
1033 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Time_for_an_official_MIME_type_for_patches_.html
</guid>
1034 <pubDate>Thu,
1 Nov
2018 08:
15:
00 +
0100</pubDate>
1035 <description><p
>As part of my involvement in
1036 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core
">the Nikita
1037 archive API project
</a
>, I
've been importing a fairly large lump of
1038 emails into a test instance of the archive to see how well this would
1039 go. I picked a subset of
<a href=
"https://notmuchmail.org/
">my
1040 notmuch email database
</a
>, all public emails sent to me via
1041 @lists.debian.org, giving me a set of around
216 000 emails to import.
1042 In the process, I had a look at the various attachments included in
1043 these emails, to figure out what to do with attachments, and noticed
1044 that one of the most common attachment formats do not have
1045 <a href=
"https://www.iana.org/assignments/media-types/media-types.xhtml
">an
1046 official MIME type
</a
> registered with IANA/IETF. The output from
1047 diff, ie the input for patch, is on the top
10 list of formats
1048 included in these emails. At the moment people seem to use either
1049 text/x-patch or text/x-diff, but neither is officially registered. It
1050 would be better if one official MIME type were registered and used
1051 everywhere.
</p
>
1053 <p
>To try to get one official MIME type for these files, I
've brought
1055 <a href=
"https://www.ietf.org/mailman/listinfo/media-types
">the
1056 media-types mailing list
</a
>. If you are interested in discussion
1057 which MIME type to use as the official for patch files, or involved in
1058 making software using a MIME type for patches, perhaps you would like
1059 to join the discussion?
</p
>
1061 <p
>As usual, if you use Bitcoin and want to show your support of my
1062 activities, please send Bitcoin donations to my address
1063 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
1068 <title>Release
0.2 of free software archive system Nikita announced
</title>
1069 <link>http://people.skolelinux.org/pere/blog/Release_0_2_of_free_software_archive_system_Nikita_announced.html
</link>
1070 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Release_0_2_of_free_software_archive_system_Nikita_announced.html
</guid>
1071 <pubDate>Thu,
18 Oct
2018 14:
40:
00 +
0200</pubDate>
1072 <description><p
>This morning, the new release of the
1073 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">Nikita
1074 Noark
5 core project
</a
> was
1075 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/
2018-October/
000406.html
">announced
1076 on the project mailing list
</a
>. The free software solution is an
1077 implementation of the Norwegian archive standard Noark
5 used by
1078 government offices in Norway. These were the changes in version
0.2
1079 since version
0.1.1 (from NEWS.md):
1082 <li
>Fix typos in REL names
</li
>
1083 <li
>Tidy up error message reporting
</li
>
1084 <li
>Fix issue where we used Integer.valueOf(), not Integer.getInteger()
</li
>
1085 <li
>Change some String handling to StringBuffer
</li
>
1086 <li
>Fix error reporting
</li
>
1087 <li
>Code tidy-up
</li
>
1088 <li
>Fix issue using static non-synchronized SimpleDateFormat to avoid
1089 race conditions
</li
>
1090 <li
>Fix problem where deserialisers were treating integers as strings
</li
>
1091 <li
>Update methods to make them null-safe
</li
>
1092 <li
>Fix many issues reported by coverity
</li
>
1093 <li
>Improve equals(), compareTo() and hash() in domain model
</li
>
1094 <li
>Improvements to the domain model for metadata classes
</li
>
1095 <li
>Fix CORS issues when downloading document
</li
>
1096 <li
>Implementation of case-handling with registryEntry and document upload
</li
>
1097 <li
>Better support in Javascript for OPTIONS
</li
>
1098 <li
>Adding concept description of mail integration
</li
>
1099 <li
>Improve setting of default values for GET on ny-journalpost
</li
>
1100 <li
>Better handling of required values during deserialisation
</li
>
1101 <li
>Changed tilknyttetDato (M620) from date to dateTime
</li
>
1102 <li
>Corrected some opprettetDato (M600) (de)serialisation errors.
</li
>
1103 <li
>Improve parse error reporting.
</li
>
1104 <li
>Started on OData search and filtering.
</li
>
1105 <li
>Added Contributor Covenant Code of Conduct to project.
</li
>
1106 <li
>Moved repository and project from Github to Gitlab.
</li
>
1107 <li
>Restructured repository, moved code into src/ and web/.
</li
>
1108 <li
>Updated code to use Spring Boot version
2.
</li
>
1109 <li
>Added support for OAuth2 authentication.
</li
>
1110 <li
>Fixed several bugs discovered by Coverity.
</li
>
1111 <li
>Corrected handling of date/datetime fields.
</li
>
1112 <li
>Improved error reporting when rejecting during deserializatoin.
</li
>
1113 <li
>Adjusted default values provided for ny-arkivdel, ny-mappe,
1114 ny-saksmappe, ny-journalpost and ny-dokumentbeskrivelse.
</li
>
1115 <li
>Several fixes for korrespondansepart*.
</li
>
1116 <li
>Updated web GUI:
1118 <li
>Now handle both file upload and download.
</li
>
1119 <li
>Uses new OAuth2 authentication for login.
</li
>
1120 <li
>Forms now fetches default values from API using GET.
</li
>
1121 <li
>Added RFC
822 (email), TIFF and JPEG to list of possible file formats.
</li
>
1122 </ul
></li
>
1125 <p
>The changes and improvements are extensive. Running diffstat on
1126 the changes between git tab
0.1.1 and
0.2 show
1098 files changed,
1127 108666 insertions(+),
54066 deletions(-).
</p
>
1129 <p
>If free and open standardized archiving API sound interesting to
1130 you, please contact us on IRC
1131 (
<a href=
"irc://irc.freenode.net/%
23nikita
">#nikita on
1132 irc.freenode.net
</a
>) or email
1133 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">nikita-noark
1134 mailing list
</a
>).
</p
>
1136 <p
>As usual, if you use Bitcoin and want to show your support of my
1137 activities, please send Bitcoin donations to my address
1138 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
1143 <title>Fetching trusted timestamps using the rfc3161ng python module
</title>
1144 <link>http://people.skolelinux.org/pere/blog/Fetching_trusted_timestamps_using_the_rfc3161ng_python_module.html
</link>
1145 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Fetching_trusted_timestamps_using_the_rfc3161ng_python_module.html
</guid>
1146 <pubDate>Mon,
8 Oct
2018 12:
30:
00 +
0200</pubDate>
1147 <description><p
>I have earlier covered the basics of trusted timestamping using the
1148 'openssl ts
' client. See blog post for
1149 <a href=
"http://people.skolelinux.org/pere/blog/Public_Trusted_Timestamping_services_for_everyone.html
">2014</a
>,
1150 <a href=
"http://people.skolelinux.org/pere/blog/syslog_trusted_timestamp___chain_of_trusted_timestamps_for_your_syslog.html
">2016</a
>
1152 <a href=
"http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html
">2017</a
>
1153 for those stories. But some times I want to integrate the timestamping
1154 in other code, and recently I needed to integrate it into Python.
1155 After searching a bit, I found
1156 <a href=
"https://dev.entrouvert.org/projects/python-rfc3161
">the
1157 rfc3161 library
</a
> which seemed like a good fit, but I soon
1158 discovered it only worked for python version
2, and I needed something
1159 that work with python version
3. Luckily I next came across
1160 <a href=
"https://github.com/trbs/rfc3161ng/
">the rfc3161ng library
</a
>,
1161 a fork of the original rfc3161 library. Not only is it working with
1162 python
3, it have fixed a few of the bugs in the original library, and
1163 it has an active maintainer. I decided to wrap it up and make it
1164 <a href=
"https://tracker.debian.org/pkg/python-rfc3161ng
">available in
1165 Debian
</a
>, and a few days ago it entered Debian unstable and testing.
</p
>
1167 <p
>Using the library is fairly straight forward. The only slightly
1168 problematic step is to fetch the required certificates to verify the
1169 timestamp. For some services it is straight forward, while for others
1170 I have not yet figured out how to do it. Here is a small standalone
1171 code example based on of the integration tests in the library code:
</p
>
1178 Python
3 script demonstrating how to use the rfc3161ng module to
1179 get trusted timestamps.
1181 The license of this code is the same as the license of the rfc3161ng
1182 library, ie MIT/BSD.
1187 import pyasn1.codec.der
1191 import urllib.request
1198 def fetch(url, f=None):
1199 response = urllib.request.urlopen(url)
1200 data = response.read()
1206 with tempfile.NamedTemporaryFile() as cert_f,\
1207 tempfile.NamedTemporaryFile() as ca_f,\
1208 tempfile.NamedTemporaryFile() as msg_f,\
1209 tempfile.NamedTemporaryFile() as tsr_f:
1211 # First fetch certificates used by service
1212 certificate_data = fetch(
'https://freetsa.org/files/tsa.crt
', cert_f)
1213 ca_data_data = fetch(
'https://freetsa.org/files/cacert.pem
', ca_f)
1215 # Then timestamp the message
1217 rfc3161ng.RemoteTimestamper(
'http://freetsa.org/tsr
',
1218 certificate=certificate_data)
1219 data = b
"Python forever!\n
"
1220 tsr = timestamper(data=data, return_tsr=True)
1222 # Finally, convert message and response to something
'openssl ts
' can verify
1224 store(tsr_f, pyasn1.codec.der.encoder.encode(tsr))
1225 args = [
"openssl
",
"ts
",
"-verify
",
1226 "-data
", msg_f.name,
1227 "-in
", tsr_f.name,
1228 "-CAfile
", ca_f.name,
1229 "-untrusted
", cert_f.name]
1230 subprocess.check_call(args)
1232 if
'__main__
' == __name__:
1236 <p
>The code fetches the required certificates, store them as temporary
1237 files, timestamp a simple message, store the message and timestamp to
1238 disk and ask
'openssl ts
' to verify the timestamp. A timestamp is
1239 around
1.5 kiB in size, and should be fairly easy to store for future
1242 <p
>As usual, if you use Bitcoin and want to show your support of my
1243 activities, please send Bitcoin donations to my address
1244 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
1249 <title>Release
0.1.1 of free software archive system Nikita announced
</title>
1250 <link>http://people.skolelinux.org/pere/blog/Release_0_1_1_of_free_software_archive_system_Nikita_announced.html
</link>
1251 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Release_0_1_1_of_free_software_archive_system_Nikita_announced.html
</guid>
1252 <pubDate>Sat,
10 Jun
2017 00:
40:
00 +
0200</pubDate>
1253 <description><p
>I am very happy to report that the
1254 <a href=
"https://github.com/hiOA-ABI/nikita-noark5-core
">Nikita Noark
5
1255 core project
</a
> tagged its second release today. The free software
1256 solution is an implementation of the Norwegian archive standard Noark
1257 5 used by government offices in Norway. These were the changes in
1258 version
0.1.1 since version
0.1.0 (from NEWS.md):
1262 <li
>Continued work on the angularjs GUI, including document upload.
</li
>
1263 <li
>Implemented correspondencepartPerson, correspondencepartUnit and
1264 correspondencepartInternal
</li
>
1265 <li
>Applied for coverity coverage and started submitting code on
1266 regualr basis.
</li
>
1267 <li
>Started fixing bugs reported by coverity
</li
>
1268 <li
>Corrected and completed HATEOAS links to make sure entire API is
1269 available via URLs in _links.
</li
>
1270 <li
>Corrected all relation URLs to use trailing slash.
</li
>
1271 <li
>Add initial support for storing data in ElasticSearch.
</li
>
1272 <li
>Now able to receive and store uploaded files in the archive.
</li
>
1273 <li
>Changed JSON output for object lists to have relations in _links.
</li
>
1274 <li
>Improve JSON output for empty object lists.
</li
>
1275 <li
>Now uses correct MIME type application/vnd.noark5-v4+json.
</li
>
1276 <li
>Added support for docker container images.
</li
>
1277 <li
>Added simple API browser implemented in JavaScript/Angular.
</li
>
1278 <li
>Started on archive client implemented in JavaScript/Angular.
</li
>
1279 <li
>Started on prototype to show the public mail journal.
</li
>
1280 <li
>Improved performance by disabling Sprint FileWatcher.
</li
>
1281 <li
>Added support for
'arkivskaper
',
'saksmappe
' and
'journalpost
'.
</li
>
1282 <li
>Added support for some metadata codelists.
</li
>
1283 <li
>Added support for Cross-origin resource sharing (CORS).
</li
>
1284 <li
>Changed login method from Basic Auth to JSON Web Token (RFC
7519)
1286 <li
>Added support for GET-ing ny-* URLs.
</li
>
1287 <li
>Added support for modifying entities using PUT and eTag.
</li
>
1288 <li
>Added support for returning XML output on request.
</li
>
1289 <li
>Removed support for English field and class names, limiting ourself
1290 to the official names.
</li
>
1291 <li
>...
</li
>
1295 <p
>If this sound interesting to you, please contact us on IRC (#nikita
1296 on irc.freenode.net) or email
1297 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">nikita-noark
1298 mailing list).
</p
>
1303 <title>Idea for storing trusted timestamps in a Noark
5 archive
</title>
1304 <link>http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html
</link>
1305 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html
</guid>
1306 <pubDate>Wed,
7 Jun
2017 21:
40:
00 +
0200</pubDate>
1307 <description><p
><em
>This is a copy of
1308 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/
2017-June/
000297.html
">an
1309 email I posted to the nikita-noark mailing list
</a
>. Please follow up
1310 there if you would like to discuss this topic. The background is that
1311 we are making a free software archive system based on the Norwegian
1312 <a href=
"https://www.arkivverket.no/forvaltning-og-utvikling/regelverk-og-standarder/noark-standarden
">Noark
1313 5 standard
</a
> for government archives.
</em
></p
>
1315 <p
>I
've been wondering a bit lately how trusted timestamps could be
1317 <a href=
"https://en.wikipedia.org/wiki/Trusted_timestamping
">Trusted
1318 timestamps
</a
> can be used to verify that some information
1319 (document/file/checksum/metadata) have not been changed since a
1320 specific time in the past. This is useful to verify the integrity of
1321 the documents in the archive.
</p
>
1323 <p
>Then it occured to me, perhaps the trusted timestamps could be
1324 stored as dokument variants (ie dokumentobjekt referered to from
1325 dokumentbeskrivelse) with the filename set to the hash it is
1328 <p
>Given a
"dokumentbeskrivelse
" with an associated
"dokumentobjekt
",
1329 a new dokumentobjekt is associated with
"dokumentbeskrivelse
" with the
1330 same attributes as the stamped dokumentobjekt except these
1331 attributes:
</p
>
1335 <li
>format -
> "RFC3161
"
1336 <li
>mimeType -
> "application/timestamp-reply
"
1337 <li
>formatDetaljer -
> "&lt;source URL for timestamp service
&gt;
"
1338 <li
>filenavn -
> "&lt;sjekksum
&gt;.tsr
"
1342 <p
>This assume a service following
1343 <a href=
"https://tools.ietf.org/html/rfc3161
">IETF RFC
3161</a
> is
1344 used, which specifiy the given MIME type for replies and the .tsr file
1345 ending for the content of such trusted timestamp. As far as I can
1346 tell from the Noark
5 specifications, it is OK to have several
1347 variants/renderings of a dokument attached to a given
1348 dokumentbeskrivelse objekt. It might be stretching it a bit to make
1349 some of these variants represent crypto-signatures useful for
1350 verifying the document integrity instead of representing the dokument
1353 <p
>Using the source of the service in formatDetaljer allow several
1354 timestamping services to be used. This is useful to spread the risk
1355 of key compromise over several organisations. It would only be a
1356 problem to trust the timestamps if all of the organisations are
1357 compromised.
</p
>
1359 <p
>The following oneliner on Linux can be used to generate the tsr
1360 file. $input is the path to the file to checksum, and $sha256 is the
1361 SHA-
256 checksum of the file (ie the
"<sjekksum
>.tsr
" value mentioned
1364 <p
><blockquote
><pre
>
1365 openssl ts -query -data
"$inputfile
" -cert -sha256 -no_nonce \
1366 | curl -s -H
"Content-Type: application/timestamp-query
" \
1367 --data-binary
"@-
" http://zeitstempel.dfn.de
> $sha256.tsr
1368 </pre
></blockquote
></p
>
1370 <p
>To verify the timestamp, you first need to download the public key
1371 of the trusted timestamp service, for example using this command:
</p
>
1373 <p
><blockquote
><pre
>
1374 wget -O ca-cert.txt \
1375 https://pki.pca.dfn.de/global-services-ca/pub/cacert/chain.txt
1376 </pre
></blockquote
></p
>
1378 <p
>Note, the public key should be stored alongside the timestamps in
1379 the archive to make sure it is also available
100 years from now. It
1380 is probably a good idea to standardise how and were to store such
1381 public keys, to make it easier to find for those trying to verify
1382 documents
100 or
1000 years from now. :)
</p
>
1384 <p
>The verification itself is a simple openssl command:
</p
>
1386 <p
><blockquote
><pre
>
1387 openssl ts -verify -data $inputfile -in $sha256.tsr \
1388 -CAfile ca-cert.txt -text
1389 </pre
></blockquote
></p
>
1391 <p
>Is there any reason this approach would not work? Is it somehow against
1392 the Noark
5 specification?
</p
>
1397 <title>Epost inn som arkivformat i Riksarkivarens forskrift?
</title>
1398 <link>http://people.skolelinux.org/pere/blog/Epost_inn_som_arkivformat_i_Riksarkivarens_forskrift_.html
</link>
1399 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Epost_inn_som_arkivformat_i_Riksarkivarens_forskrift_.html
</guid>
1400 <pubDate>Thu,
27 Apr
2017 11:
30:
00 +
0200</pubDate>
1401 <description><p
>I disse dager, med frist
1. mai, har Riksarkivaren ute en høring på
1402 sin forskrift. Som en kan se er det ikke mye tid igjen før fristen
1403 som går ut på søndag. Denne forskriften er det som lister opp hvilke
1404 formater det er greit å arkivere i
1405 <a href=
"http://www.arkivverket.no/arkivverket/Offentleg-forvalting/Noark/Noark-
5">Noark
1406 5-løsninger
</a
> i Norge.
</p
>
1408 <p
>Jeg fant høringsdokumentene hos
1409 <a href=
"https://www.arkivrad.no/aktuelt/riksarkivarens-forskrift-pa-horing
">Norsk
1410 Arkivråd
</a
> etter å ha blitt tipset på epostlisten til
1411 <a href=
"https://github.com/hiOA-ABI/nikita-noark5-core
">fri
1412 programvareprosjektet Nikita Noark5-Core
</a
>, som lager et Noark
5
1413 Tjenestegresesnitt. Jeg er involvert i Nikita-prosjektet og takket
1414 være min interesse for tjenestegrensesnittsprosjektet har jeg lest en
1415 god del Noark
5-relaterte dokumenter, og til min overraskelse oppdaget
1416 at standard epost ikke er på listen over godkjente formater som kan
1417 arkiveres. Høringen med frist søndag er en glimrende mulighet til å
1418 forsøke å gjøre noe med det. Jeg holder på med
1419 <a href=
"https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/hoering-arkivforskrift.tex
">egen
1420 høringsuttalelse
</a
>, og lurer på om andre er interessert i å støtte
1421 forslaget om å tillate arkivering av epost som epost i arkivet.
</p
>
1423 <p
>Er du igang med å skrive egen høringsuttalelse allerede? I så fall
1424 kan du jo vurdere å ta med en formulering om epost-lagring. Jeg tror
1425 ikke det trengs så mye. Her et kort forslag til tekst:
</p
>
1427 <p
><blockquote
>
1429 <p
>Viser til høring sendt ut
2017-
02-
17 (Riksarkivarens referanse
1430 2016/
9840 HELHJO), og tillater oss å sende inn noen innspill om
1431 revisjon av Forskrift om utfyllende tekniske og arkivfaglige
1432 bestemmelser om behandling av offentlige arkiver (Riksarkivarens
1433 forskrift).
</p
>
1435 <p
>Svært mye av vår kommuikasjon foregår i dag på e-post. Vi
1436 foreslår derfor at Internett-e-post, slik det er beskrevet i IETF
1438 <a href=
"https://tools.ietf.org/html/rfc5322
">https://tools.ietf.org/html/rfc5322
</a
>. bør
1439 inn som godkjent dokumentformat. Vi foreslår at forskriftens
1440 oversikt over godkjente dokumentformater ved innlevering i §
5-
16
1441 endres til å ta med Internett-e-post.
</p
>
1443 </blockquote
></p
>
1445 <p
>Som del av arbeidet med tjenestegrensesnitt har vi testet hvordan
1446 epost kan lagres i en Noark
5-struktur, og holder på å skrive et
1447 forslag om hvordan dette kan gjøres som vil bli sendt over til
1448 arkivverket så snart det er ferdig. De som er interesserte kan
1449 <a href=
"https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/epostlagring.md
">følge
1450 fremdriften på web
</a
>.
</p
>
1452 <p
>Oppdatering
2017-
04-
28: I dag ble høringuttalelsen jeg skrev
1453 <a href=
"https://www.nuug.no/news/NUUGs_h_ringuttalelse_til_Riksarkivarens_forskrift.shtml
">sendt
1454 inn av foreningen NUUG
</a
>.
</p
>
1459 <title>Free software archive system Nikita now able to store documents
</title>
1460 <link>http://people.skolelinux.org/pere/blog/Free_software_archive_system_Nikita_now_able_to_store_documents.html
</link>
1461 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Free_software_archive_system_Nikita_now_able_to_store_documents.html
</guid>
1462 <pubDate>Sun,
19 Mar
2017 08:
00:
00 +
0100</pubDate>
1463 <description><p
>The
<a href=
"https://github.com/hiOA-ABI/nikita-noark5-core
">Nikita
1464 Noark
5 core project
</a
> is implementing the Norwegian standard for
1465 keeping an electronic archive of government documents.
1466 <a href=
"http://www.arkivverket.no/arkivverket/Offentlig-forvaltning/Noark/Noark-
5/English-version
">The
1467 Noark
5 standard
</a
> document the requirement for data systems used by
1468 the archives in the Norwegian government, and the Noark
5 web interface
1469 specification document a REST web service for storing, searching and
1470 retrieving documents and metadata in such archive. I
've been involved
1471 in the project since a few weeks before Christmas, when the Norwegian
1473 <a href=
"https://www.nuug.no/news/NOARK5_kjerne_som_fri_programvare_f_r_epostliste_hos_NUUG.shtml
">announced
1474 it supported the project
</a
>. I believe this is an important project,
1475 and hope it can make it possible for the government archives in the
1476 future to use free software to keep the archives we citizens depend
1477 on. But as I do not hold such archive myself, personally my first use
1478 case is to store and analyse public mail journal metadata published
1479 from the government. I find it useful to have a clear use case in
1480 mind when developing, to make sure the system scratches one of my
1483 <p
>If you would like to help make sure there is a free software
1484 alternatives for the archives, please join our IRC channel
1485 (
<a href=
"irc://irc.freenode.net/%
23nikita
">#nikita on
1486 irc.freenode.net
</a
>) and
1487 <a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">the
1488 project mailing list
</a
>.
</p
>
1490 <p
>When I got involved, the web service could store metadata about
1491 documents. But a few weeks ago, a new milestone was reached when it
1492 became possible to store full text documents too. Yesterday, I
1493 completed an implementation of a command line tool
1494 <tt
>archive-pdf
</tt
> to upload a PDF file to the archive using this
1495 API. The tool is very simple at the moment, and find existing
1496 <a href=
"https://en.wikipedia.org/wiki/Fonds
">fonds
</a
>, series and
1497 files while asking the user to select which one to use if more than
1498 one exist. Once a file is identified, the PDF is associated with the
1499 file and uploaded, using the title extracted from the PDF itself. The
1500 process is fairly similar to visiting the archive, opening a cabinet,
1501 locating a file and storing a piece of paper in the archive. Here is
1502 a test run directly after populating the database with test data using
1503 our API tester:
</p
>
1505 <p
><blockquote
><pre
>
1506 ~/src//noark5-tester$ ./archive-pdf mangelmelding/mangler.pdf
1507 using arkiv: Title of the test fonds created
2017-
03-
18T23:
49:
32.103446
1508 using arkivdel: Title of the test series created
2017-
03-
18T23:
49:
32.103446
1510 0 - Title of the test case file created
2017-
03-
18T23:
49:
32.103446
1511 1 - Title of the test file created
2017-
03-
18T23:
49:
32.103446
1512 Select which mappe you want (or search term):
0
1513 Uploading mangelmelding/mangler.pdf
1514 PDF title: Mangler i spesifikasjonsdokumentet for NOARK
5 Tjenestegrensesnitt
1515 File
2017/
1: Title of the test case file created
2017-
03-
18T23:
49:
32.103446
1516 ~/src//noark5-tester$
1517 </pre
></blockquote
></p
>
1519 <p
>You can see here how the fonds (arkiv) and serie (arkivdel) only had
1520 one option, while the user need to choose which file (mappe) to use
1521 among the two created by the API tester. The
<tt
>archive-pdf
</tt
>
1522 tool can be found in the git repository for the API tester.
</p
>
1524 <p
>In the project, I have been mostly working on
1525 <a href=
"https://github.com/petterreinholdtsen/noark5-tester
">the API
1526 tester
</a
> so far, while getting to know the code base. The API
1527 tester currently use
1528 <a href=
"https://en.wikipedia.org/wiki/HATEOAS
">the HATEOAS links
</a
>
1529 to traverse the entire exposed service API and verify that the exposed
1530 operations and objects match the specification, as well as trying to
1531 create objects holding metadata and uploading a simple XML file to
1532 store. The tester has proved very useful for finding flaws in our
1533 implementation, as well as flaws in the reference site and the
1534 specification.
</p
>
1536 <p
>The test document I uploaded is a summary of all the specification
1537 defects we have collected so far while implementing the web service.
1538 There are several unclear and conflicting parts of the specification,
1540 <a href=
"https://github.com/petterreinholdtsen/noark5-tester/tree/master/mangelmelding
">started
1541 writing down
</a
> the questions we get from implementing it. We use a
1542 format inspired by how
<a href=
"http://www.opengroup.org/austin/
">The
1543 Austin Group
</a
> collect defect reports for the POSIX standard with
1544 <a href=
"http://www.opengroup.org/austin/mantis.html
">their
1545 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
> :).
1547 <p
>The Nikita project is implemented using Java and Spring, and is
1548 fairly easy to get up and running using Docker containers for those
1549 that want to test the current code base. The API tester is
1550 implemented in Python.
</p
>
1555 <title>Hva «mangler» i OEP - litt statistikk utledet fra saksnummer og dokumentnummer
</title>
1556 <link>http://people.skolelinux.org/pere/blog/Hva__mangler__i_OEP___litt_statistikk_utledet_fra_saksnummer_og_dokumentnummer.html
</link>
1557 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Hva__mangler__i_OEP___litt_statistikk_utledet_fra_saksnummer_og_dokumentnummer.html
</guid>
1558 <pubDate>Thu,
29 Jan
2015 20:
30:
00 +
0100</pubDate>
1559 <description><p
>En ting jeg har lurt på når det gjelder offentlige postjournaler,
1560 er hvor stor andel av det som ligger i de interne databasene kommer
1561 ikke med i postjournalen. Dette er det mulig å finne ut basert på det
1562 som ligger i postjournalen. For å forstå hva jeg mener, trengs det
1563 litt bakgrunnsinformasjon. I henhold til
1564 <a href=
"http://www.arkivverket.no/arkivverket/Offentleg-forvalting/Noark
">NOARK-standarden
</a
>
1565 for norske offentlige arkiv skal enhver sak ha et årstall og et
1566 løpenummer, og ethvert dokument i saken skal gis et
1567 dokument-løpenummer. Det vil si at en ender opp med dokument-ID som
1568 ser ut som ÅÅÅÅ/SAKNR-DOKNR, f.eks.
2014/
2-
1 eller
2014/
12312-
14.
1569 Mange oppgir kun tosifret årstall, men prinsippet er det samme. Så
1570 vidt jeg vet skal saksnummer og dokumentnummer tildeles løpende og i
1571 stigende rekkefølge. Gitt en instans med følgende dokument-ID i
1572 postjournalen, så kan en regne ut hvor mye som ikke finnes i
1576 <li
>2014/
2-
1</li
>
1577 <li
>2014/
5-
1</li
>
1578 <li
>2014/
5-
3</li
>
1581 <p
>Her ser en at saksnummer
2 og
5 finnes i postjournalen, mens
1582 nummerene
1,
3 og
4 mangler. En ser også at i sak
2014/
5 mangler
1583 dokument
2. Ved hjelp av denne informasjonen har jeg regnet ut hvor
1584 stor andel av saksnummer og dokumentløpenummer som ikke har dukket opp
1585 i
<a href=
"https://www.oep.no/
">Offentlig Elektronisk Postjournal
</a
>
1586 (OEP). For saksnummer har jeg tatt utgangspunkt i at en ikke trenger
1587 å starte på
1, og dermed regnet med området fra laveste til høyeste
1588 saksnummer og talt antall unike saksnummer som forekommer i OEP. I
1589 dette tilfellet betyr de at
2 av
4 saksnummer er ubrukte (
50%). For
1590 dokumentløpenummer har jeg tilsvarende tatt utgangspunkt i laveste og
1591 høyeste kjente dokumentløpenummer, for å handtere databaser der jeg
1592 mangler komplett postjournal. For sak
2014/
5 her betyr det at
1 av
3
1593 dokumenter mangler (
33%).
</p
>
1595 <p
>Det er flere årsaker til at det kan bli hull i nummerseriene.
1596 Feilføring der et dokument tildeles et nytt saksnummer ved en feil, og
1597 deretter flyttes inn i riktig sak vil gi et ubrukt saksnummer, da
1598 saksnummer skal tildeles i stigende rekkefølge og en ikke får opprette
1599 nye saker innimellom gamle saker. Tilsvarende kan skje med
1600 dokument-løpenummer. Det er jo heller ikke sikkert at et saksnummer i
1601 OEP er det samme som løpenummeret som brukes som saksnummeret i
1602 instansens interne datasystem. Kanskje snakker vi om ulike ontologier
1603 der en delmengde av interne saksnummer tilsvarer saksnummer i OEP.
1604 Hvis like nummer også tildeles andre ting enn saker som skal til OEP
1605 vil en tilsvarende få «hull» i saksnumrene i postjournalen.
</p
>
1607 <p
>Jeg er litt usikker på hva denne statistikken egentlig viser, og
1608 heller ikke sikker på om det er reelt sett mangler i OEP (som kanskje
1609 kunne anses å være kritikkverdig), bare er resultatet av hendelige
1610 uhell i nummertildelingen eller resultat av ulik ontologi i OEP og
1611 instansens datasystem. Men jeg syntes tallene og variasjonen var så
1612 interessant at jeg hadde lyst til å dele dem med mine lesere. Jeg har
1613 sortert listen på prosent upubliserte saksnummer for
2014.
</p
>
1615 <table border=
"1">
1616 <tr
><th colspan=
"6">Saksnummer
</th
><th colspan=
"3">Dokumentnummer
</th
><th rowspan=
"3">Instans
</th
></tr
>
1617 <tr
><th colspan=
"3">2014</th
><th colspan=
"3">2013</th
><th colspan=
"3">2014</th
></tr
>
1618 <tr
><th
>%
</th
><th
>Upubl. saksnr.
</th
><th
>Totalt
</th
>
1619 <th
>%
</th
><th
>Upubl. saksnr
</th
><th
>Totalt
</th
>
1620 <th
>%
</th
><th
>Upubl. dok.nr.
</th
><th
>Totalt
</th
>
1623 <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
>
1624 <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
>
1625 <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
>
1626 <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
>
1627 <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
>
1628 <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
>
1629 <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
>
1630 <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
>
1631 <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
>
1632 <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
>
1633 <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
>
1634 <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
>
1635 <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
>
1636 <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
>
1637 <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
>
1638 <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
>
1639 <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
>
1640 <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
>
1641 <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
>
1642 <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
>
1643 <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
>
1644 <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
>
1645 <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
>
1646 <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
>
1647 <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
>
1648 <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
>
1649 <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
>
1650 <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
>
1651 <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
>
1652 <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
>
1653 <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
>
1654 <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
>
1655 <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
>
1656 <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
>
1657 <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
>
1658 <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
>
1659 <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
>
1660 <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
>
1661 <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
>
1662 <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
>
1663 <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
>
1664 <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
>
1665 <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
>
1666 <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
>
1667 <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
>
1668 <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
>
1669 <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
>
1670 <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
>
1671 <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
>
1672 <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
>
1673 <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
>
1674 <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
>
1675 <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
>
1676 <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
>
1677 <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
>
1678 <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
>
1679 <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
>
1680 <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
>
1681 <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
>
1682 <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
>
1683 <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
>
1684 <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
>
1685 <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
>
1686 <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
>
1687 <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
>
1688 <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
>
1689 <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
>
1690 <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
>
1691 <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
>
1692 <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
>
1693 <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
>
1694 <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
>
1695 <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
>
1696 <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
>
1697 <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
>
1698 <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
>
1699 <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
>
1700 <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
>
1701 <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
>
1702 <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
>
1703 <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
>
1704 <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
>
1705 <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
>
1706 <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
>
1707 <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
>
1708 <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
>
1709 <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
>
1710 <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
>
1711 <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
>
1712 <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
>
1713 <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
>
1714 <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
>
1715 <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
>
1716 <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
>
1717 <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
>
1718 <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
>
1719 <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
>
1720 <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
>
1721 <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
>
1722 <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
>
1723 <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
>
1724 <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
>
1725 <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
>
1726 <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
>
1727 <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
>
1728 <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
>
1729 <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
>
1730 <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
>
1731 <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
>
1732 <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
>
1733 <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
>
1734 <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
>
1735 <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
>
1736 <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
>
1737 <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
>
1738 <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
>
1739 <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
>
1740 <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
>
1744 <p
>Det kunne vært interessant å se hva som skjedde hvis en ba om
1745 innsyn i en dokument-ID som ikke finnes i OEP... :) Det hadde også
1746 vært interessant å få vite hva årsaken til at noen saksnummer ikke
1747 dukker opp i OEP der det er få og mange. Jeg mistenker jo at årsaken
1748 ikke er den samme hos Skattedirektoratet og hos Landinfo, selv om
1749 andelen upubliserte nummer er ganske lik.
</p
>
1754 <title>Hvordan bør RFC
822-formattert epost lagres i en NOARK5-database?
</title>
1755 <link>http://people.skolelinux.org/pere/blog/Hvordan_b_r_RFC_822_formattert_epost_lagres_i_en_NOARK5_database_.html
</link>
1756 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Hvordan_b_r_RFC_822_formattert_epost_lagres_i_en_NOARK5_database_.html
</guid>
1757 <pubDate>Fri,
7 Mar
2014 15:
20:
00 +
0100</pubDate>
1758 <description><p
>For noen uker siden ble NXCs fri programvarelisenserte
1760 <a href=
"http://www.nuug.no/aktiviteter/
20140211-noark/
">presentert hos
1761 NUUG
</a
> (video
1762 <a href=
"https://www.youtube.com/watch?v=JCb_dNS3MHQ
">på youtube
1763 foreløbig
</a
>), og det fikk meg til å titte litt mer på NOARK5,
1764 standarden for arkivhåndtering i det offentlige Norge. Jeg lurer på
1765 om denne kjernen kan være nyttig i et par av mine prosjekter, og for ett
1766 av dem er det mest aktuelt å lagre epost. Jeg klarte ikke finne noen
1767 anbefaling om hvordan RFC
822-formattert epost (aka Internett-epost)
1768 burde lagres i NOARK5, selv om jeg vet at noen arkiver tar
1769 PDF-utskrift av eposten med sitt epostprogram og så arkiverer PDF-en
1770 (eller enda værre, tar papirutskrift og lagrer bildet av eposten som
1771 PDF i arkivet).
</p
>
1773 <p
>Det er ikke så mange formater som er akseptert av riksarkivet til
1774 langtidsoppbevaring av offentlige arkiver, og PDF og XML er de mest
1775 aktuelle i så måte. Det slo meg at det måtte da finnes en eller annen
1776 egnet XML-representasjon og at det kanskje var enighet om hvilken som
1777 burde brukes, så jeg tok mot til meg og spurte
1778 <a href=
"http://samdok.com/
">SAMDOK
</a
>, en gruppe tilknyttet
1779 arkivverket som ser ut til å jobbe med NOARK-samhandling, om de hadde
1782 <p
><blockquote
>
1783 <p
>Hei.
</p
>
1785 <p
>Usikker på om dette er riktig forum å ta opp mitt spørsmål, men jeg
1786 lurer på om det er definert en anbefaling om hvordan RFC
1787 822-formatterte epost (aka vanlig Internet-epost) bør lages håndteres
1788 i NOARK5, slik at en bevarer all informasjon i eposten
1789 (f.eks. Received-linjer). Finnes det en anbefalt XML-mapping ala den
1791 &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
1792 mål er at det skal være mulig å lagre eposten i en NOARK5-kjerne og
1793 kunne få ut en identisk formattert kopi av opprinnelig epost ved
1795 </blockquote
></p
>
1797 <p
>Postmottaker hos SAMDOK mente spørsmålet heller burde stilles
1798 direkte til riksarkivet, og jeg fikk i dag svar derfra formulert av
1799 seniorrådgiver Geir Ivar Tungesvik:
</p
>
1801 <p
><blockquote
>
1802 <p
>Riksarkivet har ingen anbefalinger når det gjelder konvertering fra
1803 e-post til XML. Det står arkivskaper fritt å eventuelt definere/bruke
1804 eget format. Inklusive da - som det spørres om - et format der det er
1805 mulig å re-etablere e-post format ut fra XML-en. XML (e-post)
1806 dokumenter må være referert i arkivstrukturen, og det må vedlegges et
1807 gyldig XML skjema (.xsd) for XML-filene. Arkivskaper står altså fritt
1808 til å gjøre hva de vil, bare det dokumenteres og det kan dannes et
1809 utrekk ved avlevering til depot.
</p
>
1811 <p
>De obligatoriske kravene i Noark
5 standarden må altså oppfylles -
1812 etter dialog med Riksarkivet i forbindelse med godkjenning. For
1813 offentlige arkiv er det særlig viktig med filene loependeJournal.xml
1814 og offentligJournal.xml. Private arkiv som vil forholde seg til Noark
1815 5 standarden er selvsagt frie til å bruke det som er relevant for dem
1816 av obligatoriske krav.
</p
>
1817 </blockquote
></p
>
1819 <p
>Det ser dermed ut for meg som om det er et lite behov for å
1820 standardisere XML-lagring av RFC-
822-formatterte meldinger. Noen som
1821 vet om god spesifikasjon i så måte? I tillegg til den omtalt over,
1822 har jeg kommet over flere aktuelle beskrivelser (søk på
"rfc
822
1823 xml
", så finner du aktuelle alternativer).
</p
>
1827 <li
><a href=
"http://www.openhealth.org/xmtp/
">XML MIME Transformation
1828 protocol (XMTP)
</a
> fra OpenHealth, sist oppdatert
2001.
</li
>
1830 <li
><a href=
"https://tools.ietf.org/html/draft-klyne-message-rfc822-xml-
03">An
1831 XML format for mail and other messages
</a
> utkast fra IETF datert
1834 <li
><a href=
"http://www.informit.com/articles/article.aspx?p=
32074">xMail:
1835 E-mail as XML
</a
> en artikkel fra
2003 som beskriver python-modulen
1836 rfc822 som gir ut XML-representasjon av en RFC
822-formattert epost.
</li
>
1840 <p
>Finnes det andre og bedre spesifikasjoner for slik lagring? Send
1841 meg en epost hvis du har innspill.
</p
>