menu

arrow_back Hva konkret må et Excel xlsx regneark inneholde for å være et Gyldig arkivformat iht. Arkivforskriften?

av
(423 poeng) 1 3 11
i Elektroniske arkiver
310 visninger
0 stemmer

Arkivverket har notert .xlsx og .docx som et Gyldig arkivformat, der betyr betinget gitt at noen krav er innfridd.

Når Depot mottar uttrekk med Excel .xslx og Word .docx filformater, hva konkret må disse inneholde for at de skal kunne godkjennes av Depot iht. Arkivforskriften?
- Skrevet praktisk slik at en produksjonslinje kan validere etter gitte konkrete kriterier og enten GODKJENNE eller AVVISE filen som arkivformat

https://lovdata.no/forskrift/2017-12-19-2286/§5-17

§ 5-17.Godkjente filformater for arkivdokumenter ved avlevering eller deponering

(1) Følgende formater er godkjente ved avlevering eller deponering:
...
g. For regneark aksepteres følgende formater:
- PDF/A – med de presiseringer som fremgår av § 5-18, andre ledd.
- XML, med de presiseringer som fremgår av § 5-19.
- For regneark i OOXML eller ODF format bør en PDF/A-versjon leveres som tillegg.

§ 5-19.Spesifiserte krav til arkivdokumenter i XML-format eller JSON-format

(1) Tegnsett i XML-dokumenter skal være UTF-8 eller ISO 8859-1/8859-4.
(2) Når XML-dokumenter har DTD (Document Type Definition), alternativt XML Schema, og malfiler, for eksempel for stiloppsett, skal disse ligge ved som egne filer. Tilhørende XML Schema skal også ligge ved i de tilfeller XML-dokumenter bygger på fastsatte standarder som ISO/IEC 26300:2006 – Open Document Format (ODF), Microsofts og Ecmas Office Open XML-standard – OOXML (ECMA-376 ISO/IEC 29500).
(3) DTD-er, XML Schemas og malfiler som deles av flere dokumenter, kan lagres én gang på overordnet nivå i en hierarkisk filstruktur på vedkommende lagringsenhet, forutsatt at det brukes relative filreferanser. Alle øvrige filer eller objekter som det enkelte XML-dokument refererer til, skal være samlet i en underkatalog, jf. § 5-31 nr. 1 bokstav b. XML filer skal ikke inneholde binære objekter.
(4) Andre og tredje ledd gjelder ikke for arkivuttrekk i XML-format, jf. § 5-13.
(5) Tegnsett i JSON-filer skal være UTF-8 eller ISO 8859-1/8859-4.
(6) JSON-filer skal ikke inneholde binære objekter.
(7) For JSON-filer bør det følge med et korresponderende JSON Schema som spesifisert på json-schema.org.
(8) Filer eller objekter som det enkelte JSON-dokument refererer til, skal være samlet i en underkatalog, jf. § 5-31 nr. 1 bokstav b.

0 Endret ved forskrift 27 jan 2022 nr. 132 (i kraft 1 mars 2022).

1 svar

Akseptert svar
1 stemme
 
Akseptert svar

TL;DR: Du vil ha denne i verktøykassa for å validere OOXML.

OOXML er et arkivformat*, til forskjell fra PDF, som etter min mening er et formidlingsformat. Tidligere har jeg selv vært tilbakeholden med å akseptere flere formater, men har etter en del lesing kommet til at filer i OOXML er mer bevaringsvennlige, på lik linje med f.eks.: Typst og LaTeX. Altså, formater som kan kompileres til vilkårlige formidlingsformater uten uønsket tap av informasjon.

En gyldig OOXML-fil er en fil som følger IEC 29500. Du kan manuelt validere dette ved å åpne en docx-fil i f.eks. 7zip eller PKZip. Docx er egentlig bare en arkivpakke som inneholder word-dokumentet fordelt på flere xml, bilder og andre medietyper du har inkludert, la meg forklare:

Office Open XML-dokumenter er lagret i Open Packaging Conventions (OPC)-pakker, som er ZIP-filer som inneholder XML og andre datafiler, sammen med en spesifikasjon av relasjonene mellom dem. Avhengig av dokumenttypen, har pakkene forskjellige interne katalogstrukturer og navn. En applikasjon vil bruke relasjonsfilene for å finne individuelle seksjoner (filer), med hver seksjon som har tilhørende metadata, spesielt MIME-metadata.

* Dersom filen inneholder essensielle elementer som skrifttype i ISO/IEC 14496-22:2007 format osv.

Utrolig lang forklaring:

En grunnleggende pakke inneholder en XML-fil kalt [Content_Types].xml i roten, sammen med tre kataloger: _rels, docProps, og en katalog spesifikk for dokumenttypen (for eksempel, i en .docx tekstbehandlingspakke, ville det være en word-katalog). Word-katalogen inneholder document.xml-filen som er kjernen i innholdet i dokumentet.

[Content_Types].xml
Denne filen gir MIME-type informasjon for deler av pakken, ved å bruke standarder for visse filutvidelser og overstyringer for deler spesifisert av IRI.

_rels
Denne katalogen inneholder relasjoner for filene i pakken. For å finne relasjonene for en spesifikk fil, se etter _rels-katalogen som er et søsken av filen, og deretter etter en fil som har det opprinnelige filnavnet med .rels som filformat. For eksempel, hvis filen for innholdstyper hadde noen relasjoner, ville det være en fil kalt [Content_Types].xml.rels inne i _rels-katalogen.

_rels/.rels
Denne filen er hvor pakkerelasjonene er lokalisert. Applikasjoner ser her først. Ved å se i en teksteditor, vil man se at den beskriver hver relasjon for den seksjonen. I et minimalt dokument som bare inneholder den grunnleggende document.xml-filen, er de detaljerte relasjonene metadata og document.xml.

docProps/core.xml
Denne filen inneholder kjernepropsene for ethvert Office Open XML-dokument.

word/document.xml
Denne filen er hoveddelen for ethvert Word-dokument. Det er her all teksten ligger.

Relasjoner

Et eksempel på en relasjonsfil (word/_rels/document.xml.rels) er (hentet fra wikipedia):

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<Relationships xmlns="http://schemas.microsoft.com/package/2005/06/relationships">
     <Relationship Id="rId1"
             Type="http://schemas.microsoft.com/office/2006/relationships/image"
             Target="http://en.wikipedia.org/images/wiki-en.png"
             TargetMode="External" 
    />
     <Relationship Id="rId2"
             Type="http://schemas.microsoft.com/office/2006/relationships/hyperlink"
             Target="http://www.wikipedia.org"
             TargetMode="External" 
    />
</Relationships>

Slik sett, kan bilder som er referert i dokumentet finnes i relasjonsfilen ved å se etter alle relasjoner som er av typen http://schemas.microsoft.com/office/2006/relationships/image.

Følgende XML viser et eksempel på inline markup for en hyperlink:

<w:hyperlink r:id="rId2" w:history="1"
     xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"
     xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"
>

I dette eksempelet er Uniform Resource Locator (URL) i relasjonens «target»-attributt referert gjennom relasjonsidentifikatoren, rId2. Lenkede bilder, maler og andre elementer refereres på samme måte.

Bilder kan være innebygde eller lenket ved hjelp av en tag:

<v:imagedata w:rel="rId1" o:title="example" />

Dette er referansen til bildefilen. Alle referanser håndteres via relasjoner. For eksempel har en document.xml en relasjon til bildet. Det er en _rels-katalog i samme katalog som document.xml, inne i _rels er det en fil kalt document.xml.rels. I denne filen vil det være en relasjonsdefinisjon som inneholder type, ID og plassering. ID-en er den refererte ID-en brukt i XML-dokumentet. Typen vil være en referanseskjemadefinisjon for medietypen og plasseringen vil være en intern plassering i ZIP-pakken eller en ekstern plassering definert med en URL.

Dokumentegenskaper

Office Open XML bruker Dublin Core Metadata Element Set og DCMI Metadata Terms for å lagre dokumentegenskaper. Dublin Core er en standard for tverrdomene informasjonsressursbeskrivelse og er definert i ISO 15836:2003.

Et eksempel på en dokumentegenskapsfil (docProps/core.xml) som bruker Dublin Core-metadata, er:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"
    xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>
     <dc:title>Office Open XML</dc:title>
     <dc:subject>File format and structure</dc:subject>
     <dc:creator>Wikipedia</dc:creator>
     <cp:keywords>Office Open XML, Metadata, Dublin Core</cp:keywords>
     <dc:description>Office Open XML uses ISO 15836:2003</dc:description>
     <cp:lastModifiedBy>Wikipedia</cp:lastModifiedBy>
     <cp:revision>1</cp:revision>
     <dcterms:created xsi:type="dcterms:W3CDTF">2008-06-19T20:00:00Z</dcterms:created>
     <dcterms:modified xsi:type="dcterms:W3CDTF">2008-06-19T20:42:00Z</dcterms:modified>
     <cp:category>Document file format</cp:category>
     <cp:contentStatus>Final</cp:contentStatus>

</cp:coreProperties>

Dokumentmarkeringsspråk

En Office Open XML-fil kan inneholde flere dokumenter kodet i spesialiserte markeringsspråk som tilsvarer applikasjoner i Microsoft Office. Office Open XML definerer flere vokabular ved bruk av 27 navneområder og 89 skjemamoduler.

De primære markeringsspråkene er:

  • WordprocessingML for tekstbehandling
  • SpreadsheetML for regneark
  • PresentationML for presentasjoner

Delt markeringsspråkmateriale inkluderer:

  • Office Math Markup Language (OMML)
  • DrawingML brukt for vektortegning, diagrammer, og for eksempel tekstkunst (tillegg, selv om det er avskrevet, støttes VML for tegning)
  • Utvidede egenskaper
  • Egendefinerte egenskaper
  • Varianttyper
  • Egendefinerte XML-datategenskaper
  • Bibliografi

I tillegg til de ovennevnte markeringsspråkene, kan egendefinerte XML-skjemaer brukes til å utvide Office Open XML.

Ned i kaninhullet

Patrick Durusau, redaktøren av ODF, har sett på markeringsstilen til OOXML og ODF som representasjon av to sider av en debatt: «element-siden» og «attributt-siden». Han bemerker at OOXML representerer «element-siden av denne tilnærmingen» og peker ut KeepNext-elementet som et eksempel:

<w:pPr> 
    <w:keepNext/> 
     … 
</w:pPr>

I kontrast bemerker han at ODF ville bruke et enkelt attributt fo:keep-next, i stedet for et element, for samme semantikk.

XML-skjemaet til Office Open XML legger vekt på å redusere lastetid og forbedre parsinghastighet. I en test med applikasjoner gjeldende i april 2007, var XML-baserte kontordokumenter tregere å laste enn binære formater. For å forbedre ytelsen bruker Office Open XML veldig korte elementnavn for vanlige elementer, og regneark lagrer datoer som indeksnumre (startende fra 1900 eller fra 1904). For å være systematisk og generisk, bruker Office Open XML typisk separate barneelementer for data og metadata (elementnavn som slutter på Pr for egenskaper) i stedet for å bruke flere attributter, noe som tillater strukturerte egenskaper. Office Open XML bruker ikke blandet innhold, men bruker elementer for å sette en serie tekstkjøringer (elementnavn r) inn i avsnitt (elementnavn p). Resultatet er kortfattet og sterkt nøstet i kontrast til HTML, for eksempel, som er ganske flatt, designet for mennesker å skrive i tekstredigerere og er mer hyggelig for mennesker å lese.

Navngivningen av elementer og attributter i teksten har trukket noe kritikk. Det er tre forskjellige syntakser i OOXML (ECMA-376) for å spesifisere fargen og justeringen av tekst avhengig av om dokumentet er en tekst, regneark eller presentasjon. Rob Weir (en IBM-ansatt og medleder av OASIS OpenDocument Format TC) spør «Hva er den tekniske begrunnelsen for denne skrekken?». Han kontrasterer med OpenDocument: "«ODF bruker W3C's XSL-FO vokabular for tekststil, og bruker dette vokabularet konsekvent».

Noen har argumentert for at designet er basert for nært på Microsoft-applikasjoner. I august 2007 publiserte Linux Foundation et blogginnlegg som oppfordret ISO nasjonale organer til å stemme «Nei, med kommentarer» under internasjonal standardisering av OOXML. Det sa,

«OOXML er en direkte port av en enkelt leverandørs binære
dokumentformater. Den unngår gjenbruk av relevante eksisterende
internasjonale standarder (f.eks. flere kryptografiske algoritmer,
VML, etc.). Det er bokstavelig talt hundrevis av tekniske feil som bør
adresseres før standardisering av OOXML inkludert fortsatt bruk av
binær kode knyttet til plattformspesifikke funksjoner, formidling av
feil i MS-Office til standarden, proprietære enheter, referanser til
proprietære/konfidensielle tagger, uklare IP- og patenrettigheter, og
mye mer».

Versjonen av standarden som ble sendt til JTC 1 var 6546 sider lang. Behovet og hensiktsmessigheten av en slik lengde har blitt stilt spørsmål ved. Google uttalte at "ODF-standarden, som oppnår det samme målet, er bare 867 sider".

Uansett, det er mye å dykke ned i rundt OOXML. Det finnes også flere programvarer som kan validere om noe er OOXML, blant annet er det en plug-in til vscode, eller denne .NET CLI-pakken fra samme utvikler.

av
(380 poeng) 1 2 13
redigert av

Velkommen!

Søk etter svar, still spørsmål og bidra med kunnskap sammen med norges felleskap på felter som arkiv, konservering og formidling. Alle er velkomne som medlemmer! Her er terskelen for å spørre veldig lav.


Kunngjøringer :

Artikkelmodulen vil snart bli tilgjengelig!