]> pere.pagekite.me Git - homepage.git/blob - blog/tags/noark5/index.html
d270d7c43c1cff4484d3043d948fb60d1d55c9b4
[homepage.git] / blog / tags / noark5 / index.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: Entries Tagged noark5</title>
7 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel="alternate" title="RSS Feed" href="noark5.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <div class="title">
13 <h1>
14 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
15
16 </h1>
17
18 </div>
19
20
21 <h3>Entries tagged "noark5".</h3>
22
23 <div class="entry">
24 <div class="title">
25 <a href="http://people.skolelinux.org/pere/blog/MIME_type__text_vnd_sosi__for_SOSI_map_data.html">MIME type "text/vnd.sosi" for SOSI map data</a>
26 </div>
27 <div class="date">
28 20th May 2019
29 </div>
30 <div class="body">
31 <p>As part of my involvement in the work to
32 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard">standardise
33 a REST based API for Noark 5</a>, the Norwegian archiving standard, I
34 spent some time the last few months to try to register a
35 <a href="https://www.iana.org/assignments/media-types/">MIME type</a>
36 and <a href="https://www.nationalarchives.gov.uk/PRONOM/">PRONOM
37 code</a> for the SOSI. The background is that there is a set of
38 formats approved for long term storage and archiving in Norway, and
39 among these formats, SOSI is the only format missing a MIME type and
40 PRONOM code.</p>
41
42 <p>What is SOSI, you might ask? To quote Wikipedia: SOSI is short for
43 Samordnet Opplegg for Stedfestet Informasjon (literally "Coordinated
44 Approach for Spatial Information", but more commonly expanded in
45 English to Systematic Organization of Spatial Information). It is a
46 text based file format for geo-spatial vector information used in
47 Norway. Information about the SOSI format can be found in English
48 from <a href="https://en.wikipedia.org/wiki/SOSI">Wikipedia</a>. The
49 specification is available in Norwegian from
50 <a href="https://www.kartverket.no/geodataarbeid/Standarder/SOSI/">the
51 Norwegian mapping authority</a>. The SOSI standard, which originated
52 in the beginning of ninety eighties, was the inspiration and formed the
53 basis for the XML based
54 <a href="https://en.wikipedia.org/wiki/Geography_Markup_Language">Geography
55 Markup Language</a>.</p>
56
57 <p>I have so far written
58 <a href="https://github.com/file/file/pull/67">a pattern matching
59 rule</a> for the file(1) unix tool to recognize SOSI files, submitted
60 a request to the PRONOM project to have a PRONOM ID assigned to the
61 format (reference TNA1555078202S60), and today send a request to IANA
62 to register the "text/vnd.sosi" MIME type for this format
63 <a href="https://tools.iana.org/public-view/viewticket/1143144">[IANA
64 #1143144]</a>. If all go well, in a few months, anyone implementing
65 the Noark 5 Tjenestegrensesnitt API spesification should be able to
66 use an official MIME type and PRONOM code for SOSI files.</p>
67
68 <p>So far, SOSI files has been handed out from web sites using the
69 "application/octet-stream" MIME type, which is just a nice way of
70 stating "I do not know". Soon, we will know. :)</p>
71
72 <p>As usual, if you use Bitcoin and want to show your support of my
73 activities, please send Bitcoin donations to my address
74 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
75
76 </div>
77 <div class="tags">
78
79
80 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/kart">kart</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
81
82
83 </div>
84 </div>
85 <div class="padding"></div>
86
87 <div class="entry">
88 <div class="title">
89 <a href="http://people.skolelinux.org/pere/blog/PlantUML_for_text_based_UML_diagram_modelling___nice_free_software.html">PlantUML for text based UML diagram modelling - nice free software</a>
90 </div>
91 <div class="date">
92 25th March 2019
93 </div>
94 <div class="body">
95 <p>As part of my involvement with the
96 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
97 Noark 5 core project</a>, I have been proposing improvements to the
98 API specification created by <a href="https://www.arkivverket.no/">The
99 National Archives of Norway</a> and helped migrating the text from a
100 version control system unfriendly binary format (docx) to Markdown in
101 git. Combined with the migration to a public git repository (on
102 github), this has made it possible for anyone to suggest improvement
103 to the text.</p>
104
105 <p>The specification is filled with UML diagrams. I believe the
106 original diagrams were modelled using Sparx Systems Enterprise
107 Architect, and exported as EMF files for import into docx. This
108 approach make it very hard to track changes using a version control
109 system. To improve the situation I have been looking for a good text
110 based UML format with associated command line free software tools on
111 Linux and Windows, to allow anyone to send in corrections to the UML
112 diagrams in the specification. The tool must be text based to work
113 with git, and command line to be able to run it automatically to
114 generate the diagram images. Finally, it must be free software to
115 allow anyone, even those that can not accept a non-free software
116 license, to contribute.</p>
117
118 <p>I did not know much about free software UML modelling tools when I
119 started. I have used dia and inkscape for simple modelling in the
120 past, but neither are available on Windows, as far as I could tell. I
121 came across a nice
122 <a href="https://modeling-languages.com/text-uml-tools-complete-list/">list
123 of text mode uml tools</a>, and tested out a few of the tools listed
124 there. <a href="http://plantuml.com/">The PlantUML tool</a> seemed
125 most promising. After verifying that the packages
126 <a href="https://tracker.debian.org/pkg/plantuml">is available in
127 Debian</a> and found <a href="https://github.com/plantuml/plantuml">its
128 Java source</a> under a GPL license on github, I set out to test if it
129 could represent the diagrams we needed, ie the ones currently in
130 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">the
131 Noark 5 Tjenestegrensesnitt specification</a>. I am happy to report
132 that it could represent them, even thought it have a few warts here
133 and there.</p>
134
135 <p>After a few days of modelling I completed the task this weekend. A
136 temporary link to the complete set of diagrams (original and from
137 PlantUML) is available in
138 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/76">the
139 github issue discussing the need for a text based UML format</a>, but
140 please note I lack a sensible tool to convert EMF files to PNGs, so
141 the "original" rendering is not as good as the original was in the
142 publised PDF.</p>
143
144 <p>Here is an example UML diagram, showing the core classes for
145 keeping metadata about archived documents:</p>
146
147 <pre>
148 @startuml
149 skinparam classAttributeIconSize 0
150
151 !include media/uml-class-arkivskaper.iuml
152 !include media/uml-class-arkiv.iuml
153 !include media/uml-class-klassifikasjonssystem.iuml
154 !include media/uml-class-klasse.iuml
155 !include media/uml-class-arkivdel.iuml
156 !include media/uml-class-mappe.iuml
157 !include media/uml-class-merknad.iuml
158 !include media/uml-class-registrering.iuml
159 !include media/uml-class-basisregistrering.iuml
160 !include media/uml-class-dokumentbeskrivelse.iuml
161 !include media/uml-class-dokumentobjekt.iuml
162 !include media/uml-class-konvertering.iuml
163 !include media/uml-datatype-elektronisksignatur.iuml
164
165 Arkivstruktur.Arkivskaper "+arkivskaper 1..*" <-o "+arkiv 0..*" Arkivstruktur.Arkiv
166 Arkivstruktur.Arkiv o--> "+underarkiv 0..*" Arkivstruktur.Arkiv
167 Arkivstruktur.Arkiv "+arkiv 1" o--> "+arkivdel 0..*" Arkivstruktur.Arkivdel
168 Arkivstruktur.Klassifikasjonssystem "+klassifikasjonssystem [0..1]" <--o "+arkivdel 1..*" Arkivstruktur.Arkivdel
169 Arkivstruktur.Klassifikasjonssystem "+klassifikasjonssystem [0..1]" o--> "+klasse 0..*" Arkivstruktur.Klasse
170 Arkivstruktur.Arkivdel "+arkivdel 0..1" o--> "+mappe 0..*" Arkivstruktur.Mappe
171 Arkivstruktur.Arkivdel "+arkivdel 0..1" o--> "+registrering 0..*" Arkivstruktur.Registrering
172 Arkivstruktur.Klasse "+klasse 0..1" o--> "+mappe 0..*" Arkivstruktur.Mappe
173 Arkivstruktur.Klasse "+klasse 0..1" o--> "+registrering 0..*" Arkivstruktur.Registrering
174 Arkivstruktur.Mappe --> "+undermappe 0..*" Arkivstruktur.Mappe
175 Arkivstruktur.Mappe "+mappe 0..1" o--> "+registrering 0..*" Arkivstruktur.Registrering
176 Arkivstruktur.Merknad "+merknad 0..*" <--* Arkivstruktur.Mappe
177 Arkivstruktur.Merknad "+merknad 0..*" <--* Arkivstruktur.Dokumentbeskrivelse
178 Arkivstruktur.Basisregistrering -|> Arkivstruktur.Registrering
179 Arkivstruktur.Merknad "+merknad 0..*" <--* Arkivstruktur.Basisregistrering
180 Arkivstruktur.Registrering "+registrering 1..*" o--> "+dokumentbeskrivelse 0..*" Arkivstruktur.Dokumentbeskrivelse
181 Arkivstruktur.Dokumentbeskrivelse "+dokumentbeskrivelse 1" o-> "+dokumentobjekt 0..*" Arkivstruktur.Dokumentobjekt
182 Arkivstruktur.Dokumentobjekt *-> "+konvertering 0..*" Arkivstruktur.Konvertering
183 Arkivstruktur.ElektroniskSignatur -[hidden]-> Arkivstruktur.Dokumentobjekt
184 @enduml
185 </pre>
186
187 <p><a href="http://plantuml.com/class-diagram">The format</a> is quite
188 compact, with little redundant information. The text expresses
189 entities and relations, and there is little layout related fluff. One
190 can reuse content by using include files, allowing for consistent
191 naming across several diagrams. The include files can be standalone
192 PlantUML too. Here is the content of
193 <tt>media/uml-class-arkivskaper.iuml<tt>:</p>
194
195 <pre>
196 @startuml
197 class Arkivstruktur.Arkivskaper <Arkivenhet> {
198 +arkivskaperID : string
199 +arkivskaperNavn : string
200 +beskrivelse : string [0..1]
201 }
202 @enduml
203 </pre>
204
205 <p>This is what the complete diagram for the PlantUML notation above
206 look like:</p>
207
208 <p><img width="80%" src="http://people.skolelinux.org/pere/blog/images/2019-03-25-noark5-plantuml-diagrameksempel.png"></p>
209
210 <p>A cool feature of PlantUML is that the generated PNG files include
211 the entire original source diagram as text. The source (with include
212 statements expanded) can be extracted using for example
213 <tt>exiftool</tt>. Another cool feature is that parts of the entities
214 can be hidden after inclusion. This allow to use include files with
215 all attributes listed, even for UML diagrams that should not list any
216 attributes.</p>
217
218 <p>The diagram also show some of the warts. Some times the layout
219 engine place text labels on top of each other, and some times it place
220 the class boxes too close to each other, not leaving room for the
221 labels on the relationship arrows. The former can be worked around by
222 placing extra newlines in the labes (ie "\n"). I did not do it here
223 to be able to demonstrate the issue. I have not found a good way
224 around the latter, so I normally try to reduce the problem by changing
225 from vertical to horizontal links to improve the layout.</p>
226
227 <p>All in all, I am quite happy with PlantUML, and very impressed with
228 how quickly its lead developer responds to questions. So far I got an
229 answer to my questions in a few hours when I send an email. I
230 definitely recommend looking at PlantUML if you need to make UML
231 diagrams. Note, PlantUML can draw a lot more than class relations.
232 Check out the documention for a complete list. :)</p>
233
234 <p>As usual, if you use Bitcoin and want to show your support of my
235 activities, please send Bitcoin donations to my address
236 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
237
238 </div>
239 <div class="tags">
240
241
242 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
243
244
245 </div>
246 </div>
247 <div class="padding"></div>
248
249 <div class="entry">
250 <div class="title">
251 <a href="http://people.skolelinux.org/pere/blog/Release_0_3_of_free_software_archive_API_system_Nikita_announced.html">Release 0.3 of free software archive API system Nikita announced</a>
252 </div>
253 <div class="date">
254 24th March 2019
255 </div>
256 <div class="body">
257 <p>Yesterday, a new release of
258 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
259 Noark 5 core project</a> was
260 <a href="https://lists.nuug.no/pipermail/nikita-noark/2019-March/000451.html">announced
261 on the project mailing list</a>. The free software solution is an
262 implementation of the Norwegian archive standard Noark 5 used by
263 government offices in Norway. These were the changes in version 0.3
264 since version 0.2.1 (from NEWS.md):</p>
265
266 <ul>
267 <li>Improved ClassificationSystem and Class behaviour.</li>
268 <li>Tidied up known inconsistencies between domain model and hateaos links.</li>
269 <li>Added experimental code for blockchain integration. </li>
270 <li>Make token expiry time configurable at upstart from properties file.</li>
271 <li>Continued work on OData search syntax.</li>
272 <li>Started work on pagination for entities, partly implemented for Saksmappe.</li>
273 <li>Finalise ClassifiedCode Metadata entity.</li>
274 <li>Implement mechanism to check if authentication token is still
275 valid. This allow the GUI to return a more sensible message to the
276 user if the token is expired.</li>
277 <li>Reintroduce browse.html page to allow user to browse JSON API using
278 hateoas links.</li>
279 <li>Fix bug in handling file/mappe sequence number. Year change was
280 not properly handled.</li>
281 <li>Update application yml files to be in sync with current development.</li>
282 <li>Stop 'converting' everything to PDF using libreoffice. Only
283 convert the file formats doc, ppt, xls, docx, pptx, xlsx, odt, odp
284 and ods.</li>
285 <li>Continued code style fixing, making code more readable.</li>
286 <li>Minor bug fixes.</li>
287
288 </ul>
289
290 <p>If free and open standardized archiving API sound interesting to
291 you, please contact us on IRC
292 (<a href="irc://irc.freenode.net/%23nikita">#nikita on
293 irc.freenode.net</a>) or email
294 (<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
295 mailing list</a>).</p>
296
297 <p>As usual, if you use Bitcoin and want to show your support of my
298 activities, please send Bitcoin donations to my address
299 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
300
301 </div>
302 <div class="tags">
303
304
305 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
306
307
308 </div>
309 </div>
310 <div class="padding"></div>
311
312 <div class="entry">
313 <div class="title">
314 <a href="http://people.skolelinux.org/pere/blog/_pen_og_gjennomsiktig_vedlikehold_av_spesifikasjonen_for_Noark_5_Tjenestegrensesnitt.html">Ã…pen og gjennomsiktig vedlikehold av spesifikasjonen for Noark 5 Tjenestegrensesnitt</a>
315 </div>
316 <div class="date">
317 11th March 2019
318 </div>
319 <div class="body">
320 <p>Et virksomhetsarkiv for meg, er et arbeidsverktøy der en enkelt kan
321 finne informasjonen en trenger når en trenger det, og der
322 virksomhetens samlede kunnskap er tilgjengelig. Det må være greit å
323 finne frem i, litt som en bibliotek. Men der et bibliotek gjerne tar
324 vare på offentliggjort informasjon som er tilgjengelig flere steder,
325 tar et arkiv vare på virksomhetsintern og til tider personlig
326 informasjon som ofte kun er tilgjengelig fra et sted.</p>
327
328 <p>Jeg mistenker den eneste måten å sikre at arkivet inneholder den
329 samlede kunnskapen i en virksomhet, er å bruke det som virksomhetens
330 kunnskapslager. Det innebærer å automatisk kopiere (brev, epost,
331 SMS-er etc) inn i arkivet når de sendes og mottas, og der filtrere
332 vekk det en ikke vil ta vare på, og legge på metadata om det som er
333 samlet inn for enkel gjenfinning. En slik bruk av arkivet innebærer at
334 arkivet er en del av daglig virke, ikke at det er siste hvilested for
335 informasjon ingen lenger har daglig bruk for. For å kunne være en del
336 av det daglige virket må arkivet enkelt kunne integreres med andre
337 systemer. I disse dager betyr det å tilby arkivet som en
338 nett-tjeneste til hele virksomheten, tilgjengelig for både mennesker
339 og datamaskiner. Det betyr i tur å både tilby nettsider og et
340 maskinlesbart grensesnitt.</p>
341
342 <p>For noen år siden erkjente visjonære arkivarer fordelene med et
343 standardisert maskinlesbart grensesnitt til organisasjonens arkiv. De
344 gikk igang med å lage noe de kalte
345 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">Noark
346 5 Tjenestegrensesnitt</a>. Gjort riktig, så åpner slike maskinlesbare
347 grensesnitt for samvirke på tvers av uavhengige programvaresystemer.
348 Gjort feil, vil det blokkere for samvirke og bidra til
349 leverandørinnlåsing. For å gjøre det riktig så må grensesnittet være
350 klart og entydig beskrevet i en spesifikasjon som gjør at
351 spesifikasjonen tolkes på samme måte uavhengig av hvem som leser den,
352 og uavhengig av hvem som tar den i bruk.</p>
353
354 <p>For å oppnå klare og entydige beskrivelser i en spesifikasjon, som
355 trengs for å kunne få en fri og åpen standard (se
356 <a href="http://people.skolelinux.org/pere/blog/Fri_og__pen_standard__slik_Digistan_ser_det.html">Digistan-definisjon</a>),
357 så trengs det en åpen og gjennomsiktig inngangsport med lav terskel,
358 der de som forsøker å ta den i bruk enkelt kan få inn korreksjoner,
359 etterlyse klargjøringer og rapportere uklarheter i spesifikasjonen.
360 En trenger også automatiserte datasystemer som måler og sjekker at et
361 gitt grensesnitt fungerer i tråd med spesifikasjonen.</p>
362
363 <p>For Noark 5 Tjenestegrensesnittet er det nå etablert en slik åpen
364 og gjennomsiktig inngangsport på prosjekttjenesten github. Denne
365 inngangsporten består først og fremst av en åpen portal som lar enhver
366 se hva som er gjort av endringer i spesifikasjonsteksten over tid, men
367 det hører også med et åpent &quot;diskusjonsforum&quot; der en kan
368 komme med endringsforslag og forespørsler om klargjøringer. Alle
369 registrerte brukere på github kan bidra med innspill til disse
370 henvendelsene.</p>
371
372 <p>I samarbeide med Arkivverket har jeg fått opprettet et git-depot
373 med spesifikasjonsteksten for tjenestegrensesnittet, der det er lagt
374 inn historikk for endringer i teksten de siste årene, samt lagt inn
375 endringsforslag og forespørsler om klargjøring av teksten. Bakgrunnen
376 for at jeg bidro med dette er at jeg er involvert i
377 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core">Nikita-prosjektet</a>,
378 som lager en fri programvare-utgave av Noark 5 Tjenestegrensesnitt.
379 Det er først når en forsøker å lage noe i tråd med en spesifikasjon at
380 en oppdager hvor mange detaljer som må beskrives i spesifikasjonen for
381 å sikre samhandling.</p>
382
383 <p>Spesifikasjonen vedlikeholdes i et rent tekstformat, for å ha et
384 format egnet for versjonskontroll via versjontrollsystemet git. Dette
385 gjør det både enkelt å se konkret hvilke endringer som er gjort når,
386 samt gjør det praktisk mulig for enhver med github-konto å sende inn
387 endringsforslag med formuleringer til spesifikasjonsteksten. Dette
388 tekstformatet vises frem som nettsider på github, slik at en ikke
389 trenger spesielle verktøy for å se på siste utgave av
390 spesifikasjonen.</p>
391
392 <p>Fra dette rene tekstformatet kan det så avledes ulike formater, som
393 HTML for websider, PDF for utskrift på papir og ePub for lesing med
394 ebokleser. Avlednings-systemet (byggesystemet) bruker i dag
395 verktøyene pandoc, latex, docbook-xsl og GNU make til
396 transformasjonen. Tekstformatet som brukes dag er
397 <a href="https://www.markdownguide.org/">Markdown</a>, men det vurderes
398 å
399 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/9">endre
400 til formatet RST</a> i fremtiden for bedre styring av utseende på
401 PDF-utgaven.</p>
402
403 <p>Versjonskontrollsystemet git ble valgt da det er både fleksibelt,
404 avansert og enkelt å ta i bruk. Github ble valgt (foran f.eks. Gitlab
405 som vi bruker i Nikita), da Arkivverket allerede hadde tatt i bruk
406 Github i andre sammenhenger.</p>
407
408 <p>Enkle endringer i teksten kan gjøres av priviligerte brukere
409 direkte i nettsidene til Github, ved å finne aktuell fil som skal
410 endres (f.eks. kapitler/03-konformitet.md), klikke på den lille
411 bokstaven i høyre hjørne over teksten. Det kommer opp en nettside der
412 en kan endre teksten slik en ønsker. Når en er fornøyd med endringen
413 så må endringen &quot;sjekkes inn&quot; i historikken. Det gjøres ved
414 å gi en kort beskrivelse av endringen (beskriv helst hvorfor endringen
415 trengs, ikke hva som er endret), under overskriften &quot;Commit
416 changes&quot;. En kan og bør legge inn en lengre forklaring i det
417 større skrivefeltet, før en velger om endringen skal sendes direkte
418 til 'master'-grenen (dvs. autorativ utgave av spesifikasjonen) eller
419 om en skal lage en ny gren for denne endringen og opprette en
420 endringsforespørsel (aka &quot;Pull Request&quot;/PR). Når alt dette
421 er gjort kan en velge &quot;Commit changes&quot; for å sende inn
422 endringen. Hvis den er lagt inn i &quot;master&quot;-grenen så er den
423 en offisiell del av spesifikasjonen med en gang. Hvis den derimot er
424 en endringsforespørsel, så legges den inn i
425 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/pulls">listen
426 over forslag til endringer</a> som venter på korrekturlesing og
427 godkjenning.</p>
428
429 <p>Større endringer (for eksempel samtidig endringer i flere filer)
430 gjøres enklest ved å hente ned en kopi av git-depoet lokalt og gjøre
431 endringene der før endringsforslaget sendes inn. Denne prosessen er
432 godt beskrivet i dokumentasjon fra github. Git-prosjektet som skal
433 &quot;klones&quot; er
434 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/</a>.</p>
435
436 <p>For å registrere nye utfordringer (issues) eller kommentere på
437 eksisterende utfordringer benyttes nettsiden
438 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues</a>.
439 I skrivende stund er det 48 åpne og 11 avsluttede utfordringer. Et
440 forslag til hva som bør være med når en beskriver en utfordring er
441 tilgjengelig som utfordring
442 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/14">#14</a>.</p>
443
444 <p>For å bygge en PDF-utgave av spesifikasjonen så bruker jeg i dag en
445 Debian GNU/Linux-maskin med en rekke programpakker installert. NÃ¥r
446 dette er på plass, så holder det å kjøre kommandoen 'make pdf html' på
447 kommandolinjen, vente ca. 20 sekunder, før spesifikasjon.pdf og
448 spesifikasjon.html ligger klar på disken. Verktøyene for bygging av
449 PDF, HTML og ePub-utgave er også tilgjengelig på Windows og
450 MacOSX.</p>
451
452 <p>Github bidrar med rammeverket. Men for at åpent vedlikehold av
453 spesifikasjonen skal fungere, så trengs det folk som bidrar med sin
454 tid og kunnskap. Arkivverket har sagt de skal bidra med innspill og
455 godkjenne forslag til endringer, men det blir størst suksess hvis alle
456 som bruker og lager systemer basert på Noark 5 Tjenestegrensesnitt
457 bidrar med sin kunnskap og kommer med forslag til forebedringer. Jeg
458 stiller. Blir du med?</p>
459
460 <p>Det er viktig å legge til rette for åpen diskusjon blant alle
461 interesserte, som ikke krever at en må godta lange kontrakter med
462 vilkår for deltagelse. Inntil Arkivverket dukker opp på IRC har vi
463 laget en IRC-kanal der interesserte enkelt kan orientere seg og
464 diskutere tjenestegrensesnittet. Alle er velkommen til å ta turen
465 innom
466 <a href="https://webchat.freenode.net/?channels=nikita">#nikita</a>
467 (f.eks. via irc.freenode.net) for å møte likesinnede.</p>
468
469 <p>Det holder dog ikke å ha en god spesifikasjon, hvis ikke de som tar
470 den i bruk gjør en like god jobb. For å automatisk teste om et konkret
471 tjenestegrensesnitt følger (min) forståelse av
472 spesifikasjonsdokumentet, har jeg skrevet et program som kobler seg
473 opp til et Noark 5v4 REST-tjeneste og tester alt den finner for å se
474 om det er i henhold til min tolkning av spesifikasjonen. Dette
475 verktøyet er tilgjengelig fra
476 <a href="https://github.com/petterreinholdtsen/noark5-tester">https://github.com/petterreinholdtsen/noark5-tester</a>,
477 og brukes daglig mens vi utvikler Nikita for å sikre at vi ikke
478 introduserer nye feil. Hvis en skal sikre samvirke på tvers av ulike
479 systemer er det helt essensielt å kunne raskt og automatisk sjekke at
480 tjenestegrensesnittet oppfører seg som forventet. Jeg håper andre som
481 lager sin utgave av tjenestegrensesnittet vi bruke dette verktøyet,
482 slik at vi tidlig og raskt kan oppdage hvor vi har tolket
483 spesifikasjonen ulikt, og dermed få et godt grunnlag for å gjøre
484 spesifikasjonsteksten enda klarere og bedre.</p>
485
486 <p>Dagens beskrivelse av Noark 5 Tjenestegrensesnitt er et svært godt
487 utgangspunkt for å gjøre virksomhetens arkiv til et dynamisk og
488 sentralt arbeidsverktøy i organisasjonen. Blir du med å gjøre den
489 enda bedre?</p>
490
491 </div>
492 <div class="tags">
493
494
495 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
496
497
498 </div>
499 </div>
500 <div class="padding"></div>
501
502 <div class="entry">
503 <div class="title">
504 <a href="http://people.skolelinux.org/pere/blog/Time_for_an_official_MIME_type_for_patches_.html">Time for an official MIME type for patches?</a>
505 </div>
506 <div class="date">
507 1st November 2018
508 </div>
509 <div class="body">
510 <p>As part of my involvement in
511 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core">the Nikita
512 archive API project</a>, I've been importing a fairly large lump of
513 emails into a test instance of the archive to see how well this would
514 go. I picked a subset of <a href="https://notmuchmail.org/">my
515 notmuch email database</a>, all public emails sent to me via
516 @lists.debian.org, giving me a set of around 216 000 emails to import.
517 In the process, I had a look at the various attachments included in
518 these emails, to figure out what to do with attachments, and noticed
519 that one of the most common attachment formats do not have
520 <a href="https://www.iana.org/assignments/media-types/media-types.xhtml">an
521 official MIME type</a> registered with IANA/IETF. The output from
522 diff, ie the input for patch, is on the top 10 list of formats
523 included in these emails. At the moment people seem to use either
524 text/x-patch or text/x-diff, but neither is officially registered. It
525 would be better if one official MIME type were registered and used
526 everywhere.</p>
527
528 <p>To try to get one official MIME type for these files, I've brought
529 up the topic on
530 <a href="https://www.ietf.org/mailman/listinfo/media-types">the
531 media-types mailing list</a>. If you are interested in discussion
532 which MIME type to use as the official for patch files, or involved in
533 making software using a MIME type for patches, perhaps you would like
534 to join the discussion?</p>
535
536 <p>As usual, if you use Bitcoin and want to show your support of my
537 activities, please send Bitcoin donations to my address
538 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
539
540 </div>
541 <div class="tags">
542
543
544 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
545
546
547 </div>
548 </div>
549 <div class="padding"></div>
550
551 <div class="entry">
552 <div class="title">
553 <a href="http://people.skolelinux.org/pere/blog/Release_0_2_of_free_software_archive_system_Nikita_announced.html">Release 0.2 of free software archive system Nikita announced</a>
554 </div>
555 <div class="date">
556 18th October 2018
557 </div>
558 <div class="body">
559 <p>This morning, the new release of the
560 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
561 Noark 5 core project</a> was
562 <a href="https://lists.nuug.no/pipermail/nikita-noark/2018-October/000406.html">announced
563 on the project mailing list</a>. The free software solution is an
564 implementation of the Norwegian archive standard Noark 5 used by
565 government offices in Norway. These were the changes in version 0.2
566 since version 0.1.1 (from NEWS.md):
567
568 <ul>
569 <li>Fix typos in REL names</li>
570 <li>Tidy up error message reporting</li>
571 <li>Fix issue where we used Integer.valueOf(), not Integer.getInteger()</li>
572 <li>Change some String handling to StringBuffer</li>
573 <li>Fix error reporting</li>
574 <li>Code tidy-up</li>
575 <li>Fix issue using static non-synchronized SimpleDateFormat to avoid
576 race conditions</li>
577 <li>Fix problem where deserialisers were treating integers as strings</li>
578 <li>Update methods to make them null-safe</li>
579 <li>Fix many issues reported by coverity</li>
580 <li>Improve equals(), compareTo() and hash() in domain model</li>
581 <li>Improvements to the domain model for metadata classes</li>
582 <li>Fix CORS issues when downloading document</li>
583 <li>Implementation of case-handling with registryEntry and document upload</li>
584 <li>Better support in Javascript for OPTIONS</li>
585 <li>Adding concept description of mail integration</li>
586 <li>Improve setting of default values for GET on ny-journalpost</li>
587 <li>Better handling of required values during deserialisation </li>
588 <li>Changed tilknyttetDato (M620) from date to dateTime</li>
589 <li>Corrected some opprettetDato (M600) (de)serialisation errors.</li>
590 <li>Improve parse error reporting.</li>
591 <li>Started on OData search and filtering.</li>
592 <li>Added Contributor Covenant Code of Conduct to project.</li>
593 <li>Moved repository and project from Github to Gitlab.</li>
594 <li>Restructured repository, moved code into src/ and web/.</li>
595 <li>Updated code to use Spring Boot version 2.</li>
596 <li>Added support for OAuth2 authentication.</li>
597 <li>Fixed several bugs discovered by Coverity.</li>
598 <li>Corrected handling of date/datetime fields.</li>
599 <li>Improved error reporting when rejecting during deserializatoin.</li>
600 <li>Adjusted default values provided for ny-arkivdel, ny-mappe,
601 ny-saksmappe, ny-journalpost and ny-dokumentbeskrivelse.</li>
602 <li>Several fixes for korrespondansepart*.</li>
603 <li>Updated web GUI:
604 <ul>
605 <li>Now handle both file upload and download.</li>
606 <li>Uses new OAuth2 authentication for login.</li>
607 <li>Forms now fetches default values from API using GET.</li>
608 <li>Added RFC 822 (email), TIFF and JPEG to list of possible file formats.</li>
609 </ul></li>
610 </ul>
611
612 <p>The changes and improvements are extensive. Running diffstat on
613 the changes between git tab 0.1.1 and 0.2 show 1098 files changed,
614 108666 insertions(+), 54066 deletions(-).</p>
615
616 <p>If free and open standardized archiving API sound interesting to
617 you, please contact us on IRC
618 (<a href="irc://irc.freenode.net/%23nikita">#nikita on
619 irc.freenode.net</a>) or email
620 (<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
621 mailing list</a>).</p>
622
623 <p>As usual, if you use Bitcoin and want to show your support of my
624 activities, please send Bitcoin donations to my address
625 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
626
627 </div>
628 <div class="tags">
629
630
631 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
632
633
634 </div>
635 </div>
636 <div class="padding"></div>
637
638 <div class="entry">
639 <div class="title">
640 <a href="http://people.skolelinux.org/pere/blog/Fetching_trusted_timestamps_using_the_rfc3161ng_python_module.html">Fetching trusted timestamps using the rfc3161ng python module</a>
641 </div>
642 <div class="date">
643 8th October 2018
644 </div>
645 <div class="body">
646 <p>I have earlier covered the basics of trusted timestamping using the
647 'openssl ts' client. See blog post for
648 <a href="http://people.skolelinux.org/pere/blog/Public_Trusted_Timestamping_services_for_everyone.html">2014</a>,
649 <a href="http://people.skolelinux.org/pere/blog/syslog_trusted_timestamp___chain_of_trusted_timestamps_for_your_syslog.html">2016</a>
650 and
651 <a href="http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html">2017</a>
652 for those stories. But some times I want to integrate the timestamping
653 in other code, and recently I needed to integrate it into Python.
654 After searching a bit, I found
655 <a href="https://dev.entrouvert.org/projects/python-rfc3161">the
656 rfc3161 library</a> which seemed like a good fit, but I soon
657 discovered it only worked for python version 2, and I needed something
658 that work with python version 3. Luckily I next came across
659 <a href="https://github.com/trbs/rfc3161ng/">the rfc3161ng library</a>,
660 a fork of the original rfc3161 library. Not only is it working with
661 python 3, it have fixed a few of the bugs in the original library, and
662 it has an active maintainer. I decided to wrap it up and make it
663 <a href="https://tracker.debian.org/pkg/python-rfc3161ng">available in
664 Debian</a>, and a few days ago it entered Debian unstable and testing.</p>
665
666 <p>Using the library is fairly straight forward. The only slightly
667 problematic step is to fetch the required certificates to verify the
668 timestamp. For some services it is straight forward, while for others
669 I have not yet figured out how to do it. Here is a small standalone
670 code example based on of the integration tests in the library code:</p>
671
672 <pre>
673 #!/usr/bin/python3
674
675 """
676
677 Python 3 script demonstrating how to use the rfc3161ng module to
678 get trusted timestamps.
679
680 The license of this code is the same as the license of the rfc3161ng
681 library, ie MIT/BSD.
682
683 """
684
685 import os
686 import pyasn1.codec.der
687 import rfc3161ng
688 import subprocess
689 import tempfile
690 import urllib.request
691
692 def store(f, data):
693 f.write(data)
694 f.flush()
695 f.seek(0)
696
697 def fetch(url, f=None):
698 response = urllib.request.urlopen(url)
699 data = response.read()
700 if f:
701 store(f, data)
702 return data
703
704 def main():
705 with tempfile.NamedTemporaryFile() as cert_f,\
706 tempfile.NamedTemporaryFile() as ca_f,\
707 tempfile.NamedTemporaryFile() as msg_f,\
708 tempfile.NamedTemporaryFile() as tsr_f:
709
710 # First fetch certificates used by service
711 certificate_data = fetch('https://freetsa.org/files/tsa.crt', cert_f)
712 ca_data_data = fetch('https://freetsa.org/files/cacert.pem', ca_f)
713
714 # Then timestamp the message
715 timestamper = \
716 rfc3161ng.RemoteTimestamper('http://freetsa.org/tsr',
717 certificate=certificate_data)
718 data = b"Python forever!\n"
719 tsr = timestamper(data=data, return_tsr=True)
720
721 # Finally, convert message and response to something 'openssl ts' can verify
722 store(msg_f, data)
723 store(tsr_f, pyasn1.codec.der.encoder.encode(tsr))
724 args = ["openssl", "ts", "-verify",
725 "-data", msg_f.name,
726 "-in", tsr_f.name,
727 "-CAfile", ca_f.name,
728 "-untrusted", cert_f.name]
729 subprocess.check_call(args)
730
731 if '__main__' == __name__:
732 main()
733 </pre>
734
735 <p>The code fetches the required certificates, store them as temporary
736 files, timestamp a simple message, store the message and timestamp to
737 disk and ask 'openssl ts' to verify the timestamp. A timestamp is
738 around 1.5 kiB in size, and should be fairly easy to store for future
739 use.</p>
740
741 <p>As usual, if you use Bitcoin and want to show your support of my
742 activities, please send Bitcoin donations to my address
743 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
744
745 </div>
746 <div class="tags">
747
748
749 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>.
750
751
752 </div>
753 </div>
754 <div class="padding"></div>
755
756 <div class="entry">
757 <div class="title">
758 <a href="http://people.skolelinux.org/pere/blog/Release_0_1_1_of_free_software_archive_system_Nikita_announced.html">Release 0.1.1 of free software archive system Nikita announced</a>
759 </div>
760 <div class="date">
761 10th June 2017
762 </div>
763 <div class="body">
764 <p>I am very happy to report that the
765 <a href="https://github.com/hiOA-ABI/nikita-noark5-core">Nikita Noark 5
766 core project</a> tagged its second release today. The free software
767 solution is an implementation of the Norwegian archive standard Noark
768 5 used by government offices in Norway. These were the changes in
769 version 0.1.1 since version 0.1.0 (from NEWS.md):
770
771 <ul>
772
773 <li>Continued work on the angularjs GUI, including document upload.</li>
774 <li>Implemented correspondencepartPerson, correspondencepartUnit and
775 correspondencepartInternal</li>
776 <li>Applied for coverity coverage and started submitting code on
777 regualr basis.</li>
778 <li>Started fixing bugs reported by coverity</li>
779 <li>Corrected and completed HATEOAS links to make sure entire API is
780 available via URLs in _links.</li>
781 <li>Corrected all relation URLs to use trailing slash.</li>
782 <li>Add initial support for storing data in ElasticSearch.</li>
783 <li>Now able to receive and store uploaded files in the archive.</li>
784 <li>Changed JSON output for object lists to have relations in _links.</li>
785 <li>Improve JSON output for empty object lists.</li>
786 <li>Now uses correct MIME type application/vnd.noark5-v4+json.</li>
787 <li>Added support for docker container images.</li>
788 <li>Added simple API browser implemented in JavaScript/Angular.</li>
789 <li>Started on archive client implemented in JavaScript/Angular.</li>
790 <li>Started on prototype to show the public mail journal.</li>
791 <li>Improved performance by disabling Sprint FileWatcher.</li>
792 <li>Added support for 'arkivskaper', 'saksmappe' and 'journalpost'.</li>
793 <li>Added support for some metadata codelists.</li>
794 <li>Added support for Cross-origin resource sharing (CORS).</li>
795 <li>Changed login method from Basic Auth to JSON Web Token (RFC 7519)
796 style.</li>
797 <li>Added support for GET-ing ny-* URLs.</li>
798 <li>Added support for modifying entities using PUT and eTag.</li>
799 <li>Added support for returning XML output on request.</li>
800 <li>Removed support for English field and class names, limiting ourself
801 to the official names.</li>
802 <li>...</li>
803
804 </ul>
805
806 <p>If this sound interesting to you, please contact us on IRC (#nikita
807 on irc.freenode.net) or email
808 (<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
809 mailing list).</p>
810
811 </div>
812 <div class="tags">
813
814
815 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
816
817
818 </div>
819 </div>
820 <div class="padding"></div>
821
822 <div class="entry">
823 <div class="title">
824 <a href="http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html">Idea for storing trusted timestamps in a Noark 5 archive</a>
825 </div>
826 <div class="date">
827 7th June 2017
828 </div>
829 <div class="body">
830 <p><em>This is a copy of
831 <a href="https://lists.nuug.no/pipermail/nikita-noark/2017-June/000297.html">an
832 email I posted to the nikita-noark mailing list</a>. Please follow up
833 there if you would like to discuss this topic. The background is that
834 we are making a free software archive system based on the Norwegian
835 <a href="https://www.arkivverket.no/forvaltning-og-utvikling/regelverk-og-standarder/noark-standarden">Noark
836 5 standard</a> for government archives.</em></p>
837
838 <p>I've been wondering a bit lately how trusted timestamps could be
839 stored in Noark 5.
840 <a href="https://en.wikipedia.org/wiki/Trusted_timestamping">Trusted
841 timestamps</a> can be used to verify that some information
842 (document/file/checksum/metadata) have not been changed since a
843 specific time in the past. This is useful to verify the integrity of
844 the documents in the archive.</p>
845
846 <p>Then it occured to me, perhaps the trusted timestamps could be
847 stored as dokument variants (ie dokumentobjekt referered to from
848 dokumentbeskrivelse) with the filename set to the hash it is
849 stamping?</p>
850
851 <p>Given a "dokumentbeskrivelse" with an associated "dokumentobjekt",
852 a new dokumentobjekt is associated with "dokumentbeskrivelse" with the
853 same attributes as the stamped dokumentobjekt except these
854 attributes:</p>
855
856 <ul>
857
858 <li>format -> "RFC3161"
859 <li>mimeType -> "application/timestamp-reply"
860 <li>formatDetaljer -> "&lt;source URL for timestamp service&gt;"
861 <li>filenavn -> "&lt;sjekksum&gt;.tsr"
862
863 </ul>
864
865 <p>This assume a service following
866 <a href="https://tools.ietf.org/html/rfc3161">IETF RFC 3161</a> is
867 used, which specifiy the given MIME type for replies and the .tsr file
868 ending for the content of such trusted timestamp. As far as I can
869 tell from the Noark 5 specifications, it is OK to have several
870 variants/renderings of a dokument attached to a given
871 dokumentbeskrivelse objekt. It might be stretching it a bit to make
872 some of these variants represent crypto-signatures useful for
873 verifying the document integrity instead of representing the dokument
874 itself.</p>
875
876 <p>Using the source of the service in formatDetaljer allow several
877 timestamping services to be used. This is useful to spread the risk
878 of key compromise over several organisations. It would only be a
879 problem to trust the timestamps if all of the organisations are
880 compromised.</p>
881
882 <p>The following oneliner on Linux can be used to generate the tsr
883 file. $input is the path to the file to checksum, and $sha256 is the
884 SHA-256 checksum of the file (ie the "<sjekksum>.tsr" value mentioned
885 above).</p>
886
887 <p><blockquote><pre>
888 openssl ts -query -data "$inputfile" -cert -sha256 -no_nonce \
889 | curl -s -H "Content-Type: application/timestamp-query" \
890 --data-binary "@-" http://zeitstempel.dfn.de > $sha256.tsr
891 </pre></blockquote></p>
892
893 <p>To verify the timestamp, you first need to download the public key
894 of the trusted timestamp service, for example using this command:</p>
895
896 <p><blockquote><pre>
897 wget -O ca-cert.txt \
898 https://pki.pca.dfn.de/global-services-ca/pub/cacert/chain.txt
899 </pre></blockquote></p>
900
901 <p>Note, the public key should be stored alongside the timestamps in
902 the archive to make sure it is also available 100 years from now. It
903 is probably a good idea to standardise how and were to store such
904 public keys, to make it easier to find for those trying to verify
905 documents 100 or 1000 years from now. :)</p>
906
907 <p>The verification itself is a simple openssl command:</p>
908
909 <p><blockquote><pre>
910 openssl ts -verify -data $inputfile -in $sha256.tsr \
911 -CAfile ca-cert.txt -text
912 </pre></blockquote></p>
913
914 <p>Is there any reason this approach would not work? Is it somehow against
915 the Noark 5 specification?</p>
916
917 </div>
918 <div class="tags">
919
920
921 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
922
923
924 </div>
925 </div>
926 <div class="padding"></div>
927
928 <div class="entry">
929 <div class="title">
930 <a href="http://people.skolelinux.org/pere/blog/Epost_inn_som_arkivformat_i_Riksarkivarens_forskrift_.html">Epost inn som arkivformat i Riksarkivarens forskrift?</a>
931 </div>
932 <div class="date">
933 27th April 2017
934 </div>
935 <div class="body">
936 <p>I disse dager, med frist 1. mai, har Riksarkivaren ute en høring på
937 sin forskrift. Som en kan se er det ikke mye tid igjen før fristen
938 som går ut på søndag. Denne forskriften er det som lister opp hvilke
939 formater det er greit å arkivere i
940 <a href="http://www.arkivverket.no/arkivverket/Offentleg-forvalting/Noark/Noark-5">Noark
941 5-løsninger</a> i Norge.</p>
942
943 <p>Jeg fant høringsdokumentene hos
944 <a href="https://www.arkivrad.no/aktuelt/riksarkivarens-forskrift-pa-horing">Norsk
945 Arkivråd</a> etter å ha blitt tipset på epostlisten til
946 <a href="https://github.com/hiOA-ABI/nikita-noark5-core">fri
947 programvareprosjektet Nikita Noark5-Core</a>, som lager et Noark 5
948 Tjenestegresesnitt. Jeg er involvert i Nikita-prosjektet og takket
949 være min interesse for tjenestegrensesnittsprosjektet har jeg lest en
950 god del Noark 5-relaterte dokumenter, og til min overraskelse oppdaget
951 at standard epost ikke er på listen over godkjente formater som kan
952 arkiveres. Høringen med frist søndag er en glimrende mulighet til å
953 forsøke å gjøre noe med det. Jeg holder på med
954 <a href="https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/hoering-arkivforskrift.tex">egen
955 høringsuttalelse</a>, og lurer på om andre er interessert i å støtte
956 forslaget om å tillate arkivering av epost som epost i arkivet.</p>
957
958 <p>Er du igang med å skrive egen høringsuttalelse allerede? I så fall
959 kan du jo vurdere å ta med en formulering om epost-lagring. Jeg tror
960 ikke det trengs så mye. Her et kort forslag til tekst:</p>
961
962 <p><blockquote>
963
964 <p>Viser til høring sendt ut 2017-02-17 (Riksarkivarens referanse
965 2016/9840 HELHJO), og tillater oss å sende inn noen innspill om
966 revisjon av Forskrift om utfyllende tekniske og arkivfaglige
967 bestemmelser om behandling av offentlige arkiver (Riksarkivarens
968 forskrift).</p>
969
970 <p>Svært mye av vår kommuikasjon foregår i dag på e-post.  Vi
971 foreslår derfor at Internett-e-post, slik det er beskrevet i IETF
972 RFC 5322,
973 <a href="https://tools.ietf.org/html/rfc5322">https://tools.ietf.org/html/rfc5322</a>. bør
974 inn som godkjent dokumentformat.  Vi foreslår at forskriftens
975 oversikt over godkjente dokumentformater ved innlevering i § 5-16
976 endres til å ta med Internett-e-post.</p>
977
978 </blockquote></p>
979
980 <p>Som del av arbeidet med tjenestegrensesnitt har vi testet hvordan
981 epost kan lagres i en Noark 5-struktur, og holder på å skrive et
982 forslag om hvordan dette kan gjøres som vil bli sendt over til
983 arkivverket så snart det er ferdig. De som er interesserte kan
984 <a href="https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/epostlagring.md">følge
985 fremdriften på web</a>.</p>
986
987 <p>Oppdatering 2017-04-28: I dag ble høringuttalelsen jeg skrev
988 <a href="https://www.nuug.no/news/NUUGs_h_ringuttalelse_til_Riksarkivarens_forskrift.shtml">sendt
989 inn av foreningen NUUG</a>.</p>
990
991 </div>
992 <div class="tags">
993
994
995 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
996
997
998 </div>
999 </div>
1000 <div class="padding"></div>
1001
1002 <div class="entry">
1003 <div class="title">
1004 <a href="http://people.skolelinux.org/pere/blog/Free_software_archive_system_Nikita_now_able_to_store_documents.html">Free software archive system Nikita now able to store documents</a>
1005 </div>
1006 <div class="date">
1007 19th March 2017
1008 </div>
1009 <div class="body">
1010 <p>The <a href="https://github.com/hiOA-ABI/nikita-noark5-core">Nikita
1011 Noark 5 core project</a> is implementing the Norwegian standard for
1012 keeping an electronic archive of government documents.
1013 <a href="http://www.arkivverket.no/arkivverket/Offentlig-forvaltning/Noark/Noark-5/English-version">The
1014 Noark 5 standard</a> document the requirement for data systems used by
1015 the archives in the Norwegian government, and the Noark 5 web interface
1016 specification document a REST web service for storing, searching and
1017 retrieving documents and metadata in such archive. I've been involved
1018 in the project since a few weeks before Christmas, when the Norwegian
1019 Unix User Group
1020 <a href="https://www.nuug.no/news/NOARK5_kjerne_som_fri_programvare_f_r_epostliste_hos_NUUG.shtml">announced
1021 it supported the project</a>. I believe this is an important project,
1022 and hope it can make it possible for the government archives in the
1023 future to use free software to keep the archives we citizens depend
1024 on. But as I do not hold such archive myself, personally my first use
1025 case is to store and analyse public mail journal metadata published
1026 from the government. I find it useful to have a clear use case in
1027 mind when developing, to make sure the system scratches one of my
1028 itches.</p>
1029
1030 <p>If you would like to help make sure there is a free software
1031 alternatives for the archives, please join our IRC channel
1032 (<a href="irc://irc.freenode.net/%23nikita">#nikita on
1033 irc.freenode.net</a>) and
1034 <a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">the
1035 project mailing list</a>.</p>
1036
1037 <p>When I got involved, the web service could store metadata about
1038 documents. But a few weeks ago, a new milestone was reached when it
1039 became possible to store full text documents too. Yesterday, I
1040 completed an implementation of a command line tool
1041 <tt>archive-pdf</tt> to upload a PDF file to the archive using this
1042 API. The tool is very simple at the moment, and find existing
1043 <a href="https://en.wikipedia.org/wiki/Fonds">fonds</a>, series and
1044 files while asking the user to select which one to use if more than
1045 one exist. Once a file is identified, the PDF is associated with the
1046 file and uploaded, using the title extracted from the PDF itself. The
1047 process is fairly similar to visiting the archive, opening a cabinet,
1048 locating a file and storing a piece of paper in the archive. Here is
1049 a test run directly after populating the database with test data using
1050 our API tester:</p>
1051
1052 <p><blockquote><pre>
1053 ~/src//noark5-tester$ ./archive-pdf mangelmelding/mangler.pdf
1054 using arkiv: Title of the test fonds created 2017-03-18T23:49:32.103446
1055 using arkivdel: Title of the test series created 2017-03-18T23:49:32.103446
1056
1057 0 - Title of the test case file created 2017-03-18T23:49:32.103446
1058 1 - Title of the test file created 2017-03-18T23:49:32.103446
1059 Select which mappe you want (or search term): 0
1060 Uploading mangelmelding/mangler.pdf
1061 PDF title: Mangler i spesifikasjonsdokumentet for NOARK 5 Tjenestegrensesnitt
1062 File 2017/1: Title of the test case file created 2017-03-18T23:49:32.103446
1063 ~/src//noark5-tester$
1064 </pre></blockquote></p>
1065
1066 <p>You can see here how the fonds (arkiv) and serie (arkivdel) only had
1067 one option, while the user need to choose which file (mappe) to use
1068 among the two created by the API tester. The <tt>archive-pdf</tt>
1069 tool can be found in the git repository for the API tester.</p>
1070
1071 <p>In the project, I have been mostly working on
1072 <a href="https://github.com/petterreinholdtsen/noark5-tester">the API
1073 tester</a> so far, while getting to know the code base. The API
1074 tester currently use
1075 <a href="https://en.wikipedia.org/wiki/HATEOAS">the HATEOAS links</a>
1076 to traverse the entire exposed service API and verify that the exposed
1077 operations and objects match the specification, as well as trying to
1078 create objects holding metadata and uploading a simple XML file to
1079 store. The tester has proved very useful for finding flaws in our
1080 implementation, as well as flaws in the reference site and the
1081 specification.</p>
1082
1083 <p>The test document I uploaded is a summary of all the specification
1084 defects we have collected so far while implementing the web service.
1085 There are several unclear and conflicting parts of the specification,
1086 and we have
1087 <a href="https://github.com/petterreinholdtsen/noark5-tester/tree/master/mangelmelding">started
1088 writing down</a> the questions we get from implementing it. We use a
1089 format inspired by how <a href="http://www.opengroup.org/austin/">The
1090 Austin Group</a> collect defect reports for the POSIX standard with
1091 <a href="http://www.opengroup.org/austin/mantis.html">their
1092 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> :).
1093
1094 <p>The Nikita project is implemented using Java and Spring, and is
1095 fairly easy to get up and running using Docker containers for those
1096 that want to test the current code base. The API tester is
1097 implemented in Python.</p>
1098
1099 </div>
1100 <div class="tags">
1101
1102
1103 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
1104
1105
1106 </div>
1107 </div>
1108 <div class="padding"></div>
1109
1110 <div class="entry">
1111 <div class="title">
1112 <a href="http://people.skolelinux.org/pere/blog/Hva__mangler__i_OEP___litt_statistikk_utledet_fra_saksnummer_og_dokumentnummer.html">Hva «mangler» i OEP - litt statistikk utledet fra saksnummer og dokumentnummer</a>
1113 </div>
1114 <div class="date">
1115 29th January 2015
1116 </div>
1117 <div class="body">
1118 <p>En ting jeg har lurt på når det gjelder offentlige postjournaler,
1119 er hvor stor andel av det som ligger i de interne databasene kommer
1120 ikke med i postjournalen. Dette er det mulig å finne ut basert på det
1121 som ligger i postjournalen. For å forstå hva jeg mener, trengs det
1122 litt bakgrunnsinformasjon. I henhold til
1123 <a href="http://www.arkivverket.no/arkivverket/Offentleg-forvalting/Noark">NOARK-standarden</a>
1124 for norske offentlige arkiv skal enhver sak ha et årstall og et
1125 løpenummer, og ethvert dokument i saken skal gis et
1126 dokument-løpenummer. Det vil si at en ender opp med dokument-ID som
1127 ser ut som Ã…Ã…Ã…Ã…/SAKNR-DOKNR, f.eks. 2014/2-1 eller 2014/12312-14.
1128 Mange oppgir kun tosifret årstall, men prinsippet er det samme. Så
1129 vidt jeg vet skal saksnummer og dokumentnummer tildeles løpende og i
1130 stigende rekkefølge. Gitt en instans med følgende dokument-ID i
1131 postjournalen, så kan en regne ut hvor mye som ikke finnes i
1132 journalen:
1133
1134 <ul>
1135 <li>2014/2-1</li>
1136 <li>2014/5-1</li>
1137 <li>2014/5-3</li>
1138 </ul>
1139
1140 <p>Her ser en at saksnummer 2 og 5 finnes i postjournalen, mens
1141 nummerene 1, 3 og 4 mangler. En ser også at i sak 2014/5 mangler
1142 dokument 2. Ved hjelp av denne informasjonen har jeg regnet ut hvor
1143 stor andel av saksnummer og dokumentløpenummer som ikke har dukket opp
1144 i <a href="https://www.oep.no/">Offentlig Elektronisk Postjournal</a>
1145 (OEP). For saksnummer har jeg tatt utgangspunkt i at en ikke trenger
1146 å starte på 1, og dermed regnet med området fra laveste til høyeste
1147 saksnummer og talt antall unike saksnummer som forekommer i OEP. I
1148 dette tilfellet betyr de at 2 av 4 saksnummer er ubrukte (50%). For
1149 dokumentløpenummer har jeg tilsvarende tatt utgangspunkt i laveste og
1150 høyeste kjente dokumentløpenummer, for å handtere databaser der jeg
1151 mangler komplett postjournal. For sak 2014/5 her betyr det at 1 av 3
1152 dokumenter mangler (33%).</p>
1153
1154 <p>Det er flere årsaker til at det kan bli hull i nummerseriene.
1155 Feilføring der et dokument tildeles et nytt saksnummer ved en feil, og
1156 deretter flyttes inn i riktig sak vil gi et ubrukt saksnummer, da
1157 saksnummer skal tildeles i stigende rekkefølge og en ikke får opprette
1158 nye saker innimellom gamle saker. Tilsvarende kan skje med
1159 dokument-løpenummer. Det er jo heller ikke sikkert at et saksnummer i
1160 OEP er det samme som løpenummeret som brukes som saksnummeret i
1161 instansens interne datasystem. Kanskje snakker vi om ulike ontologier
1162 der en delmengde av interne saksnummer tilsvarer saksnummer i OEP.
1163 Hvis like nummer også tildeles andre ting enn saker som skal til OEP
1164 vil en tilsvarende få «hull» i saksnumrene i postjournalen.</p>
1165
1166 <p>Jeg er litt usikker på hva denne statistikken egentlig viser, og
1167 heller ikke sikker på om det er reelt sett mangler i OEP (som kanskje
1168 kunne anses å være kritikkverdig), bare er resultatet av hendelige
1169 uhell i nummertildelingen eller resultat av ulik ontologi i OEP og
1170 instansens datasystem. Men jeg syntes tallene og variasjonen var så
1171 interessant at jeg hadde lyst til å dele dem med mine lesere. Jeg har
1172 sortert listen på prosent upubliserte saksnummer for 2014.</p>
1173
1174 <table border="1">
1175 <tr><th colspan="6">Saksnummer</th><th colspan="3">Dokumentnummer</th><th rowspan="3">Instans</th></tr>
1176 <tr><th colspan="3">2014</th><th colspan="3">2013</th><th colspan="3">2014</th></tr>
1177 <tr><th>%</th><th>Upubl. saksnr.</th><th>Totalt</th>
1178 <th>%</th><th>Upubl. saksnr</th><th>Totalt</th>
1179 <th>%</th><th>Upubl. dok.nr.</th><th>Totalt</th>
1180 </tr>
1181
1182 <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>
1183 <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>
1184 <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>
1185 <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>
1186 <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>
1187 <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>
1188 <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>
1189 <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>
1190 <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>
1191 <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>
1192 <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>
1193 <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>
1194 <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>
1195 <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>
1196 <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>
1197 <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>
1198 <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>
1199 <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>
1200 <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>
1201 <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>
1202 <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>
1203 <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>
1204 <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>
1205 <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>
1206 <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>
1207 <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>
1208 <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>
1209 <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>
1210 <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>
1211 <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>
1212 <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>
1213 <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>
1214 <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>
1215 <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>
1216 <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>
1217 <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>
1218 <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>
1219 <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>
1220 <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>
1221 <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>
1222 <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>
1223 <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>
1224 <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>
1225 <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>
1226 <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>
1227 <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>
1228 <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>
1229 <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>
1230 <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>
1231 <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>
1232 <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>
1233 <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>
1234 <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>
1235 <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>
1236 <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>
1237 <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>
1238 <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>
1239 <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>
1240 <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>
1241 <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>
1242 <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>
1243 <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>
1244 <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>
1245 <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>
1246 <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>
1247 <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>
1248 <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>
1249 <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>
1250 <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>
1251 <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>
1252 <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>
1253 <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>
1254 <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>
1255 <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>
1256 <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>
1257 <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>
1258 <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>
1259 <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>
1260 <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>
1261 <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>
1262 <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>
1263 <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>
1264 <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>
1265 <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>
1266 <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>
1267 <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>
1268 <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>
1269 <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>
1270 <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>
1271 <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>
1272 <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>
1273 <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>
1274 <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>
1275 <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>
1276 <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>
1277 <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>
1278 <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>
1279 <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>
1280 <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>
1281 <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>
1282 <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>
1283 <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>
1284 <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>
1285 <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>
1286 <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>
1287 <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>
1288 <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>
1289 <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>
1290 <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>
1291 <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>
1292 <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>
1293 <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>
1294 <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>
1295 <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>
1296 <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>
1297 <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>
1298 <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>
1299 <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>
1300
1301 </table>
1302
1303 <p>Det kunne vært interessant å se hva som skjedde hvis en ba om
1304 innsyn i en dokument-ID som ikke finnes i OEP... :) Det hadde også
1305 vært interessant å få vite hva årsaken til at noen saksnummer ikke
1306 dukker opp i OEP der det er få og mange. Jeg mistenker jo at årsaken
1307 ikke er den samme hos Skattedirektoratet og hos Landinfo, selv om
1308 andelen upubliserte nummer er ganske lik.</p>
1309
1310 </div>
1311 <div class="tags">
1312
1313
1314 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>.
1315
1316
1317 </div>
1318 </div>
1319 <div class="padding"></div>
1320
1321 <div class="entry">
1322 <div class="title">
1323 <a href="http://people.skolelinux.org/pere/blog/Hvordan_b_r_RFC_822_formattert_epost_lagres_i_en_NOARK5_database_.html">Hvordan bør RFC 822-formattert epost lagres i en NOARK5-database?</a>
1324 </div>
1325 <div class="date">
1326 7th March 2014
1327 </div>
1328 <div class="body">
1329 <p>For noen uker siden ble NXCs fri programvarelisenserte
1330 NOARK5-løsning
1331 <a href="http://www.nuug.no/aktiviteter/20140211-noark/">presentert hos
1332 NUUG</a> (video
1333 <a href="https://www.youtube.com/watch?v=JCb_dNS3MHQ">på youtube
1334 foreløbig</a>), og det fikk meg til å titte litt mer på NOARK5,
1335 standarden for arkivhåndtering i det offentlige Norge. Jeg lurer på
1336 om denne kjernen kan være nyttig i et par av mine prosjekter, og for ett
1337 av dem er det mest aktuelt å lagre epost. Jeg klarte ikke finne noen
1338 anbefaling om hvordan RFC 822-formattert epost (aka Internett-epost)
1339 burde lagres i NOARK5, selv om jeg vet at noen arkiver tar
1340 PDF-utskrift av eposten med sitt epostprogram og så arkiverer PDF-en
1341 (eller enda værre, tar papirutskrift og lagrer bildet av eposten som
1342 PDF i arkivet).</p>
1343
1344 <p>Det er ikke så mange formater som er akseptert av riksarkivet til
1345 langtidsoppbevaring av offentlige arkiver, og PDF og XML er de mest
1346 aktuelle i så måte. Det slo meg at det måtte da finnes en eller annen
1347 egnet XML-representasjon og at det kanskje var enighet om hvilken som
1348 burde brukes, så jeg tok mot til meg og spurte
1349 <a href="http://samdok.com/">SAMDOK</a>, en gruppe tilknyttet
1350 arkivverket som ser ut til å jobbe med NOARK-samhandling, om de hadde
1351 noen anbefalinger:
1352
1353 <p><blockquote>
1354 <p>Hei.</p>
1355
1356 <p>Usikker på om dette er riktig forum å ta opp mitt spørsmål, men jeg
1357 lurer på om det er definert en anbefaling om hvordan RFC
1358 822-formatterte epost (aka vanlig Internet-epost) bør lages håndteres
1359 i NOARK5, slik at en bevarer all informasjon i eposten
1360 (f.eks. Received-linjer). Finnes det en anbefalt XML-mapping ala den
1361 som beskrives på
1362 &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
1363 mål er at det skal være mulig å lagre eposten i en NOARK5-kjerne og
1364 kunne få ut en identisk formattert kopi av opprinnelig epost ved
1365 behov.</p>
1366 </blockquote></p>
1367
1368 <p>Postmottaker hos SAMDOK mente spørsmålet heller burde stilles
1369 direkte til riksarkivet, og jeg fikk i dag svar derfra formulert av
1370 seniorrådgiver Geir Ivar Tungesvik:</p>
1371
1372 <p><blockquote>
1373 <p>Riksarkivet har ingen anbefalinger når det gjelder konvertering fra
1374 e-post til XML. Det står arkivskaper fritt å eventuelt definere/bruke
1375 eget format. Inklusive da - som det spørres om - et format der det er
1376 mulig å re-etablere e-post format ut fra XML-en. XML (e-post)
1377 dokumenter må være referert i arkivstrukturen, og det må vedlegges et
1378 gyldig XML skjema (.xsd) for XML-filene. Arkivskaper står altså fritt
1379 til å gjøre hva de vil, bare det dokumenteres og det kan dannes et
1380 utrekk ved avlevering til depot.</p>
1381
1382 <p>De obligatoriske kravene i Noark 5 standarden må altså oppfylles -
1383 etter dialog med Riksarkivet i forbindelse med godkjenning. For
1384 offentlige arkiv er det særlig viktig med filene loependeJournal.xml
1385 og offentligJournal.xml. Private arkiv som vil forholde seg til Noark
1386 5 standarden er selvsagt frie til å bruke det som er relevant for dem
1387 av obligatoriske krav.</p>
1388 </blockquote></p>
1389
1390 <p>Det ser dermed ut for meg som om det er et lite behov for å
1391 standardisere XML-lagring av RFC-822-formatterte meldinger. Noen som
1392 vet om god spesifikasjon i så måte? I tillegg til den omtalt over,
1393 har jeg kommet over flere aktuelle beskrivelser (søk på "rfc 822
1394 xml", så finner du aktuelle alternativer).</p>
1395
1396 <ul>
1397
1398 <li><a href="http://www.openhealth.org/xmtp/">XML MIME Transformation
1399 protocol (XMTP)</a> fra OpenHealth, sist oppdatert 2001.</li>
1400
1401 <li><a href="https://tools.ietf.org/html/draft-klyne-message-rfc822-xml-03">An
1402 XML format for mail and other messages</a> utkast fra IETF datert
1403 2001.</li>
1404
1405 <li><a href="http://www.informit.com/articles/article.aspx?p=32074">xMail:
1406 E-mail as XML</a> en artikkel fra 2003 som beskriver python-modulen
1407 rfc822 som gir ut XML-representasjon av en RFC 822-formattert epost.</li>
1408
1409 </ul>
1410
1411 <p>Finnes det andre og bedre spesifikasjoner for slik lagring? Send
1412 meg en epost hvis du har innspill.</p>
1413
1414 </div>
1415 <div class="tags">
1416
1417
1418 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>.
1419
1420
1421 </div>
1422 </div>
1423 <div class="padding"></div>
1424
1425 <p style="text-align: right;"><a href="noark5.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS Feed" width="36" height="14" /></a></p>
1426 <div id="sidebar">
1427
1428
1429
1430 <h2>Archive</h2>
1431 <ul>
1432
1433 <li>2019
1434 <ul>
1435
1436 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/01/">January (4)</a></li>
1437
1438 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/02/">February (3)</a></li>
1439
1440 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/03/">March (3)</a></li>
1441
1442 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/05/">May (1)</a></li>
1443
1444 </ul></li>
1445
1446 <li>2018
1447 <ul>
1448
1449 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/01/">January (1)</a></li>
1450
1451 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/02/">February (5)</a></li>
1452
1453 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/03/">March (5)</a></li>
1454
1455 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/04/">April (3)</a></li>
1456
1457 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/06/">June (2)</a></li>
1458
1459 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/07/">July (5)</a></li>
1460
1461 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/08/">August (3)</a></li>
1462
1463 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/09/">September (3)</a></li>
1464
1465 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/10/">October (5)</a></li>
1466
1467 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/11/">November (2)</a></li>
1468
1469 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/12/">December (4)</a></li>
1470
1471 </ul></li>
1472
1473 <li>2017
1474 <ul>
1475
1476 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/01/">January (4)</a></li>
1477
1478 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/02/">February (3)</a></li>
1479
1480 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/03/">March (5)</a></li>
1481
1482 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/04/">April (2)</a></li>
1483
1484 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/06/">June (5)</a></li>
1485
1486 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/07/">July (1)</a></li>
1487
1488 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/08/">August (1)</a></li>
1489
1490 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/09/">September (3)</a></li>
1491
1492 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/10/">October (5)</a></li>
1493
1494 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/11/">November (3)</a></li>
1495
1496 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/12/">December (4)</a></li>
1497
1498 </ul></li>
1499
1500 <li>2016
1501 <ul>
1502
1503 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/01/">January (3)</a></li>
1504
1505 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/02/">February (2)</a></li>
1506
1507 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/03/">March (3)</a></li>
1508
1509 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/04/">April (8)</a></li>
1510
1511 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/05/">May (8)</a></li>
1512
1513 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/06/">June (2)</a></li>
1514
1515 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/07/">July (2)</a></li>
1516
1517 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/08/">August (5)</a></li>
1518
1519 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/09/">September (2)</a></li>
1520
1521 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/10/">October (3)</a></li>
1522
1523 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (8)</a></li>
1524
1525 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/12/">December (5)</a></li>
1526
1527 </ul></li>
1528
1529 <li>2015
1530 <ul>
1531
1532 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
1533
1534 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
1535
1536 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
1537
1538 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
1539
1540 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
1541
1542 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
1543
1544 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
1545
1546 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
1547
1548 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
1549
1550 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
1551
1552 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
1553
1554 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (3)</a></li>
1555
1556 </ul></li>
1557
1558 <li>2014
1559 <ul>
1560
1561 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
1562
1563 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
1564
1565 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
1566
1567 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
1568
1569 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
1570
1571 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
1572
1573 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
1574
1575 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
1576
1577 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
1578
1579 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
1580
1581 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
1582
1583 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
1584
1585 </ul></li>
1586
1587 <li>2013
1588 <ul>
1589
1590 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
1591
1592 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
1593
1594 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
1595
1596 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
1597
1598 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
1599
1600 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
1601
1602 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
1603
1604 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
1605
1606 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
1607
1608 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
1609
1610 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
1611
1612 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
1613
1614 </ul></li>
1615
1616 <li>2012
1617 <ul>
1618
1619 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
1620
1621 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
1622
1623 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
1624
1625 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
1626
1627 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
1628
1629 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
1630
1631 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
1632
1633 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
1634
1635 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
1636
1637 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
1638
1639 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
1640
1641 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
1642
1643 </ul></li>
1644
1645 <li>2011
1646 <ul>
1647
1648 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
1649
1650 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
1651
1652 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
1653
1654 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
1655
1656 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
1657
1658 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
1659
1660 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
1661
1662 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
1663
1664 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
1665
1666 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
1667
1668 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
1669
1670 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
1671
1672 </ul></li>
1673
1674 <li>2010
1675 <ul>
1676
1677 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
1678
1679 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
1680
1681 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
1682
1683 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
1684
1685 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
1686
1687 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
1688
1689 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
1690
1691 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
1692
1693 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
1694
1695 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
1696
1697 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
1698
1699 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
1700
1701 </ul></li>
1702
1703 <li>2009
1704 <ul>
1705
1706 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
1707
1708 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
1709
1710 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
1711
1712 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
1713
1714 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
1715
1716 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
1717
1718 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
1719
1720 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
1721
1722 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
1723
1724 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
1725
1726 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
1727
1728 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
1729
1730 </ul></li>
1731
1732 <li>2008
1733 <ul>
1734
1735 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
1736
1737 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
1738
1739 </ul></li>
1740
1741 </ul>
1742
1743
1744
1745 <h2>Tags</h2>
1746 <ul>
1747
1748 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (16)</a></li>
1749
1750 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
1751
1752 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
1753
1754 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
1755
1756 <li><a href="http://people.skolelinux.org/pere/blog/tags/betalkontant">betalkontant (8)</a></li>
1757
1758 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (11)</a></li>
1759
1760 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (17)</a></li>
1761
1762 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
1763
1764 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
1765
1766 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (167)</a></li>
1767
1768 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (158)</a></li>
1769
1770 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian-handbook">debian-handbook (4)</a></li>
1771
1772 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (11)</a></li>
1773
1774 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (17)</a></li>
1775
1776 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (25)</a></li>
1777
1778 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
1779
1780 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (401)</a></li>
1781
1782 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
1783
1784 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (14)</a></li>
1785
1786 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (33)</a></li>
1787
1788 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
1789
1790 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (20)</a></li>
1791
1792 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
1793
1794 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (42)</a></li>
1795
1796 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (16)</a></li>
1797
1798 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (21)</a></li>
1799
1800 <li><a href="http://people.skolelinux.org/pere/blog/tags/kodi">kodi (4)</a></li>
1801
1802 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
1803
1804 <li><a href="http://people.skolelinux.org/pere/blog/tags/lego">lego (4)</a></li>
1805
1806 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
1807
1808 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
1809
1810 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
1811
1812 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
1813
1814 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (42)</a></li>
1815
1816 <li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (12)</a></li>
1817
1818 <li><a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5 (13)</a></li>
1819
1820 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (305)</a></li>
1821
1822 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (194)</a></li>
1823
1824 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (36)</a></li>
1825
1826 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
1827
1828 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (73)</a></li>
1829
1830 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (108)</a></li>
1831
1832 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (2)</a></li>
1833
1834 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
1835
1836 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
1837
1838 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
1839
1840 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (11)</a></li>
1841
1842 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
1843
1844 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (7)</a></li>
1845
1846 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
1847
1848 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (55)</a></li>
1849
1850 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
1851
1852 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
1853
1854 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (62)</a></li>
1855
1856 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (6)</a></li>
1857
1858 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (12)</a></li>
1859
1860 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (55)</a></li>
1861
1862 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (4)</a></li>
1863
1864 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
1865
1866 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (9)</a></li>
1867
1868 <li><a href="http://people.skolelinux.org/pere/blog/tags/verkidetfri">verkidetfri (15)</a></li>
1869
1870 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (73)</a></li>
1871
1872 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
1873
1874 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (42)</a></li>
1875
1876 </ul>
1877
1878
1879 </div>
1880 <p style="text-align: right">
1881 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
1882 </p>
1883
1884 </body>
1885 </html>