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.4 released - free software archive API server
</title>
11 <link>http://people.skolelinux.org/pere/blog/Nikita_version_0_4_released___free_software_archive_API_server.html
</link>
12 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Nikita_version_0_4_released___free_software_archive_API_server.html
</guid>
13 <pubDate>Wed,
22 May
2019 11:
30:
00 +
0200</pubDate>
14 <description><p
>This morning, a new release of
15 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">Nikita
16 Noark
5 core project
</a
> was
17 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/
2019-May/
000468.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.4
21 since version
0.3, see the email link above for links to a demo site:
</p
>
25 <li
>Roll out OData handling to all endpoints where applicable
</li
>
26 <li
>Changed the relation key for
"ny-journalpost
" to the official one.
</li
>
27 <li
>Better link generation on outgoing links.
</li
>
28 <li
>Tidy up code and make code and approaches more consistent throughout
29 the codebase
</li
>
30 <li
>Update rels to be in compliance with updated version in the
31 interface standard
</li
>
32 <li
>Avoid printing links on empty objects as they can
't have links
</li
>
33 <li
>Small bug fixes and improvements
</li
>
34 <li
>Start moving generation of outgoing links to @Service layer so access
35 control can be used when generating links
</li
>
36 <li
>Log exception that was being swallowed so it
's traceable
</li
>
37 <li
>Fix name mapping problem
</li
>
38 <li
>Update templated printing so templated should only be printed if it
39 is set true. Requires more work to roll out across entire
40 application.
</li
>
41 <li
>Remove Record-
>DocumentObject as per domain model of n5v4
</li
>
42 <li
>Add ability to delete lists filtered with OData
</li
>
43 <li
>Return NO_CONTENT (
204) on delete as per interface standard
</li
>
44 <li
>Introduce support for ConstraintViolationException exception
</li
>
45 <li
>Make Service classes extend NoarkService
</li
>
46 <li
>Make code base respect X-Forwarded-Host, X-Forwarded-Proto and
47 X-Forwarded-Port
</li
>
48 <li
>Update CorrespondencePart* code to be more in line with Single
49 Responsibility Principle
</li
>
50 <li
>Make package name follow directory structure
</li
>
51 <li
>Make sure Document number starts at
1, not
0</li
>
52 <li
>Fix isues discovered by FindBugs
</li
>
53 <li
>Update from Date to ZonedDateTime
</li
>
54 <li
>Fix wrong tablename
</li
>
55 <li
>Introduce Service layer tests
</li
>
56 <li
>Improvements to CorrespondencePart
</li
>
57 <li
>Continued work on Class / Classificationsystem
</li
>
58 <li
>Fix feature where authors were stored as storageLocations
</li
>
59 <li
>Update HQL builder for OData
</li
>
60 <li
>Update OData search capability from webpage
</li
>
64 <p
>If free and open standardized archiving API sound interesting to
65 you, please contact us on IRC
66 (
<a href=
"irc://irc.freenode.net/%
23nikita
">#nikita on
67 irc.freenode.net
</a
>) or email
68 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">nikita-noark
69 mailing list
</a
>).
</p
>
71 <p
>As usual, if you use Bitcoin and want to show your support of my
72 activities, please send Bitcoin donations to my address
73 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
78 <title>MIME type
"text/vnd.sosi
" for SOSI map data
</title>
79 <link>http://people.skolelinux.org/pere/blog/MIME_type__text_vnd_sosi__for_SOSI_map_data.html
</link>
80 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/MIME_type__text_vnd_sosi__for_SOSI_map_data.html
</guid>
81 <pubDate>Mon,
20 May
2019 08:
35:
00 +
0200</pubDate>
82 <description><p
>As part of my involvement in the work to
83 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard
">standardise
84 a REST based API for Noark
5</a
>, the Norwegian archiving standard, I
85 spent some time the last few months to try to register a
86 <a href=
"https://www.iana.org/assignments/media-types/
">MIME type
</a
>
87 and
<a href=
"https://www.nationalarchives.gov.uk/PRONOM/
">PRONOM
88 code
</a
> for the SOSI file format. The background is that there is a
89 set of formats approved for long term storage and archiving in Norway,
90 and among these formats, SOSI is the only format missing a MIME type
91 and PRONOM code.
</p
>
93 <p
>What is SOSI, you might ask? To quote Wikipedia: SOSI is short for
94 Samordnet Opplegg for Stedfestet Informasjon (literally
"Coordinated
95 Approach for Spatial Information
", but more commonly expanded in
96 English to Systematic Organization of Spatial Information). It is a
97 text based file format for geo-spatial vector information used in
98 Norway. Information about the SOSI format can be found in English
99 from
<a href=
"https://en.wikipedia.org/wiki/SOSI
">Wikipedia
</a
>. The
100 specification is available in Norwegian from
101 <a href=
"https://www.kartverket.no/geodataarbeid/Standarder/SOSI/
">the
102 Norwegian mapping authority
</a
>. The SOSI standard, which originated
103 in the beginning of nineteen eighties, was the inspiration and formed the
104 basis for the XML based
105 <a href=
"https://en.wikipedia.org/wiki/Geography_Markup_Language
">Geography
106 Markup Language
</a
>.
</p
>
108 <p
>I have so far written
109 <a href=
"https://github.com/file/file/pull/
67">a pattern matching
110 rule
</a
> for the file(
1) unix tool to recognize SOSI files, submitted
111 a request to the PRONOM project to have a PRONOM ID assigned to the
112 format (reference TNA1555078202S60), and today send a request to IANA
113 to register the
"text/vnd.sosi
" MIME type for this format (referanse
114 <a href=
"https://tools.iana.org/public-view/viewticket/
1143144">IANA
115 #
1143144</a
>). If all goes well, in a few months, anyone implementing
116 the Noark
5 Tjenestegrensesnitt API spesification should be able to
117 use an official MIME type and PRONOM code for SOSI files. In
118 addition, anyone using SOSI files on Linux should be able to
119 automatically recognise the format and web sites handing out SOSI
120 files can begin providing a more specific MIME type. So far, SOSI
121 files has been handed out from web sites using the
122 "application/octet-stream
" MIME type, which is just a nice way of
123 stating
"I do not know
". Soon, we will know. :)
</p
>
125 <p
>As usual, if you use Bitcoin and want to show your support of my
126 activities, please send Bitcoin donations to my address
127 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
132 <title>PlantUML for text based UML diagram modelling - nice free software
</title>
133 <link>http://people.skolelinux.org/pere/blog/PlantUML_for_text_based_UML_diagram_modelling___nice_free_software.html
</link>
134 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/PlantUML_for_text_based_UML_diagram_modelling___nice_free_software.html
</guid>
135 <pubDate>Mon,
25 Mar
2019 09:
35:
00 +
0100</pubDate>
136 <description><p
>As part of my involvement with the
137 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">Nikita
138 Noark
5 core project
</a
>, I have been proposing improvements to the
139 API specification created by
<a href=
"https://www.arkivverket.no/
">The
140 National Archives of Norway
</a
> and helped migrating the text from a
141 version control system unfriendly binary format (docx) to Markdown in
142 git. Combined with the migration to a public git repository (on
143 github), this has made it possible for anyone to suggest improvement
144 to the text.
</p
>
146 <p
>The specification is filled with UML diagrams. I believe the
147 original diagrams were modelled using Sparx Systems Enterprise
148 Architect, and exported as EMF files for import into docx. This
149 approach make it very hard to track changes using a version control
150 system. To improve the situation I have been looking for a good text
151 based UML format with associated command line free software tools on
152 Linux and Windows, to allow anyone to send in corrections to the UML
153 diagrams in the specification. The tool must be text based to work
154 with git, and command line to be able to run it automatically to
155 generate the diagram images. Finally, it must be free software to
156 allow anyone, even those that can not accept a non-free software
157 license, to contribute.
</p
>
159 <p
>I did not know much about free software UML modelling tools when I
160 started. I have used dia and inkscape for simple modelling in the
161 past, but neither are available on Windows, as far as I could tell. I
163 <a href=
"https://modeling-languages.com/text-uml-tools-complete-list/
">list
164 of text mode uml tools
</a
>, and tested out a few of the tools listed
165 there.
<a href=
"http://plantuml.com/
">The PlantUML tool
</a
> seemed
166 most promising. After verifying that the packages
167 <a href=
"https://tracker.debian.org/pkg/plantuml
">is available in
168 Debian
</a
> and found
<a href=
"https://github.com/plantuml/plantuml
">its
169 Java source
</a
> under a GPL license on github, I set out to test if it
170 could represent the diagrams we needed, ie the ones currently in
171 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
">the
172 Noark
5 Tjenestegrensesnitt specification
</a
>. I am happy to report
173 that it could represent them, even thought it have a few warts here
176 <p
>After a few days of modelling I completed the task this weekend. A
177 temporary link to the complete set of diagrams (original and from
178 PlantUML) is available in
179 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/
76">the
180 github issue discussing the need for a text based UML format
</a
>, but
181 please note I lack a sensible tool to convert EMF files to PNGs, so
182 the
"original
" rendering is not as good as the original was in the
183 publised PDF.
</p
>
185 <p
>Here is an example UML diagram, showing the core classes for
186 keeping metadata about archived documents:
</p
>
190 skinparam classAttributeIconSize
0
192 !include media/uml-class-arkivskaper.iuml
193 !include media/uml-class-arkiv.iuml
194 !include media/uml-class-klassifikasjonssystem.iuml
195 !include media/uml-class-klasse.iuml
196 !include media/uml-class-arkivdel.iuml
197 !include media/uml-class-mappe.iuml
198 !include media/uml-class-merknad.iuml
199 !include media/uml-class-registrering.iuml
200 !include media/uml-class-basisregistrering.iuml
201 !include media/uml-class-dokumentbeskrivelse.iuml
202 !include media/uml-class-dokumentobjekt.iuml
203 !include media/uml-class-konvertering.iuml
204 !include media/uml-datatype-elektronisksignatur.iuml
206 Arkivstruktur.Arkivskaper
"+arkivskaper
1..*
" <-o
"+arkiv
0..*
" Arkivstruktur.Arkiv
207 Arkivstruktur.Arkiv o--
> "+underarkiv
0..*
" Arkivstruktur.Arkiv
208 Arkivstruktur.Arkiv
"+arkiv
1" o--
> "+arkivdel
0..*
" Arkivstruktur.Arkivdel
209 Arkivstruktur.Klassifikasjonssystem
"+klassifikasjonssystem [
0.
.1]
" <--o
"+arkivdel
1..*
" Arkivstruktur.Arkivdel
210 Arkivstruktur.Klassifikasjonssystem
"+klassifikasjonssystem [
0.
.1]
" o--
> "+klasse
0..*
" Arkivstruktur.Klasse
211 Arkivstruktur.Arkivdel
"+arkivdel
0.
.1" o--
> "+mappe
0..*
" Arkivstruktur.Mappe
212 Arkivstruktur.Arkivdel
"+arkivdel
0.
.1" o--
> "+registrering
0..*
" Arkivstruktur.Registrering
213 Arkivstruktur.Klasse
"+klasse
0.
.1" o--
> "+mappe
0..*
" Arkivstruktur.Mappe
214 Arkivstruktur.Klasse
"+klasse
0.
.1" o--
> "+registrering
0..*
" Arkivstruktur.Registrering
215 Arkivstruktur.Mappe --
> "+undermappe
0..*
" Arkivstruktur.Mappe
216 Arkivstruktur.Mappe
"+mappe
0.
.1" o--
> "+registrering
0..*
" Arkivstruktur.Registrering
217 Arkivstruktur.Merknad
"+merknad
0..*
" <--* Arkivstruktur.Mappe
218 Arkivstruktur.Merknad
"+merknad
0..*
" <--* Arkivstruktur.Dokumentbeskrivelse
219 Arkivstruktur.Basisregistrering -|
> Arkivstruktur.Registrering
220 Arkivstruktur.Merknad
"+merknad
0..*
" <--* Arkivstruktur.Basisregistrering
221 Arkivstruktur.Registrering
"+registrering
1..*
" o--
> "+dokumentbeskrivelse
0..*
" Arkivstruktur.Dokumentbeskrivelse
222 Arkivstruktur.Dokumentbeskrivelse
"+dokumentbeskrivelse
1" o-
> "+dokumentobjekt
0..*
" Arkivstruktur.Dokumentobjekt
223 Arkivstruktur.Dokumentobjekt *-
> "+konvertering
0..*
" Arkivstruktur.Konvertering
224 Arkivstruktur.ElektroniskSignatur -[hidden]-
> Arkivstruktur.Dokumentobjekt
228 <p
><a href=
"http://plantuml.com/class-diagram
">The format
</a
> is quite
229 compact, with little redundant information. The text expresses
230 entities and relations, and there is little layout related fluff. One
231 can reuse content by using include files, allowing for consistent
232 naming across several diagrams. The include files can be standalone
233 PlantUML too. Here is the content of
234 <tt
>media/uml-class-arkivskaper.iuml
<tt
>:
</p
>
238 class Arkivstruktur.Arkivskaper
<Arkivenhet
> {
239 +arkivskaperID : string
240 +arkivskaperNavn : string
241 +beskrivelse : string [
0.
.1]
246 <p
>This is what the complete diagram for the PlantUML notation above
249 <p
><img width=
"80%
" src=
"http://people.skolelinux.org/pere/blog/images/
2019-
03-
25-noark5-plantuml-diagrameksempel.png
"></p
>
251 <p
>A cool feature of PlantUML is that the generated PNG files include
252 the entire original source diagram as text. The source (with include
253 statements expanded) can be extracted using for example
254 <tt
>exiftool
</tt
>. Another cool feature is that parts of the entities
255 can be hidden after inclusion. This allow to use include files with
256 all attributes listed, even for UML diagrams that should not list any
257 attributes.
</p
>
259 <p
>The diagram also show some of the warts. Some times the layout
260 engine place text labels on top of each other, and some times it place
261 the class boxes too close to each other, not leaving room for the
262 labels on the relationship arrows. The former can be worked around by
263 placing extra newlines in the labes (ie
"\n
"). I did not do it here
264 to be able to demonstrate the issue. I have not found a good way
265 around the latter, so I normally try to reduce the problem by changing
266 from vertical to horizontal links to improve the layout.
</p
>
268 <p
>All in all, I am quite happy with PlantUML, and very impressed with
269 how quickly its lead developer responds to questions. So far I got an
270 answer to my questions in a few hours when I send an email. I
271 definitely recommend looking at PlantUML if you need to make UML
272 diagrams. Note, PlantUML can draw a lot more than class relations.
273 Check out the documention for a complete list. :)
</p
>
275 <p
>As usual, if you use Bitcoin and want to show your support of my
276 activities, please send Bitcoin donations to my address
277 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
282 <title>Release
0.3 of free software archive API system Nikita announced
</title>
283 <link>http://people.skolelinux.org/pere/blog/Release_0_3_of_free_software_archive_API_system_Nikita_announced.html
</link>
284 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Release_0_3_of_free_software_archive_API_system_Nikita_announced.html
</guid>
285 <pubDate>Sun,
24 Mar
2019 14:
30:
00 +
0100</pubDate>
286 <description><p
>Yesterday, a new release of
287 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">Nikita
288 Noark
5 core project
</a
> was
289 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/
2019-March/
000451.html
">announced
290 on the project mailing list
</a
>. The free software solution is an
291 implementation of the Norwegian archive standard Noark
5 used by
292 government offices in Norway. These were the changes in version
0.3
293 since version
0.2.1 (from NEWS.md):
</p
>
296 <li
>Improved ClassificationSystem and Class behaviour.
</li
>
297 <li
>Tidied up known inconsistencies between domain model and hateaos links.
</li
>
298 <li
>Added experimental code for blockchain integration.
</li
>
299 <li
>Make token expiry time configurable at upstart from properties file.
</li
>
300 <li
>Continued work on OData search syntax.
</li
>
301 <li
>Started work on pagination for entities, partly implemented for Saksmappe.
</li
>
302 <li
>Finalise ClassifiedCode Metadata entity.
</li
>
303 <li
>Implement mechanism to check if authentication token is still
304 valid. This allow the GUI to return a more sensible message to the
305 user if the token is expired.
</li
>
306 <li
>Reintroduce browse.html page to allow user to browse JSON API using
307 hateoas links.
</li
>
308 <li
>Fix bug in handling file/mappe sequence number. Year change was
309 not properly handled.
</li
>
310 <li
>Update application yml files to be in sync with current development.
</li
>
311 <li
>Stop
'converting
' everything to PDF using libreoffice. Only
312 convert the file formats doc, ppt, xls, docx, pptx, xlsx, odt, odp
314 <li
>Continued code style fixing, making code more readable.
</li
>
315 <li
>Minor bug fixes.
</li
>
319 <p
>If free and open standardized archiving API sound interesting to
320 you, please contact us on IRC
321 (
<a href=
"irc://irc.freenode.net/%
23nikita
">#nikita on
322 irc.freenode.net
</a
>) or email
323 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">nikita-noark
324 mailing list
</a
>).
</p
>
326 <p
>As usual, if you use Bitcoin and want to show your support of my
327 activities, please send Bitcoin donations to my address
328 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
333 <title>Åpen og gjennomsiktig vedlikehold av spesifikasjonen for Noark
5 Tjenestegrensesnitt
</title>
334 <link>http://people.skolelinux.org/pere/blog/_pen_og_gjennomsiktig_vedlikehold_av_spesifikasjonen_for_Noark_5_Tjenestegrensesnitt.html
</link>
335 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/_pen_og_gjennomsiktig_vedlikehold_av_spesifikasjonen_for_Noark_5_Tjenestegrensesnitt.html
</guid>
336 <pubDate>Mon,
11 Mar
2019 16:
00:
00 +
0100</pubDate>
337 <description><p
>Et virksomhetsarkiv for meg, er et arbeidsverktøy der en enkelt kan
338 finne informasjonen en trenger når en trenger det, og der
339 virksomhetens samlede kunnskap er tilgjengelig. Det må være greit å
340 finne frem i, litt som en bibliotek. Men der et bibliotek gjerne tar
341 vare på offentliggjort informasjon som er tilgjengelig flere steder,
342 tar et arkiv vare på virksomhetsintern og til tider personlig
343 informasjon som ofte kun er tilgjengelig fra et sted.
</p
>
345 <p
>Jeg mistenker den eneste måten å sikre at arkivet inneholder den
346 samlede kunnskapen i en virksomhet, er å bruke det som virksomhetens
347 kunnskapslager. Det innebærer å automatisk kopiere (brev, epost,
348 SMS-er etc) inn i arkivet når de sendes og mottas, og der filtrere
349 vekk det en ikke vil ta vare på, og legge på metadata om det som er
350 samlet inn for enkel gjenfinning. En slik bruk av arkivet innebærer at
351 arkivet er en del av daglig virke, ikke at det er siste hvilested for
352 informasjon ingen lenger har daglig bruk for. For å kunne være en del
353 av det daglige virket må arkivet enkelt kunne integreres med andre
354 systemer. I disse dager betyr det å tilby arkivet som en
355 nett-tjeneste til hele virksomheten, tilgjengelig for både mennesker
356 og datamaskiner. Det betyr i tur å både tilby nettsider og et
357 maskinlesbart grensesnitt.
</p
>
359 <p
>For noen år siden erkjente visjonære arkivarer fordelene med et
360 standardisert maskinlesbart grensesnitt til organisasjonens arkiv. De
361 gikk igang med å lage noe de kalte
362 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
">Noark
363 5 Tjenestegrensesnitt
</a
>. Gjort riktig, så åpner slike maskinlesbare
364 grensesnitt for samvirke på tvers av uavhengige programvaresystemer.
365 Gjort feil, vil det blokkere for samvirke og bidra til
366 leverandørinnlåsing. For å gjøre det riktig så må grensesnittet være
367 klart og entydig beskrevet i en spesifikasjon som gjør at
368 spesifikasjonen tolkes på samme måte uavhengig av hvem som leser den,
369 og uavhengig av hvem som tar den i bruk.
</p
>
371 <p
>For å oppnå klare og entydige beskrivelser i en spesifikasjon, som
372 trengs for å kunne få en fri og åpen standard (se
373 <a href=
"http://people.skolelinux.org/pere/blog/Fri_og__pen_standard__slik_Digistan_ser_det.html
">Digistan-definisjon
</a
>),
374 så trengs det en åpen og gjennomsiktig inngangsport med lav terskel,
375 der de som forsøker å ta den i bruk enkelt kan få inn korreksjoner,
376 etterlyse klargjøringer og rapportere uklarheter i spesifikasjonen.
377 En trenger også automatiserte datasystemer som måler og sjekker at et
378 gitt grensesnitt fungerer i tråd med spesifikasjonen.
</p
>
380 <p
>For Noark
5 Tjenestegrensesnittet er det nå etablert en slik åpen
381 og gjennomsiktig inngangsport på prosjekttjenesten github. Denne
382 inngangsporten består først og fremst av en åpen portal som lar enhver
383 se hva som er gjort av endringer i spesifikasjonsteksten over tid, men
384 det hører også med et åpent
&quot;diskusjonsforum
&quot; der en kan
385 komme med endringsforslag og forespørsler om klargjøringer. Alle
386 registrerte brukere på github kan bidra med innspill til disse
387 henvendelsene.
</p
>
389 <p
>I samarbeide med Arkivverket har jeg fått opprettet et git-depot
390 med spesifikasjonsteksten for tjenestegrensesnittet, der det er lagt
391 inn historikk for endringer i teksten de siste årene, samt lagt inn
392 endringsforslag og forespørsler om klargjøring av teksten. Bakgrunnen
393 for at jeg bidro med dette er at jeg er involvert i
394 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core
">Nikita-prosjektet
</a
>,
395 som lager en fri programvare-utgave av Noark
5 Tjenestegrensesnitt.
396 Det er først når en forsøker å lage noe i tråd med en spesifikasjon at
397 en oppdager hvor mange detaljer som må beskrives i spesifikasjonen for
398 å sikre samhandling.
</p
>
400 <p
>Spesifikasjonen vedlikeholdes i et rent tekstformat, for å ha et
401 format egnet for versjonskontroll via versjontrollsystemet git. Dette
402 gjør det både enkelt å se konkret hvilke endringer som er gjort når,
403 samt gjør det praktisk mulig for enhver med github-konto å sende inn
404 endringsforslag med formuleringer til spesifikasjonsteksten. Dette
405 tekstformatet vises frem som nettsider på github, slik at en ikke
406 trenger spesielle verktøy for å se på siste utgave av
407 spesifikasjonen.
</p
>
409 <p
>Fra dette rene tekstformatet kan det så avledes ulike formater, som
410 HTML for websider, PDF for utskrift på papir og ePub for lesing med
411 ebokleser. Avlednings-systemet (byggesystemet) bruker i dag
412 verktøyene pandoc, latex, docbook-xsl og GNU make til
413 transformasjonen. Tekstformatet som brukes dag er
414 <a href=
"https://www.markdownguide.org/
">Markdown
</a
>, men det vurderes
416 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/
9">endre
417 til formatet RST
</a
> i fremtiden for bedre styring av utseende på
418 PDF-utgaven.
</p
>
420 <p
>Versjonskontrollsystemet git ble valgt da det er både fleksibelt,
421 avansert og enkelt å ta i bruk. Github ble valgt (foran f.eks. Gitlab
422 som vi bruker i Nikita), da Arkivverket allerede hadde tatt i bruk
423 Github i andre sammenhenger.
</p
>
425 <p
>Enkle endringer i teksten kan gjøres av priviligerte brukere
426 direkte i nettsidene til Github, ved å finne aktuell fil som skal
427 endres (f.eks. kapitler/
03-konformitet.md), klikke på den lille
428 bokstaven i høyre hjørne over teksten. Det kommer opp en nettside der
429 en kan endre teksten slik en ønsker. Når en er fornøyd med endringen
430 så må endringen
&quot;sjekkes inn
&quot; i historikken. Det gjøres ved
431 å gi en kort beskrivelse av endringen (beskriv helst hvorfor endringen
432 trengs, ikke hva som er endret), under overskriften
&quot;Commit
433 changes
&quot;. En kan og bør legge inn en lengre forklaring i det
434 større skrivefeltet, før en velger om endringen skal sendes direkte
435 til
'master
'-grenen (dvs. autorativ utgave av spesifikasjonen) eller
436 om en skal lage en ny gren for denne endringen og opprette en
437 endringsforespørsel (aka
&quot;Pull Request
&quot;/PR). Når alt dette
438 er gjort kan en velge
&quot;Commit changes
&quot; for å sende inn
439 endringen. Hvis den er lagt inn i
&quot;master
&quot;-grenen så er den
440 en offisiell del av spesifikasjonen med en gang. Hvis den derimot er
441 en endringsforespørsel, så legges den inn i
442 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/pulls
">listen
443 over forslag til endringer
</a
> som venter på korrekturlesing og
444 godkjenning.
</p
>
446 <p
>Større endringer (for eksempel samtidig endringer i flere filer)
447 gjøres enklest ved å hente ned en kopi av git-depoet lokalt og gjøre
448 endringene der før endringsforslaget sendes inn. Denne prosessen er
449 godt beskrivet i dokumentasjon fra github. Git-prosjektet som skal
450 &quot;klones
&quot; er
451 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
</a
>.
</p
>
453 <p
>For å registrere nye utfordringer (issues) eller kommentere på
454 eksisterende utfordringer benyttes nettsiden
455 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues
">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues
</a
>.
456 I skrivende stund er det
48 åpne og
11 avsluttede utfordringer. Et
457 forslag til hva som bør være med når en beskriver en utfordring er
458 tilgjengelig som utfordring
459 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/
14">#
14</a
>.
</p
>
461 <p
>For å bygge en PDF-utgave av spesifikasjonen så bruker jeg i dag en
462 Debian GNU/Linux-maskin med en rekke programpakker installert. Når
463 dette er på plass, så holder det å kjøre kommandoen
'make pdf html
' på
464 kommandolinjen, vente ca.
20 sekunder, før spesifikasjon.pdf og
465 spesifikasjon.html ligger klar på disken. Verktøyene for bygging av
466 PDF, HTML og ePub-utgave er også tilgjengelig på Windows og
469 <p
>Github bidrar med rammeverket. Men for at åpent vedlikehold av
470 spesifikasjonen skal fungere, så trengs det folk som bidrar med sin
471 tid og kunnskap. Arkivverket har sagt de skal bidra med innspill og
472 godkjenne forslag til endringer, men det blir størst suksess hvis alle
473 som bruker og lager systemer basert på Noark
5 Tjenestegrensesnitt
474 bidrar med sin kunnskap og kommer med forslag til forebedringer. Jeg
475 stiller. Blir du med?
</p
>
477 <p
>Det er viktig å legge til rette for åpen diskusjon blant alle
478 interesserte, som ikke krever at en må godta lange kontrakter med
479 vilkår for deltagelse. Inntil Arkivverket dukker opp på IRC har vi
480 laget en IRC-kanal der interesserte enkelt kan orientere seg og
481 diskutere tjenestegrensesnittet. Alle er velkommen til å ta turen
483 <a href=
"https://webchat.freenode.net/?channels=nikita
">#nikita
</a
>
484 (f.eks. via irc.freenode.net) for å møte likesinnede.
</p
>
486 <p
>Det holder dog ikke å ha en god spesifikasjon, hvis ikke de som tar
487 den i bruk gjør en like god jobb. For å automatisk teste om et konkret
488 tjenestegrensesnitt følger (min) forståelse av
489 spesifikasjonsdokumentet, har jeg skrevet et program som kobler seg
490 opp til et Noark
5v4 REST-tjeneste og tester alt den finner for å se
491 om det er i henhold til min tolkning av spesifikasjonen. Dette
492 verktøyet er tilgjengelig fra
493 <a href=
"https://github.com/petterreinholdtsen/noark5-tester
">https://github.com/petterreinholdtsen/noark5-tester
</a
>,
494 og brukes daglig mens vi utvikler Nikita for å sikre at vi ikke
495 introduserer nye feil. Hvis en skal sikre samvirke på tvers av ulike
496 systemer er det helt essensielt å kunne raskt og automatisk sjekke at
497 tjenestegrensesnittet oppfører seg som forventet. Jeg håper andre som
498 lager sin utgave av tjenestegrensesnittet vi bruke dette verktøyet,
499 slik at vi tidlig og raskt kan oppdage hvor vi har tolket
500 spesifikasjonen ulikt, og dermed få et godt grunnlag for å gjøre
501 spesifikasjonsteksten enda klarere og bedre.
</p
>
503 <p
>Dagens beskrivelse av Noark
5 Tjenestegrensesnitt er et svært godt
504 utgangspunkt for å gjøre virksomhetens arkiv til et dynamisk og
505 sentralt arbeidsverktøy i organisasjonen. Blir du med å gjøre den
506 enda bedre?
</p
>
511 <title>Time for an official MIME type for patches?
</title>
512 <link>http://people.skolelinux.org/pere/blog/Time_for_an_official_MIME_type_for_patches_.html
</link>
513 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Time_for_an_official_MIME_type_for_patches_.html
</guid>
514 <pubDate>Thu,
1 Nov
2018 08:
15:
00 +
0100</pubDate>
515 <description><p
>As part of my involvement in
516 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core
">the Nikita
517 archive API project
</a
>, I
've been importing a fairly large lump of
518 emails into a test instance of the archive to see how well this would
519 go. I picked a subset of
<a href=
"https://notmuchmail.org/
">my
520 notmuch email database
</a
>, all public emails sent to me via
521 @lists.debian.org, giving me a set of around
216 000 emails to import.
522 In the process, I had a look at the various attachments included in
523 these emails, to figure out what to do with attachments, and noticed
524 that one of the most common attachment formats do not have
525 <a href=
"https://www.iana.org/assignments/media-types/media-types.xhtml
">an
526 official MIME type
</a
> registered with IANA/IETF. The output from
527 diff, ie the input for patch, is on the top
10 list of formats
528 included in these emails. At the moment people seem to use either
529 text/x-patch or text/x-diff, but neither is officially registered. It
530 would be better if one official MIME type were registered and used
531 everywhere.
</p
>
533 <p
>To try to get one official MIME type for these files, I
've brought
535 <a href=
"https://www.ietf.org/mailman/listinfo/media-types
">the
536 media-types mailing list
</a
>. If you are interested in discussion
537 which MIME type to use as the official for patch files, or involved in
538 making software using a MIME type for patches, perhaps you would like
539 to join the discussion?
</p
>
541 <p
>As usual, if you use Bitcoin and want to show your support of my
542 activities, please send Bitcoin donations to my address
543 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
548 <title>Release
0.2 of free software archive system Nikita announced
</title>
549 <link>http://people.skolelinux.org/pere/blog/Release_0_2_of_free_software_archive_system_Nikita_announced.html
</link>
550 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Release_0_2_of_free_software_archive_system_Nikita_announced.html
</guid>
551 <pubDate>Thu,
18 Oct
2018 14:
40:
00 +
0200</pubDate>
552 <description><p
>This morning, the new release of the
553 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/
">Nikita
554 Noark
5 core project
</a
> was
555 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/
2018-October/
000406.html
">announced
556 on the project mailing list
</a
>. The free software solution is an
557 implementation of the Norwegian archive standard Noark
5 used by
558 government offices in Norway. These were the changes in version
0.2
559 since version
0.1.1 (from NEWS.md):
562 <li
>Fix typos in REL names
</li
>
563 <li
>Tidy up error message reporting
</li
>
564 <li
>Fix issue where we used Integer.valueOf(), not Integer.getInteger()
</li
>
565 <li
>Change some String handling to StringBuffer
</li
>
566 <li
>Fix error reporting
</li
>
567 <li
>Code tidy-up
</li
>
568 <li
>Fix issue using static non-synchronized SimpleDateFormat to avoid
569 race conditions
</li
>
570 <li
>Fix problem where deserialisers were treating integers as strings
</li
>
571 <li
>Update methods to make them null-safe
</li
>
572 <li
>Fix many issues reported by coverity
</li
>
573 <li
>Improve equals(), compareTo() and hash() in domain model
</li
>
574 <li
>Improvements to the domain model for metadata classes
</li
>
575 <li
>Fix CORS issues when downloading document
</li
>
576 <li
>Implementation of case-handling with registryEntry and document upload
</li
>
577 <li
>Better support in Javascript for OPTIONS
</li
>
578 <li
>Adding concept description of mail integration
</li
>
579 <li
>Improve setting of default values for GET on ny-journalpost
</li
>
580 <li
>Better handling of required values during deserialisation
</li
>
581 <li
>Changed tilknyttetDato (M620) from date to dateTime
</li
>
582 <li
>Corrected some opprettetDato (M600) (de)serialisation errors.
</li
>
583 <li
>Improve parse error reporting.
</li
>
584 <li
>Started on OData search and filtering.
</li
>
585 <li
>Added Contributor Covenant Code of Conduct to project.
</li
>
586 <li
>Moved repository and project from Github to Gitlab.
</li
>
587 <li
>Restructured repository, moved code into src/ and web/.
</li
>
588 <li
>Updated code to use Spring Boot version
2.
</li
>
589 <li
>Added support for OAuth2 authentication.
</li
>
590 <li
>Fixed several bugs discovered by Coverity.
</li
>
591 <li
>Corrected handling of date/datetime fields.
</li
>
592 <li
>Improved error reporting when rejecting during deserializatoin.
</li
>
593 <li
>Adjusted default values provided for ny-arkivdel, ny-mappe,
594 ny-saksmappe, ny-journalpost and ny-dokumentbeskrivelse.
</li
>
595 <li
>Several fixes for korrespondansepart*.
</li
>
596 <li
>Updated web GUI:
598 <li
>Now handle both file upload and download.
</li
>
599 <li
>Uses new OAuth2 authentication for login.
</li
>
600 <li
>Forms now fetches default values from API using GET.
</li
>
601 <li
>Added RFC
822 (email), TIFF and JPEG to list of possible file formats.
</li
>
602 </ul
></li
>
605 <p
>The changes and improvements are extensive. Running diffstat on
606 the changes between git tab
0.1.1 and
0.2 show
1098 files changed,
607 108666 insertions(+),
54066 deletions(-).
</p
>
609 <p
>If free and open standardized archiving API sound interesting to
610 you, please contact us on IRC
611 (
<a href=
"irc://irc.freenode.net/%
23nikita
">#nikita on
612 irc.freenode.net
</a
>) or email
613 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">nikita-noark
614 mailing list
</a
>).
</p
>
616 <p
>As usual, if you use Bitcoin and want to show your support of my
617 activities, please send Bitcoin donations to my address
618 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
623 <title>Fetching trusted timestamps using the rfc3161ng python module
</title>
624 <link>http://people.skolelinux.org/pere/blog/Fetching_trusted_timestamps_using_the_rfc3161ng_python_module.html
</link>
625 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Fetching_trusted_timestamps_using_the_rfc3161ng_python_module.html
</guid>
626 <pubDate>Mon,
8 Oct
2018 12:
30:
00 +
0200</pubDate>
627 <description><p
>I have earlier covered the basics of trusted timestamping using the
628 'openssl ts
' client. See blog post for
629 <a href=
"http://people.skolelinux.org/pere/blog/Public_Trusted_Timestamping_services_for_everyone.html
">2014</a
>,
630 <a href=
"http://people.skolelinux.org/pere/blog/syslog_trusted_timestamp___chain_of_trusted_timestamps_for_your_syslog.html
">2016</a
>
632 <a href=
"http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html
">2017</a
>
633 for those stories. But some times I want to integrate the timestamping
634 in other code, and recently I needed to integrate it into Python.
635 After searching a bit, I found
636 <a href=
"https://dev.entrouvert.org/projects/python-rfc3161
">the
637 rfc3161 library
</a
> which seemed like a good fit, but I soon
638 discovered it only worked for python version
2, and I needed something
639 that work with python version
3. Luckily I next came across
640 <a href=
"https://github.com/trbs/rfc3161ng/
">the rfc3161ng library
</a
>,
641 a fork of the original rfc3161 library. Not only is it working with
642 python
3, it have fixed a few of the bugs in the original library, and
643 it has an active maintainer. I decided to wrap it up and make it
644 <a href=
"https://tracker.debian.org/pkg/python-rfc3161ng
">available in
645 Debian
</a
>, and a few days ago it entered Debian unstable and testing.
</p
>
647 <p
>Using the library is fairly straight forward. The only slightly
648 problematic step is to fetch the required certificates to verify the
649 timestamp. For some services it is straight forward, while for others
650 I have not yet figured out how to do it. Here is a small standalone
651 code example based on of the integration tests in the library code:
</p
>
658 Python
3 script demonstrating how to use the rfc3161ng module to
659 get trusted timestamps.
661 The license of this code is the same as the license of the rfc3161ng
667 import pyasn1.codec.der
671 import urllib.request
678 def fetch(url, f=None):
679 response = urllib.request.urlopen(url)
680 data = response.read()
686 with tempfile.NamedTemporaryFile() as cert_f,\
687 tempfile.NamedTemporaryFile() as ca_f,\
688 tempfile.NamedTemporaryFile() as msg_f,\
689 tempfile.NamedTemporaryFile() as tsr_f:
691 # First fetch certificates used by service
692 certificate_data = fetch(
'https://freetsa.org/files/tsa.crt
', cert_f)
693 ca_data_data = fetch(
'https://freetsa.org/files/cacert.pem
', ca_f)
695 # Then timestamp the message
697 rfc3161ng.RemoteTimestamper(
'http://freetsa.org/tsr
',
698 certificate=certificate_data)
699 data = b
"Python forever!\n
"
700 tsr = timestamper(data=data, return_tsr=True)
702 # Finally, convert message and response to something
'openssl ts
' can verify
704 store(tsr_f, pyasn1.codec.der.encoder.encode(tsr))
705 args = [
"openssl
",
"ts
",
"-verify
",
706 "-data
", msg_f.name,
707 "-in
", tsr_f.name,
708 "-CAfile
", ca_f.name,
709 "-untrusted
", cert_f.name]
710 subprocess.check_call(args)
712 if
'__main__
' == __name__:
716 <p
>The code fetches the required certificates, store them as temporary
717 files, timestamp a simple message, store the message and timestamp to
718 disk and ask
'openssl ts
' to verify the timestamp. A timestamp is
719 around
1.5 kiB in size, and should be fairly easy to store for future
722 <p
>As usual, if you use Bitcoin and want to show your support of my
723 activities, please send Bitcoin donations to my address
724 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
729 <title>Release
0.1.1 of free software archive system Nikita announced
</title>
730 <link>http://people.skolelinux.org/pere/blog/Release_0_1_1_of_free_software_archive_system_Nikita_announced.html
</link>
731 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Release_0_1_1_of_free_software_archive_system_Nikita_announced.html
</guid>
732 <pubDate>Sat,
10 Jun
2017 00:
40:
00 +
0200</pubDate>
733 <description><p
>I am very happy to report that the
734 <a href=
"https://github.com/hiOA-ABI/nikita-noark5-core
">Nikita Noark
5
735 core project
</a
> tagged its second release today. The free software
736 solution is an implementation of the Norwegian archive standard Noark
737 5 used by government offices in Norway. These were the changes in
738 version
0.1.1 since version
0.1.0 (from NEWS.md):
742 <li
>Continued work on the angularjs GUI, including document upload.
</li
>
743 <li
>Implemented correspondencepartPerson, correspondencepartUnit and
744 correspondencepartInternal
</li
>
745 <li
>Applied for coverity coverage and started submitting code on
746 regualr basis.
</li
>
747 <li
>Started fixing bugs reported by coverity
</li
>
748 <li
>Corrected and completed HATEOAS links to make sure entire API is
749 available via URLs in _links.
</li
>
750 <li
>Corrected all relation URLs to use trailing slash.
</li
>
751 <li
>Add initial support for storing data in ElasticSearch.
</li
>
752 <li
>Now able to receive and store uploaded files in the archive.
</li
>
753 <li
>Changed JSON output for object lists to have relations in _links.
</li
>
754 <li
>Improve JSON output for empty object lists.
</li
>
755 <li
>Now uses correct MIME type application/vnd.noark5-v4+json.
</li
>
756 <li
>Added support for docker container images.
</li
>
757 <li
>Added simple API browser implemented in JavaScript/Angular.
</li
>
758 <li
>Started on archive client implemented in JavaScript/Angular.
</li
>
759 <li
>Started on prototype to show the public mail journal.
</li
>
760 <li
>Improved performance by disabling Sprint FileWatcher.
</li
>
761 <li
>Added support for
'arkivskaper
',
'saksmappe
' and
'journalpost
'.
</li
>
762 <li
>Added support for some metadata codelists.
</li
>
763 <li
>Added support for Cross-origin resource sharing (CORS).
</li
>
764 <li
>Changed login method from Basic Auth to JSON Web Token (RFC
7519)
766 <li
>Added support for GET-ing ny-* URLs.
</li
>
767 <li
>Added support for modifying entities using PUT and eTag.
</li
>
768 <li
>Added support for returning XML output on request.
</li
>
769 <li
>Removed support for English field and class names, limiting ourself
770 to the official names.
</li
>
771 <li
>...
</li
>
775 <p
>If this sound interesting to you, please contact us on IRC (#nikita
776 on irc.freenode.net) or email
777 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">nikita-noark
778 mailing list).
</p
>
783 <title>Idea for storing trusted timestamps in a Noark
5 archive
</title>
784 <link>http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html
</link>
785 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html
</guid>
786 <pubDate>Wed,
7 Jun
2017 21:
40:
00 +
0200</pubDate>
787 <description><p
><em
>This is a copy of
788 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/
2017-June/
000297.html
">an
789 email I posted to the nikita-noark mailing list
</a
>. Please follow up
790 there if you would like to discuss this topic. The background is that
791 we are making a free software archive system based on the Norwegian
792 <a href=
"https://www.arkivverket.no/forvaltning-og-utvikling/regelverk-og-standarder/noark-standarden
">Noark
793 5 standard
</a
> for government archives.
</em
></p
>
795 <p
>I
've been wondering a bit lately how trusted timestamps could be
797 <a href=
"https://en.wikipedia.org/wiki/Trusted_timestamping
">Trusted
798 timestamps
</a
> can be used to verify that some information
799 (document/file/checksum/metadata) have not been changed since a
800 specific time in the past. This is useful to verify the integrity of
801 the documents in the archive.
</p
>
803 <p
>Then it occured to me, perhaps the trusted timestamps could be
804 stored as dokument variants (ie dokumentobjekt referered to from
805 dokumentbeskrivelse) with the filename set to the hash it is
808 <p
>Given a
"dokumentbeskrivelse
" with an associated
"dokumentobjekt
",
809 a new dokumentobjekt is associated with
"dokumentbeskrivelse
" with the
810 same attributes as the stamped dokumentobjekt except these
811 attributes:
</p
>
815 <li
>format -
> "RFC3161
"
816 <li
>mimeType -
> "application/timestamp-reply
"
817 <li
>formatDetaljer -
> "&lt;source URL for timestamp service
&gt;
"
818 <li
>filenavn -
> "&lt;sjekksum
&gt;.tsr
"
822 <p
>This assume a service following
823 <a href=
"https://tools.ietf.org/html/rfc3161
">IETF RFC
3161</a
> is
824 used, which specifiy the given MIME type for replies and the .tsr file
825 ending for the content of such trusted timestamp. As far as I can
826 tell from the Noark
5 specifications, it is OK to have several
827 variants/renderings of a dokument attached to a given
828 dokumentbeskrivelse objekt. It might be stretching it a bit to make
829 some of these variants represent crypto-signatures useful for
830 verifying the document integrity instead of representing the dokument
833 <p
>Using the source of the service in formatDetaljer allow several
834 timestamping services to be used. This is useful to spread the risk
835 of key compromise over several organisations. It would only be a
836 problem to trust the timestamps if all of the organisations are
837 compromised.
</p
>
839 <p
>The following oneliner on Linux can be used to generate the tsr
840 file. $input is the path to the file to checksum, and $sha256 is the
841 SHA-
256 checksum of the file (ie the
"<sjekksum
>.tsr
" value mentioned
844 <p
><blockquote
><pre
>
845 openssl ts -query -data
"$inputfile
" -cert -sha256 -no_nonce \
846 | curl -s -H
"Content-Type: application/timestamp-query
" \
847 --data-binary
"@-
" http://zeitstempel.dfn.de
> $sha256.tsr
848 </pre
></blockquote
></p
>
850 <p
>To verify the timestamp, you first need to download the public key
851 of the trusted timestamp service, for example using this command:
</p
>
853 <p
><blockquote
><pre
>
854 wget -O ca-cert.txt \
855 https://pki.pca.dfn.de/global-services-ca/pub/cacert/chain.txt
856 </pre
></blockquote
></p
>
858 <p
>Note, the public key should be stored alongside the timestamps in
859 the archive to make sure it is also available
100 years from now. It
860 is probably a good idea to standardise how and were to store such
861 public keys, to make it easier to find for those trying to verify
862 documents
100 or
1000 years from now. :)
</p
>
864 <p
>The verification itself is a simple openssl command:
</p
>
866 <p
><blockquote
><pre
>
867 openssl ts -verify -data $inputfile -in $sha256.tsr \
868 -CAfile ca-cert.txt -text
869 </pre
></blockquote
></p
>
871 <p
>Is there any reason this approach would not work? Is it somehow against
872 the Noark
5 specification?
</p
>
877 <title>Epost inn som arkivformat i Riksarkivarens forskrift?
</title>
878 <link>http://people.skolelinux.org/pere/blog/Epost_inn_som_arkivformat_i_Riksarkivarens_forskrift_.html
</link>
879 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Epost_inn_som_arkivformat_i_Riksarkivarens_forskrift_.html
</guid>
880 <pubDate>Thu,
27 Apr
2017 11:
30:
00 +
0200</pubDate>
881 <description><p
>I disse dager, med frist
1. mai, har Riksarkivaren ute en høring på
882 sin forskrift. Som en kan se er det ikke mye tid igjen før fristen
883 som går ut på søndag. Denne forskriften er det som lister opp hvilke
884 formater det er greit å arkivere i
885 <a href=
"http://www.arkivverket.no/arkivverket/Offentleg-forvalting/Noark/Noark-
5">Noark
886 5-løsninger
</a
> i Norge.
</p
>
888 <p
>Jeg fant høringsdokumentene hos
889 <a href=
"https://www.arkivrad.no/aktuelt/riksarkivarens-forskrift-pa-horing
">Norsk
890 Arkivråd
</a
> etter å ha blitt tipset på epostlisten til
891 <a href=
"https://github.com/hiOA-ABI/nikita-noark5-core
">fri
892 programvareprosjektet Nikita Noark5-Core
</a
>, som lager et Noark
5
893 Tjenestegresesnitt. Jeg er involvert i Nikita-prosjektet og takket
894 være min interesse for tjenestegrensesnittsprosjektet har jeg lest en
895 god del Noark
5-relaterte dokumenter, og til min overraskelse oppdaget
896 at standard epost ikke er på listen over godkjente formater som kan
897 arkiveres. Høringen med frist søndag er en glimrende mulighet til å
898 forsøke å gjøre noe med det. Jeg holder på med
899 <a href=
"https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/hoering-arkivforskrift.tex
">egen
900 høringsuttalelse
</a
>, og lurer på om andre er interessert i å støtte
901 forslaget om å tillate arkivering av epost som epost i arkivet.
</p
>
903 <p
>Er du igang med å skrive egen høringsuttalelse allerede? I så fall
904 kan du jo vurdere å ta med en formulering om epost-lagring. Jeg tror
905 ikke det trengs så mye. Her et kort forslag til tekst:
</p
>
907 <p
><blockquote
>
909 <p
>Viser til høring sendt ut
2017-
02-
17 (Riksarkivarens referanse
910 2016/
9840 HELHJO), og tillater oss å sende inn noen innspill om
911 revisjon av Forskrift om utfyllende tekniske og arkivfaglige
912 bestemmelser om behandling av offentlige arkiver (Riksarkivarens
913 forskrift).
</p
>
915 <p
>Svært mye av vår kommuikasjon foregår i dag på e-post. Vi
916 foreslår derfor at Internett-e-post, slik det er beskrevet i IETF
918 <a href=
"https://tools.ietf.org/html/rfc5322
">https://tools.ietf.org/html/rfc5322
</a
>. bør
919 inn som godkjent dokumentformat. Vi foreslår at forskriftens
920 oversikt over godkjente dokumentformater ved innlevering i §
5-
16
921 endres til å ta med Internett-e-post.
</p
>
923 </blockquote
></p
>
925 <p
>Som del av arbeidet med tjenestegrensesnitt har vi testet hvordan
926 epost kan lagres i en Noark
5-struktur, og holder på å skrive et
927 forslag om hvordan dette kan gjøres som vil bli sendt over til
928 arkivverket så snart det er ferdig. De som er interesserte kan
929 <a href=
"https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/epostlagring.md
">følge
930 fremdriften på web
</a
>.
</p
>
932 <p
>Oppdatering
2017-
04-
28: I dag ble høringuttalelsen jeg skrev
933 <a href=
"https://www.nuug.no/news/NUUGs_h_ringuttalelse_til_Riksarkivarens_forskrift.shtml
">sendt
934 inn av foreningen NUUG
</a
>.
</p
>
939 <title>Free software archive system Nikita now able to store documents
</title>
940 <link>http://people.skolelinux.org/pere/blog/Free_software_archive_system_Nikita_now_able_to_store_documents.html
</link>
941 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Free_software_archive_system_Nikita_now_able_to_store_documents.html
</guid>
942 <pubDate>Sun,
19 Mar
2017 08:
00:
00 +
0100</pubDate>
943 <description><p
>The
<a href=
"https://github.com/hiOA-ABI/nikita-noark5-core
">Nikita
944 Noark
5 core project
</a
> is implementing the Norwegian standard for
945 keeping an electronic archive of government documents.
946 <a href=
"http://www.arkivverket.no/arkivverket/Offentlig-forvaltning/Noark/Noark-
5/English-version
">The
947 Noark
5 standard
</a
> document the requirement for data systems used by
948 the archives in the Norwegian government, and the Noark
5 web interface
949 specification document a REST web service for storing, searching and
950 retrieving documents and metadata in such archive. I
've been involved
951 in the project since a few weeks before Christmas, when the Norwegian
953 <a href=
"https://www.nuug.no/news/NOARK5_kjerne_som_fri_programvare_f_r_epostliste_hos_NUUG.shtml
">announced
954 it supported the project
</a
>. I believe this is an important project,
955 and hope it can make it possible for the government archives in the
956 future to use free software to keep the archives we citizens depend
957 on. But as I do not hold such archive myself, personally my first use
958 case is to store and analyse public mail journal metadata published
959 from the government. I find it useful to have a clear use case in
960 mind when developing, to make sure the system scratches one of my
963 <p
>If you would like to help make sure there is a free software
964 alternatives for the archives, please join our IRC channel
965 (
<a href=
"irc://irc.freenode.net/%
23nikita
">#nikita on
966 irc.freenode.net
</a
>) and
967 <a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark
">the
968 project mailing list
</a
>.
</p
>
970 <p
>When I got involved, the web service could store metadata about
971 documents. But a few weeks ago, a new milestone was reached when it
972 became possible to store full text documents too. Yesterday, I
973 completed an implementation of a command line tool
974 <tt
>archive-pdf
</tt
> to upload a PDF file to the archive using this
975 API. The tool is very simple at the moment, and find existing
976 <a href=
"https://en.wikipedia.org/wiki/Fonds
">fonds
</a
>, series and
977 files while asking the user to select which one to use if more than
978 one exist. Once a file is identified, the PDF is associated with the
979 file and uploaded, using the title extracted from the PDF itself. The
980 process is fairly similar to visiting the archive, opening a cabinet,
981 locating a file and storing a piece of paper in the archive. Here is
982 a test run directly after populating the database with test data using
983 our API tester:
</p
>
985 <p
><blockquote
><pre
>
986 ~/src//noark5-tester$ ./archive-pdf mangelmelding/mangler.pdf
987 using arkiv: Title of the test fonds created
2017-
03-
18T23:
49:
32.103446
988 using arkivdel: Title of the test series created
2017-
03-
18T23:
49:
32.103446
990 0 - Title of the test case file created
2017-
03-
18T23:
49:
32.103446
991 1 - Title of the test file created
2017-
03-
18T23:
49:
32.103446
992 Select which mappe you want (or search term):
0
993 Uploading mangelmelding/mangler.pdf
994 PDF title: Mangler i spesifikasjonsdokumentet for NOARK
5 Tjenestegrensesnitt
995 File
2017/
1: Title of the test case file created
2017-
03-
18T23:
49:
32.103446
996 ~/src//noark5-tester$
997 </pre
></blockquote
></p
>
999 <p
>You can see here how the fonds (arkiv) and serie (arkivdel) only had
1000 one option, while the user need to choose which file (mappe) to use
1001 among the two created by the API tester. The
<tt
>archive-pdf
</tt
>
1002 tool can be found in the git repository for the API tester.
</p
>
1004 <p
>In the project, I have been mostly working on
1005 <a href=
"https://github.com/petterreinholdtsen/noark5-tester
">the API
1006 tester
</a
> so far, while getting to know the code base. The API
1007 tester currently use
1008 <a href=
"https://en.wikipedia.org/wiki/HATEOAS
">the HATEOAS links
</a
>
1009 to traverse the entire exposed service API and verify that the exposed
1010 operations and objects match the specification, as well as trying to
1011 create objects holding metadata and uploading a simple XML file to
1012 store. The tester has proved very useful for finding flaws in our
1013 implementation, as well as flaws in the reference site and the
1014 specification.
</p
>
1016 <p
>The test document I uploaded is a summary of all the specification
1017 defects we have collected so far while implementing the web service.
1018 There are several unclear and conflicting parts of the specification,
1020 <a href=
"https://github.com/petterreinholdtsen/noark5-tester/tree/master/mangelmelding
">started
1021 writing down
</a
> the questions we get from implementing it. We use a
1022 format inspired by how
<a href=
"http://www.opengroup.org/austin/
">The
1023 Austin Group
</a
> collect defect reports for the POSIX standard with
1024 <a href=
"http://www.opengroup.org/austin/mantis.html
">their
1025 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
> :).
1027 <p
>The Nikita project is implemented using Java and Spring, and is
1028 fairly easy to get up and running using Docker containers for those
1029 that want to test the current code base. The API tester is
1030 implemented in Python.
</p
>
1035 <title>Hva «mangler» i OEP - litt statistikk utledet fra saksnummer og dokumentnummer
</title>
1036 <link>http://people.skolelinux.org/pere/blog/Hva__mangler__i_OEP___litt_statistikk_utledet_fra_saksnummer_og_dokumentnummer.html
</link>
1037 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Hva__mangler__i_OEP___litt_statistikk_utledet_fra_saksnummer_og_dokumentnummer.html
</guid>
1038 <pubDate>Thu,
29 Jan
2015 20:
30:
00 +
0100</pubDate>
1039 <description><p
>En ting jeg har lurt på når det gjelder offentlige postjournaler,
1040 er hvor stor andel av det som ligger i de interne databasene kommer
1041 ikke med i postjournalen. Dette er det mulig å finne ut basert på det
1042 som ligger i postjournalen. For å forstå hva jeg mener, trengs det
1043 litt bakgrunnsinformasjon. I henhold til
1044 <a href=
"http://www.arkivverket.no/arkivverket/Offentleg-forvalting/Noark
">NOARK-standarden
</a
>
1045 for norske offentlige arkiv skal enhver sak ha et årstall og et
1046 løpenummer, og ethvert dokument i saken skal gis et
1047 dokument-løpenummer. Det vil si at en ender opp med dokument-ID som
1048 ser ut som ÅÅÅÅ/SAKNR-DOKNR, f.eks.
2014/
2-
1 eller
2014/
12312-
14.
1049 Mange oppgir kun tosifret årstall, men prinsippet er det samme. Så
1050 vidt jeg vet skal saksnummer og dokumentnummer tildeles løpende og i
1051 stigende rekkefølge. Gitt en instans med følgende dokument-ID i
1052 postjournalen, så kan en regne ut hvor mye som ikke finnes i
1056 <li
>2014/
2-
1</li
>
1057 <li
>2014/
5-
1</li
>
1058 <li
>2014/
5-
3</li
>
1061 <p
>Her ser en at saksnummer
2 og
5 finnes i postjournalen, mens
1062 nummerene
1,
3 og
4 mangler. En ser også at i sak
2014/
5 mangler
1063 dokument
2. Ved hjelp av denne informasjonen har jeg regnet ut hvor
1064 stor andel av saksnummer og dokumentløpenummer som ikke har dukket opp
1065 i
<a href=
"https://www.oep.no/
">Offentlig Elektronisk Postjournal
</a
>
1066 (OEP). For saksnummer har jeg tatt utgangspunkt i at en ikke trenger
1067 å starte på
1, og dermed regnet med området fra laveste til høyeste
1068 saksnummer og talt antall unike saksnummer som forekommer i OEP. I
1069 dette tilfellet betyr de at
2 av
4 saksnummer er ubrukte (
50%). For
1070 dokumentløpenummer har jeg tilsvarende tatt utgangspunkt i laveste og
1071 høyeste kjente dokumentløpenummer, for å handtere databaser der jeg
1072 mangler komplett postjournal. For sak
2014/
5 her betyr det at
1 av
3
1073 dokumenter mangler (
33%).
</p
>
1075 <p
>Det er flere årsaker til at det kan bli hull i nummerseriene.
1076 Feilføring der et dokument tildeles et nytt saksnummer ved en feil, og
1077 deretter flyttes inn i riktig sak vil gi et ubrukt saksnummer, da
1078 saksnummer skal tildeles i stigende rekkefølge og en ikke får opprette
1079 nye saker innimellom gamle saker. Tilsvarende kan skje med
1080 dokument-løpenummer. Det er jo heller ikke sikkert at et saksnummer i
1081 OEP er det samme som løpenummeret som brukes som saksnummeret i
1082 instansens interne datasystem. Kanskje snakker vi om ulike ontologier
1083 der en delmengde av interne saksnummer tilsvarer saksnummer i OEP.
1084 Hvis like nummer også tildeles andre ting enn saker som skal til OEP
1085 vil en tilsvarende få «hull» i saksnumrene i postjournalen.
</p
>
1087 <p
>Jeg er litt usikker på hva denne statistikken egentlig viser, og
1088 heller ikke sikker på om det er reelt sett mangler i OEP (som kanskje
1089 kunne anses å være kritikkverdig), bare er resultatet av hendelige
1090 uhell i nummertildelingen eller resultat av ulik ontologi i OEP og
1091 instansens datasystem. Men jeg syntes tallene og variasjonen var så
1092 interessant at jeg hadde lyst til å dele dem med mine lesere. Jeg har
1093 sortert listen på prosent upubliserte saksnummer for
2014.
</p
>
1095 <table border=
"1">
1096 <tr
><th colspan=
"6">Saksnummer
</th
><th colspan=
"3">Dokumentnummer
</th
><th rowspan=
"3">Instans
</th
></tr
>
1097 <tr
><th colspan=
"3">2014</th
><th colspan=
"3">2013</th
><th colspan=
"3">2014</th
></tr
>
1098 <tr
><th
>%
</th
><th
>Upubl. saksnr.
</th
><th
>Totalt
</th
>
1099 <th
>%
</th
><th
>Upubl. saksnr
</th
><th
>Totalt
</th
>
1100 <th
>%
</th
><th
>Upubl. dok.nr.
</th
><th
>Totalt
</th
>
1103 <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
>
1104 <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
>
1105 <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
>
1106 <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
>
1107 <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
>
1108 <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
>
1109 <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
>
1110 <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
>
1111 <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
>
1112 <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
>
1113 <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
>
1114 <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
>
1115 <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
>
1116 <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
>
1117 <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
>
1118 <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
>
1119 <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
>
1120 <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
>
1121 <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
>
1122 <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
>
1123 <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
>
1124 <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
>
1125 <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
>
1126 <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
>
1127 <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
>
1128 <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
>
1129 <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
>
1130 <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
>
1131 <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
>
1132 <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
>
1133 <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
>
1134 <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
>
1135 <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
>
1136 <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
>
1137 <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
>
1138 <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
>
1139 <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
>
1140 <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
>
1141 <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
>
1142 <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
>
1143 <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
>
1144 <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
>
1145 <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
>
1146 <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
>
1147 <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
>
1148 <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
>
1149 <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
>
1150 <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
>
1151 <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
>
1152 <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
>
1153 <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
>
1154 <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
>
1155 <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
>
1156 <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
>
1157 <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
>
1158 <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
>
1159 <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
>
1160 <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
>
1161 <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
>
1162 <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
>
1163 <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
>
1164 <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
>
1165 <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
>
1166 <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
>
1167 <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
>
1168 <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
>
1169 <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
>
1170 <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
>
1171 <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
>
1172 <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
>
1173 <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
>
1174 <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
>
1175 <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
>
1176 <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
>
1177 <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
>
1178 <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
>
1179 <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
>
1180 <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
>
1181 <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
>
1182 <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
>
1183 <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
>
1184 <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
>
1185 <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
>
1186 <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
>
1187 <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
>
1188 <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
>
1189 <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
>
1190 <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
>
1191 <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
>
1192 <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
>
1193 <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
>
1194 <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
>
1195 <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
>
1196 <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
>
1197 <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
>
1198 <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
>
1199 <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
>
1200 <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
>
1201 <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
>
1202 <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
>
1203 <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
>
1204 <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
>
1205 <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
>
1206 <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
>
1207 <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
>
1208 <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
>
1209 <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
>
1210 <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
>
1211 <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
>
1212 <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
>
1213 <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
>
1214 <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
>
1215 <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
>
1216 <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
>
1217 <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
>
1218 <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
>
1219 <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
>
1220 <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
>
1224 <p
>Det kunne vært interessant å se hva som skjedde hvis en ba om
1225 innsyn i en dokument-ID som ikke finnes i OEP... :) Det hadde også
1226 vært interessant å få vite hva årsaken til at noen saksnummer ikke
1227 dukker opp i OEP der det er få og mange. Jeg mistenker jo at årsaken
1228 ikke er den samme hos Skattedirektoratet og hos Landinfo, selv om
1229 andelen upubliserte nummer er ganske lik.
</p
>
1234 <title>Hvordan bør RFC
822-formattert epost lagres i en NOARK5-database?
</title>
1235 <link>http://people.skolelinux.org/pere/blog/Hvordan_b_r_RFC_822_formattert_epost_lagres_i_en_NOARK5_database_.html
</link>
1236 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Hvordan_b_r_RFC_822_formattert_epost_lagres_i_en_NOARK5_database_.html
</guid>
1237 <pubDate>Fri,
7 Mar
2014 15:
20:
00 +
0100</pubDate>
1238 <description><p
>For noen uker siden ble NXCs fri programvarelisenserte
1240 <a href=
"http://www.nuug.no/aktiviteter/
20140211-noark/
">presentert hos
1241 NUUG
</a
> (video
1242 <a href=
"https://www.youtube.com/watch?v=JCb_dNS3MHQ
">på youtube
1243 foreløbig
</a
>), og det fikk meg til å titte litt mer på NOARK5,
1244 standarden for arkivhåndtering i det offentlige Norge. Jeg lurer på
1245 om denne kjernen kan være nyttig i et par av mine prosjekter, og for ett
1246 av dem er det mest aktuelt å lagre epost. Jeg klarte ikke finne noen
1247 anbefaling om hvordan RFC
822-formattert epost (aka Internett-epost)
1248 burde lagres i NOARK5, selv om jeg vet at noen arkiver tar
1249 PDF-utskrift av eposten med sitt epostprogram og så arkiverer PDF-en
1250 (eller enda værre, tar papirutskrift og lagrer bildet av eposten som
1251 PDF i arkivet).
</p
>
1253 <p
>Det er ikke så mange formater som er akseptert av riksarkivet til
1254 langtidsoppbevaring av offentlige arkiver, og PDF og XML er de mest
1255 aktuelle i så måte. Det slo meg at det måtte da finnes en eller annen
1256 egnet XML-representasjon og at det kanskje var enighet om hvilken som
1257 burde brukes, så jeg tok mot til meg og spurte
1258 <a href=
"http://samdok.com/
">SAMDOK
</a
>, en gruppe tilknyttet
1259 arkivverket som ser ut til å jobbe med NOARK-samhandling, om de hadde
1262 <p
><blockquote
>
1263 <p
>Hei.
</p
>
1265 <p
>Usikker på om dette er riktig forum å ta opp mitt spørsmål, men jeg
1266 lurer på om det er definert en anbefaling om hvordan RFC
1267 822-formatterte epost (aka vanlig Internet-epost) bør lages håndteres
1268 i NOARK5, slik at en bevarer all informasjon i eposten
1269 (f.eks. Received-linjer). Finnes det en anbefalt XML-mapping ala den
1271 &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
1272 mål er at det skal være mulig å lagre eposten i en NOARK5-kjerne og
1273 kunne få ut en identisk formattert kopi av opprinnelig epost ved
1275 </blockquote
></p
>
1277 <p
>Postmottaker hos SAMDOK mente spørsmålet heller burde stilles
1278 direkte til riksarkivet, og jeg fikk i dag svar derfra formulert av
1279 seniorrådgiver Geir Ivar Tungesvik:
</p
>
1281 <p
><blockquote
>
1282 <p
>Riksarkivet har ingen anbefalinger når det gjelder konvertering fra
1283 e-post til XML. Det står arkivskaper fritt å eventuelt definere/bruke
1284 eget format. Inklusive da - som det spørres om - et format der det er
1285 mulig å re-etablere e-post format ut fra XML-en. XML (e-post)
1286 dokumenter må være referert i arkivstrukturen, og det må vedlegges et
1287 gyldig XML skjema (.xsd) for XML-filene. Arkivskaper står altså fritt
1288 til å gjøre hva de vil, bare det dokumenteres og det kan dannes et
1289 utrekk ved avlevering til depot.
</p
>
1291 <p
>De obligatoriske kravene i Noark
5 standarden må altså oppfylles -
1292 etter dialog med Riksarkivet i forbindelse med godkjenning. For
1293 offentlige arkiv er det særlig viktig med filene loependeJournal.xml
1294 og offentligJournal.xml. Private arkiv som vil forholde seg til Noark
1295 5 standarden er selvsagt frie til å bruke det som er relevant for dem
1296 av obligatoriske krav.
</p
>
1297 </blockquote
></p
>
1299 <p
>Det ser dermed ut for meg som om det er et lite behov for å
1300 standardisere XML-lagring av RFC-
822-formatterte meldinger. Noen som
1301 vet om god spesifikasjon i så måte? I tillegg til den omtalt over,
1302 har jeg kommet over flere aktuelle beskrivelser (søk på
"rfc
822
1303 xml
", så finner du aktuelle alternativer).
</p
>
1307 <li
><a href=
"http://www.openhealth.org/xmtp/
">XML MIME Transformation
1308 protocol (XMTP)
</a
> fra OpenHealth, sist oppdatert
2001.
</li
>
1310 <li
><a href=
"https://tools.ietf.org/html/draft-klyne-message-rfc822-xml-
03">An
1311 XML format for mail and other messages
</a
> utkast fra IETF datert
1314 <li
><a href=
"http://www.informit.com/articles/article.aspx?p=
32074">xMail:
1315 E-mail as XML
</a
> en artikkel fra
2003 som beskriver python-modulen
1316 rfc822 som gir ut XML-representasjon av en RFC
822-formattert epost.
</li
>
1320 <p
>Finnes det andre og bedre spesifikasjoner for slik lagring? Send
1321 meg en epost hvis du har innspill.
</p
>