UNIVERSITEIT ANTWERPEN INSTITUUT VOOR ONDERWIJS- EN INFORMATIEWETENSCHAPPEN INFORMATIE- EN BIBLIOTHEEKWETENSCHAP Archivering van databanken binnen de Vlaamse overheid Promotor: Prof. Dr. Kees Van der meer Eindverhandeling ingediend ter verkrijging van het diploma ‘Gespecialiseerde Studie Informatie- en Bibliotheekwetenschap’ door: Sam Alloing. 23 februari 20081. ....................................................................................................... Inleiding 1.1. Wat is (digitaal) archiveren? ............................................................................................ 4 1.2. Wat zijn databanksystemen? .......................................................................................... 7 1.2.1. Databankonderdelen ................................................................................................. 7 1.2.2. Datamodellen ............................................................................................................ 7 1.2.3. Soorten databanksystemen ....................................................................................... 9 1.2.4. Datatypes ................................................................................................................ 10 1.2.5. Zoektalen ................................................................................................................. 10 2. Wat betekent het archiveren van een databank? ................................................................. 11 2.1. Archiveren van datasets ................................................................................................ 11 2.2. Archiveren van databanken........................................................................................... 11 2.3. Datawarehouses ........................................................................................................... 12 3. Vraagstukken bij het archiveren van databanken ................................................................. 13 3.1. Wat moet gearchiveerd worden? .................................................................................. 13 3.2. Wanneer moet er gearchiveerd worden? ...................................................................... 14 3.3. Eisen bij het archiveren ................................................................................................. 16 3.4. Wettelijke aspecten bij het archiveren van databanken ................................................ 17 4. Metadata .............................................................................................................................. 20 4.1. De keuze van metadata ................................................................................................ 21 5. Wat zijn de essentiële kenmerken en authenticiteitseisen van een databank? .................... 24 5.1. Inhoud ........................................................................................................................... 26 5.2. Context.......................................................................................................................... 26 5.3. Structuur ....................................................................................................................... 27 5.4. Uiterlijk .......................................................................................................................... 28 5.5. Gedrag .......................................................................................................................... 28 6. Een digitale archiveringsstrategie ........................................................................................ 29 6.1. De keuze van een strategie .......................................................................................... 29 6.2. Migratie ......................................................................................................................... 30 6.2.1. Standaardformaten .................................................................................................. 31 2 6.2.2. Interoperabiliteit ....................................................................................................... 42 6.3. Conversie ...................................................................................................................... 43 6.4. Emulatie ........................................................................................................................ 44 6.5. Geen bewaarstrategie gebruiken .................................................................................. 46 6.6. Conclusie bewaarstrategieën ........................................................................................ 48 7. Stand van zaken van projecten en hulpmiddelen ................................................................. 51 7.1. Emulatie ........................................................................................................................ 51 7.2. Conversie ...................................................................................................................... 52 7.3. Interoperabiliteit ............................................................................................................ 53 7.4. XML als bewaarformaat ................................................................................................ 54 7.4.1. Digitale Duurzaamheid ............................................................................................ 54 7.4.2. Arkade en Arkadukt ................................................................................................. 54 7.4.3. RODA ...................................................................................................................... 55 7.4.4. MIXED ..................................................................................................................... 56 7.5. SIARD ........................................................................................................................... 57 7.6. Chronos ........................................................................................................................ 58 7.7. RDF en OWL ................................................................................................................ 62 8. Minimale metadataset voor databanken .............................................................................. 62 9. Richtlijnen ............................................................................................................................ 66 10. Stappenplannen.................................................................................................................. 68 10.1. Voorbereidende stappen ............................................................................................. 68 10.2. Stappenplan voor langetermijnarchivering van databanken in XML ............................ 69 10.2.1. Valideren van gearchiveerde bestanden ............................................................... 70 10.3. Stappenplan bij het archiveren van grote databanken ................................................ 71 10.3.1. Stappenplan voor het omzetten van de databank.................................................. 71 10.3.2. Stappenplan voor het omzetten van de gegevens ................................................. 72 10.3.3. Valideren van de gearchiveerde bestanden........................................................... 72 11. Conclusie ............................................................................................................................ 73 12. Lijst van figuren .................................................................................................................. 76 3 13. Bibliografie .......................................................................................................................... 77 1. Inleiding Van april 2007 – augustus 2007 werd er een bevraging uitgevoerd bij de afdelingen van de Vlaamse overheid1. De bevraging peilde de huidige stand van zaken van het archiefbeleid bij de Vlaamse overheid, zowel voor het papieren archief als het digitale archief. Uit het projectrapport ‘Geheugen in gevaar: Analyse van het beheer van het digitale en papieren archief bij de Vlaamse ministeries’2 blijkt dat er weinig afdelingen een uitgewerkte strategie hebben rond digitaal archiveren. De afdelingen hebben meer en meer digitale bestanden en werken meer en meer digitaal. Hierdoor stijgt ook het aandeel van het digitaal archief. Als het digitale archief niet goed beheerd wordt, dan verliest de Vlaamse overheid informatie. Daarom is het belangrijk om een bewaarstrategie uit te werken voor digitale archiefobjecten. Doel van deze tekst is om de verschillende aspecten, zowel technisch, procedureel als wettelijk, van databank archiveren te onderzoeken en om een overzicht te geven van verschillende technieken om databanken te archiveren binnen de Vlaamse overheid. Op basis van het overzicht wordt er een techniek naar voor geschoven om databanken te archiveren bij de Vlaamse overheid. Er worden ook een aantal aandachtpunten opgesomd bij het maken van een databank. Er worden praktische richtlijnen opgesomd die het archiveren van databanken vereenvoudigen en een stappenplan voor het omzetten van de databank in een duurzame formaat. Deze tekst is geen handleiding bij het archiveren van databanken. De tekst is bedoeld als een startpunt om een archiveringsstrategie voor databanken uit te werken. 1.1. Wat is (digitaal) archiveren? Archivering is de opslag, de ontsluiting en de terbeschikkingstelling van archiefobjecten met het oog op bewaring. Digitale objecten worden duurzaam opgeslagen en de inhoud wordt ontsloten zodat de informatie terug te vinden is en de inhoud ter beschikkinggesteld wordt aan de gebruikers. Het moet duidelijk zijn dat hier niet het technisch archiveren of het maken van een back-up van een databank bedoeld wordt, maar het bewaren op lange termijn van de databank3. Een 1 De bevraging werd uitgevoerd bij de departementen en IVA’s zonder rechtspersoonlijkheid of Intern Verzelfstandigde Agentschappen. Deze worden rechtstreeks door een minister aangestuurd. 2 Dit is een intern rapport 3 Met technisch archiveren wordt bedoeld het opslaan van gegevens op een compactere manier om ruimte te besparen. Dit wordt toegepast op bestanden, die niet meer zo frequent gebruikt worden, om zo de bestaande infrastructuur te ontlasten. Back-up is een tijdelijke opslag van bestanden. Back-ups worden gemaakt voor het geval er zich problemen 4 belangrijk verschil tussen inhoudelijk archiveren enerzijds en back-up en technisch archiveren anderzijds, is dat bij inhoudelijk archiveren een selectie gemaakt wordt van wat bewaard moet blijven en een termijn wordt vastgelegd over hoe lang iets moet bewaard blijven. Er zijn verschillende motivaties mogelijk bij het vastleggen van de bewaartermijnen. Er is het administratief en juridisch belang, maar er is ook het historisch belang. De tijd dat een object moet bewaard blijven hangt af van de bewaartermijn. Dit geldt zowel voor papieren als digitale objecten. Er is maar een kleine hoeveelheid objecten, die permanent bewaard moeten blijven. Een archief dat goed beheerd wordt, maakt het mogelijk om snel en eenvoudig te bepalen wat, wanneer vernietigd mag worden. Sommige bestanden moeten lang bewaard worden omdat ze een neerslag zijn van de activiteiten van een archiefvormer. Onder de omvattende term ‘digitaal object’ verstaat men alle soorten van informatie die als archief gekenmerkt kan worden. Een digitaal object omvat dus zowel een kantoordocument, een e-mailbericht, een databank of een volledige website. Het wordt gebruikt als verzamelnaam aangezien de klassieke term ‘archiefstukken’ of ‘archiefbescheiden’ niet toereikend is in de digitale wereld en verwarring schept over het bereik van digitaal archiefbeheer. Wat betreft de archivering is de precieze vorm van een digitaal object niet van belang; elke vorm vertoont gemeenschappelijke kenmerken en vergt gelijkaardige inspanningen voor duurzame bewaring. De specifieke kenmerken van elk object zal deze inspanningen uiteraard beïnvloeden. Een archiefobject doorloopt verschillende fasen tijdens zijn levenscyclus. De dynamische fase begint bij het ontstaan van het object en loopt af op het moment dat het object afgesloten wordt. De volgende fase is de semi-statische fase. In deze fase heeft het object nog steeds een administratieve en/of juridische waarde, maar het object is afgesloten en wordt niet meer aangevuld. Het object is hier nog altijd belangrijk voor de archiefvormer. De bewaartermijn bepaalt de tijd dat semi-statisch archief bewaard moet blijven. Een betaalde factuur bijvoorbeeld moet om wettelijke redenen gedurende tien jaar bewaard blijven. Een afgesloten projectdossier heeft geen juridische waarde meer maar kan nog wel een administratieve waarde hebben. Het dossier wordt zolang bewaard tot het dossier relevant blijft voor de werking van de archiefvormer. Als de bewaartermijn overschreden is, verliest het object zijn administratieve en/of juridische waarde en mag het, mits toestemming van de Algemeen Rijksarchivaris of zijn gemachtigden, vernietigd worden. De volgende fase is de statische fase. In deze fase bevindt zich het archief dat om culturele of historische redenen bewaard blijft. Het zouden voordoen met de moederbestanden. Deze tekst wil geen afbreuk doen aan het nut van technisch archiveren of het maken van back-ups. Het zijn belangrijke onderdelen van een goed functionerend ICT-beleid. We willen er enkel op wijzen dat inhoudelijk archiveren een ander doel heeft dan technisch archiveren en het maken van back-ups. 5 archief in de statische fase wordt permanent bewaard en wordt overgedragen aan het Algemeen Rijksarchief. Bijvoorbeeld de notulen van directieraden verschaffen informatie die de beleidsmatige werking van een organisatie documenteert. Hierdoor hebben deze documenten ook een historische waard en worden ze doorgaans permanent bewaard. Een archiefobject of archiefstuk werd gemaakt met een bepaalde doelstelling. Het is ontstaan tijdens de uitoefening van een functie of de uitvoering van een handeling van de archiefvormer en bevat procesgebonden informatie. De band tussen object en proces mag niet verloren gaan, want anders verliest het haar juridische, administratieve of historische waarde. Deze band is wat men context noemt. Context is een heel belangrijk concept in de archiefwereld. Als er enkel een back-up gemaakt wordt, dan gaat deze context verloren. De relatie tussen een archiefobject en de functie binnen de processen wordt niet gedocumenteerd en op die manier gaat de administratieve en juridische context verloren. Als er enkel een back-up wordt gemaakt, dan wordt het bestand ook niet in een duurzaam formaat omgezet en kunnen er geen garanties gegeven worden dat de bestanden nog binnen een aantal jaren toegankelijk zijn. Om de band tussen object, proces en archiefvormer te kunnen aantonen ook over een lange termijn is niet alleen context belangrijk, maar ook integriteit, oorspronkelijke orde en authenticiteit. Integriteit is de eigenschap van een object dat volledig is. Het vormt een onderdeel van authenticiteit. Authenticiteit is een kenmerkende eigenschap van een archiefobject dat betrouwbaar is en dat is wat het beweert te zijn. Ook authenticiteit is een onderdeel van identiteit (het unieke karakter van een archiefobject). De definitie van archivering wijst op de risico’s die een slecht archiefbeheer kan voortbrengen. Ten eerste bestaat de kans dat de informatie die in de objecten besloten zit niet meer raadpleegbaar of zelfs begrijpbaar is op korte termijn. Een onbeheerd archief leidt tijdens de dynamische fase tot een gefnuikte informatie-uitwisseling, een verminderde productiviteit en uiteraard verhoogde kosten voor het inefficiënte beheer en opslag ervan 4. In een latere fase loopt het archief het risico waardeloos te worden door haar onbegrijpelijkheid of ontoegankelijkheid. Een ander risico dat in rekening gebracht moet worden is van juridische aard. Elk archiefobject binnen de Vlaamse overheid heeft een publiekrechterlijk karakter en valt onder de federale archiefwet van 1955. Deze wet plaatst het archief van de overheid onder de bevoegdheid van de Algemeen Rijksarchivaris, zonder wiens toestemming geen enkel archiefobject vernietigd 4 Patricia Daum, 'Evolving the Records Management Culture: From Ad Hoc to Adherence', The Information Management Journal, 41 (2007/3) 43-49. 6 mag worden. Daarnaast stelt het decreet betreffende de openbaarheid van bestuur 5 dat – opnieuw – elk object binnen een openbaar orgaan per definitie openbaar is en omwille van haar verantwoordingsplicht aan de betrokken burger ter beschikking moet worden gesteld op diens vraag. Een efficiënt archiefbeheer zal de publiekrechterlijke archiefvormer in staat stellen te voldoen aan haar wettelijke verplichtingen. 1.2. Wat zijn databanksystemen? Een databank wordt gebruikt om heel efficiënt grote hoeveelheden gegevens geordend op te slaan. Ze zijn het fundament waar gegevens uit worden gehaald door een programma, een website of rechtstreeks door een zoekvraag te formuleren. Ze nemen een belangrijke plaats in veel organisaties in. De Vlaamse overheid is geen uitzondering. 1.2.1. Databankonderdelen Een databank bestaat uit meer dan alleen data. Er zijn drie belangrijke delen te identificeren, namelijk de data, het databanksysteem (ook wel DBMS of Database Management System genoemd) en de toepassing die gebruik maakt van de databank. De toepassing kan in verschillende vormen voorkomen. Het kan bijvoorbeeld een webinterface zijn of een speciaal programma dat gebruik maakt van de databank of een interface gebouwd met het databankprogramma. Het DBMS wordt gebruikt om de data en de toegankelijkheid te beheren. Het beheer houdt bijvoorbeeld in dat een DBMS de juistheid en volledigheid van gegevens helpt te garanderen bij het gebruik van de gegevens, of het beschermt de gegevens tegen ongeautoriseerd gebruik. Het maakt de toegang van verschillende gebruikers of programma's mogelijk zonder dat de data inconsistent worden, bijvoorbeeld als een persoon een bepaalde rij aanpast, dan zijn er bepaalde functionaliteiten die zorgen dat als een andere persoon dezelfde rij wil aanpassen de data consistent blijven. 1.2.2. Datamodellen De data kunnen door het databanksysteem op verschillende manier geordend worden. De oudste soort databanksystemen zijn de hiërarchische en de netwerkdatabanken. Daarnaast zijn er ook relationele, XML gebaseerde en objectgeoriënteerde databanken. Hoewel de hiërarchische en netwerkdatabanken de oudste van de opgesomde soorten databanksystemen zijn, worden ze nog altijd gebruikt. De hiërarchische databank heeft een omgekeerde boomstructuur, te vergelijken met een organogram. De tabellen zijn gekoppeld 5 Voor een uitgebreidere bespreking van de wettelijke aspecten zie 3.4 Wettelijke aspecten bij het archiveren van databanken 7 door een ouder-kind relatie. Dit betekent dat elke kind-tabel één enkele ouder-tabel heeft, maar een ouder kan verschillende kind-tabellen hebben. Een kind-tabel is volledig afhankelijk van de ouder-tabel. Het kan niet bestaan zonder een ouder-tabel. Een voorbeeld van een hiërarchische databank is IMS6 van IBM. Een netwerkdatabank is in zekere zin een verfijning van het hiërarchisch model. Een kind-tabel kan in een netwerk model meerdere ouder-tabellen hebben en op die manier wordt er een netwerk van relaties gecreëerd. Een voorbeeld van een netwerkdatabank is CA-IDMS van CA. De meest gebruikte databank is de relationele databank en wordt hier daarom uitgebreider beschreven. De gegevens in een databank worden opgeslagen in een tabelvorm. Een tabel bestaat uit rijen en kolommen en vormen samen velden. Een rij wordt ook een tupel genoemd en bevat een eenheid. Bijvoorbeeld in een tabel met adressen bevat elke rij één adres. De kolommen bevatten de attributen van een eenheid. Als ook hier het voorbeeld van een adres gebruikt wordt, dan bevatten de kolommen bijvoorbeeld straat, nummer, gemeente en postcode. Dit is een bekend concept dat ook wordt gebruikt bij rekenbladen. Het verschil met een rekenblad is dat er bij tabellen van een databank relaties gelegd worden tussen de verschillende tabellen. Een databank bestaat meestal uit verschillende tabellen die op een bepaalde manier aan elkaar gekoppeld zijn. De relationele methode combineert de voordelen van het hiërarchisch en het netwerk model. De relaties tussen de verschillende tabellen zijn in zekere zin hiërarchisch, maar de ouder-tabellen moeten niet allemaal doorzocht worden om gegevens te vinden. De relaties tussen de tabellen zijn veel flexibeler. Het is mogelijk om zowel relaties te leggen tussen ouder-tabellen als tussen kind-tabellen. Om dergelijke flexibele relaties mogelijk te maken, wordt er gebruik gemaakt van een primaire sleutel. Een primaire sleutel identificeert een rij of een eenheid in een bepaalde tabel. Een andere soort databank is de objectgeoriënteerde databank. Deze gaat terug op het objectgeoriënteerd programmeren. Er wordt uitgegaan van het algemeen concept van objecten7. Een ingewikkeld concept kan opgedeeld worden in kleinere objecten. Het objectgeoriënteerde model wordt gebruikt bij databanken die complexe datatypes nodig hebben. Een relationele databank gebruikt eenvoudige datatypes zoals tekst, gehele getallen, decimale getallen,.... Complexe data types komen geregeld voor bij CAD of bij GIS 6 7 IMS staat voor Information Management System Hier wordt object bedoeld als een abstracte voorstelling door computers van concepten in de werkelijkheid. Bijvoorbeeld een auto kan een object zijn. Dit object bestaat in de werkelijkheid, maar voor de computer wordt er een abstracte voorstelling van gecreëerd met bepaalde eigenschappen die voor het computer programma van belang zijn. Andere eigenschappen worden niet opgenomen. Bijvoorbeeld de kleur, type motor,... 8 databanken8. Een object-relationeel model combineert de eigenschappen van een objectgeoriënteerd model en een relationeel model. XML is vooral gekend om documenten op te maken, maar het kan ook gebruikt worden om een databank te maken op basis van XML bestanden. De data in de databank worden gestructureerd aan de hand van een XML document. Deze databanken gebruiken niet alleen XML, maar ook andere gerelateerde XML-technologieën, zoals XQuery of XPath om de databank te bevragen. XQuery en XPath zijn een standaard zoektaal voor XML ontwikkeld door het W3C9. Een voorbeeld van een XML databank is eXist10. 1.2.3. Soorten databanksystemen In de meeste organisaties zijn er twee grote groepen van databanksystemen te onderscheiden. Er zijn de complexe databanken en de desktop databanken. Het gaat meestal over relationele databanken. De complexe databanken zijn uitgebreid en bevatten veel gegevens en verschillende tabellen die met relaties aan elkaar verbonden zijn. We hebben speciale functies om de beschikbaarheid, beveiliging, de integriteit,... van de databank te garanderen. Dit is nodig, omdat databanken een belangrijke plaats innemen in een organisatie en gemaakt en onderhouden worden door specialisten. Er wordt gebruik gemaakt van een speciale omgeving om de databank te ontwikkelen en te onderhouden. Een voorbeeld binnen de Vlaamse overheid van een dergelijke complexe databank is Vlimpers 11. De desktop databanken worden ontwikkeld en onderhouden door de eindgebruiker. Deze eindgebruiker hoeft geen speciale opleiding voor het ontwikkelen van databanken gevolgd te hebben. Vaak heeft de eindgebruiker wel een opleiding gevolgd om te leren werken met de desktop databank. De databank en het programma om de databank te ontwikkelen en onderhouden zijn meestal hetzelfde. Het programma heeft ook een eenvoudige interface, die het mogelijk maakt om een databank snel te ontwikkelen zonder al te veel voorkennis. Het is ook mogelijk om snel een interface te maken om gegevens in te voeren of weer te geven. De databanken zijn minder complex en hebben vaak ook een tijdelijk karakter. Een bijkomend probleem is dat er bij dergelijke databanken minder zorg wordt besteed aan het goed ontwikkelen van de databankstructuur. Snelheid van ontwikkelen primeert bij een dergelijke 8 Zo kan in een objectgeoriënteerde databank een object "weg" opgeslagen worden, zonder dat de attributen van de weg in rekening moeten gebracht worden. 9 http://www.w3.org/ 10 http://exist.sourceforge.net/ 11 Vlimpers is de databank met personeelsgegevens van de Vlaamse ambtenaren 9 aanpak12. Er kan enkel gebruik gemaakt worden van leveranciersspecifieke oplossingen. Een voorbeeld van een dergelijk programma is MS Access 13. 1.2.4. Datatypes In een databank worden gegevens opgeslagen volgens een bepaald datatype. Zoals eerder vermeld, wordt meestal gebruik gemaakt van tekstuele of numerieke gegevens. Afhankelijk van de databank zijn er ook andere datatypes beschikbaar. In databanken worden, naast tekst en numerieke gegevens, ook afbeeldingen, geluid, multimedia-bestanden opgeslagen of alles wat in een bitstream kan opgeslagen worden. Dit soort data worden opgeslagen in een datatype dat LOB (Large OBject wordt genoemd). Afhankelijk van de inhoud zijn er verschillenden soorten LOB's. Er zijn bijvoorbeeld BLOB of CLOB. BLOB staat voor Binairy Large OBjects en bevatten binaire data. CLOB staat voor Character Large OBject en bevat karakters. Elke databank leverancier heeft ook nog eigen datatypes. Bijvoorbeeld in MS Access is er een datatype hyperlink. Het is ook mogelijk voor de gebruiker om eigen datatypes te definiëren. Deze eigen ontwikkelde datatypes zijn afhankelijk van de gebruikte databank. 1.2.5. Zoektalen Een zoektaal wordt gebruikt om een databank te bevragen. De meest bekende zoektaal voor databanken is SQL. Het staat voor Structured Query Language. Het is de zoektaal voor relationele databanken. Het bestaat uit verschillende onderdelen, bijvoorbeeld SQL/PSM is een procedurele programmeertaal. Deze taal maakt van SQL een "gewone" programmeertaal en voegt bepaalde functies zoals een lus toe. Door de verschillende onderdelen is SQL meer dan alleen een zoektaal. SQL wordt verder uitgebreid besproken 14. Zoals eerder aangehaald is SQL niet de enige zoektaal. Bij een XML databank wordt gebruik gemaakt van XQuery. 12 Deze observatie is geen kritiek, maar het is wel een kenmerk waar rekening mee moet gehouden worden bij het ontwikkelen van een archiveringsstrategie. 13 http://office.microsoft.com/en-us/access/ 14 Zie 6.2.1.1. SQL 10 2. Wat betekent het archiveren van een databank? 2.1. Archiveren van datasets Soms wordt bij het bewaren van databanken enkel het bewaren van datasets bedoeld. Het grote verschil tussen het archiveren van datasets en databanken is dat bij een dataset de data in één of meer bestanden wordt bijgehouden en een beschrijving van de mogelijke relaties in een niet-formele taal15 gebeurd. Het is ook mogelijk dat er per tabel een lijst van gebruikte codes wordt aangemaakt om de codes in de dataset uit te leggen. Bijvoorbeeld in een bepaalde kolom kan M voor mannelijk en V voor vrouwelijk staan. Ook deze codes worden in een niet-formele taal beschreven16. Bijvoorbeeld EASY17 maakt een hele reeks gearchiveerde datasets toegankelijk. De data worden beschreven in een CSV-bestand18 en de code die gebruikt wordt in de dataset wordt toegelicht in een tekst bestand. Daarnaast is er nog een extra PDF-bestand met de metadata voor de data en de codes. Het bewaren van een dataset is een interessante mogelijkheid bij grote hoeveelheden uniforme data, zoals bij enquêtes of volkstellingen. Nog een verschil tussen het archiveren van databanken en datasets is dat een databank vaak uniek is en ontwikkeld wordt om aan een specifieke behoefte te voldoen. Er wordt bovenop de databank in de applicatielaag een eigen interface ontwikkeld. De interface is niet wijd verspreid en is vaak specifiek voor een bepaalde databank. Het wordt soms ook gemaakt in een ontwikkelomgeving die specifiek is voor een bepaalde leverancier. 2.2. Archiveren van databanken Bij databanken die minder uniforme data hebben, moet de volledige databank zoveel mogelijk bewaard worden. Hiermee wordt bedoeld: de data, relaties tussen de tabellen, de applicatielaag, de zoekvragen, procedurele talen, triggers19, subschema’s20, beperkingen,…. De 15 16 Een uitgebreidere bespreking is te vinden bij 6.2.1.1. Platte tekstbestand Er bestaan initiatieven om datasets beter te documenteren, zoals het Data Documentation Initiatief (DDI) http://www.ddialliance.org. Het is de bedoeling om een XML-gebaseerde standaard te maken voor de inhoud, presentatie, transport en bewaring van de documentatie van datasets in sociale en gedragswetenschappen. 17 EASY staat voor Electronic Archiving System. Het is een elektronisch depot van DANS. Voor een uitgebreide bespreking zie verder 18 CSV staat voor comma-separated value. Het is een bestand met een scheidingsteken aangebracht om de velden te scheiden. Zie verder 6.2.1.1. Platte tekstbestand. 19 Een trigger is een stuk procedurele code dat automatisch wordt uitgevoerd als een reactie op een bepaalde gebeurtenis in een tabel van een databank. 11 applicatielaag moet bijvoorbeeld bewaard blijven als er betekenis vervat zit in de applicatielaag over de data. De volledige databank geeft ook meer context. Doordat context zo belangrijk is, is het belangrijk om bij een databank niet alleen de inhoud (de data) te bewaren, maar ook de structuur van de databank. Zo blijft de databank voor een lange tijd verstaanbaar en is het mogelijk om de omstandigheden te reconstrueren waarin het archiefobject gebruikt werd. Context is niet alleen belangrijk voor de archivaris, maar ook voor de gebruiker van de gearchiveerde databank. Dankzij de context is het voor de gebruiker mogelijk om in te schatten wat de waarde is en beperkingen zijn van de data. Op deze manier is het voor de gebruiker mogelijk om de data juist te interpreteren en efficiënt te gebruiken 21. Er kan wel op een andere manier context gegeven worden. Bijvoorbeeld op de website van de archiefvormer kan er bij de dataset informatie vermeld worden over de archiefvormer. Dit is echter geen duurzame manier en het geeft geen formele beschrijving van de structuur die gemakkelijk in andere programma's kan geïmporteerd worden of gebruikt worden op een andere manier. Er blijft ook geen informatie over hoe de databank door de archiefvormer gebruikt werd. 2.3. Datawarehouses Er is verder een verschil tussen archiveren van databanken en datawarehouses. In een datawarehouse worden gegevens opgeslagen in een "archief" om ze te analyseren en patronen te herkennen in de data, maar het is geen archief om data te bewaren, zoals in deze tekst wordt bedoeld. Bij datawarehouses worden de data bijvoorbeeld genormaliseerd aan de structuur van de datawarehouse. Hierdoor verliest de data zijn oorspronkelijke orde en gaat de structuur van de originele databank verloren. Bovendien worden in een datawarehouse verschillende databanken bij elkaar gevoegd. Het is niet altijd mogelijk te achterhalen uit welke databank een bepaalde record komt. In een datawarehouse worden m.a.w. de belangrijke archiveringsprincipes geschonden. Een datawarehouse verandert niet alleen de structuur, maar ook de semantiek van een databank. Een ETL programma22 past de semantiek van de data aan de semantiek van een 20 In databank jargon wordt dit views genoemd. Het is een virtuele tabel die aangemaakt wordt op basis van de tabellen in een databank en de virtuele tabel maakt geen onderdeel uit van het schema. 21 Research information network, Stewardship of digital research data: a framework of principles and guidelines (Draft for consultation), april 2007, p 9. http://www.rin.ac.uk/data-principles 22 ETL staat voor Extract, Transform en Load. Het is een proces bij datawarehouses om data uit andere bronnen te extraheren, te transformeren in een nieuwe structuur om de data gemakkelijker te analyseren en opnieuw te laden in een datawarehouse. http://en.wikipedia.org/wiki/Extract,_transform,_load 12 datawarehouse aan, waardoor de oorspronkelijke semantiek verloren gaat. Hierdoor zal de context van de data verloren gaan. Dit maakt duidelijk dat archiveren meer is dan alleen het bewaren van de data in de databank. Een ander probleem met datawarehouses is eerder een algemeen probleem met software. De software veroudert erg snel en dit geeft problemen bij de toegankelijkheid. Bij datawarehouses wordt gebruik gemaakt van leverancierspecifieke software en hierdoor wordt het langdurig bewaren van gegevens een probleem. Er wordt op dit moment wel onderzocht hoe een datawarehouse kan ingeschakeld worden in een archiveringsstrategie. Het onderzoek zal nagaan wat de eisen zijn waaraan een datawarehouse moet voldoen om gebruikt te kunnen worden voor archivering 23. De doelstellingen van dit onderzoek zijn om onder andere de transformatieregels om te zetten in een procesgeoriënteerd en geïntegreerd schema. Dit systeem moet de betekenis bewaren van de processen en de impliciete kennis over de processen expliciet maken. Deze expliciete kennis zit vervat in procedures van een organisatie en in documentatie van de softwareontwikkeling. Er moeten dan concordantieregels24 worden uitgewerkt tussen de operationele databank en de datawarehouse uitgerust voor archivering. De structuur van de te archiveren databank moet gecontroleerd, gedocumenteerd en gereorganiseerd worden, zodat het duidelijk is wat de oorspronkelijke structuur was en hoe deze structuur is omgezet in de nieuwe structuur. Er moet een manier zijn om deze verandering in structuur te documenteren en om de gearchiveerde databank buiten de datawarehouse op te slaan, zodat alle informatie over een gearchiveerde databank bewaard kan worden voor een lange termijn. Gabriel David stelt voor dat dit opgeslagen wordt in een XML model, zodat het voor langetermijnbewaring in aanmerking kan komen. 3. Vraagstukken bij het archiveren van databanken 3.1. Wat moet gearchiveerd worden? Er zijn een aantal specifieke moeilijkheden bij het archiveren van databanken. Bij digitale documenten is het duidelijk wat een archiefstuk is, maar bij een databank is dit niet zo duidelijk. Er zijn verschillende mogelijkheden. Het complete databanksysteem kan als een archiefstuk bekeken worden, inclusief de data, DBMS en toepassing. Het is ook mogelijk om 23 Gabriel David, Data Warehouses in the Path from Databases to Archives. International Workshop on Database Preservation (PresDB'07), 2007. http://homepages.inf.ed.ac.uk/hmueller/presdb07/papers/PRESDB_GTD.pdf 24 In het Engels wordt dit mapping genoemd 13 enkel de data te bewaren, zoals hierboven besproken bij datasets25. Het is ook mogelijk om de data verspreid over verschillende tabellen of de gegevens uit de databank zoals die getoond worden op het scherm aan de gebruiker te beschouwen als archief. Het wordt nog onduidelijker als men probeert om een archivistische beschrijving te geven van een betekenisvolle entiteit zoals een dossier, document,... Dit is moeilijk omdat de gegevens voor het maken van een dergelijk betekenisvolle entiteit maar een onderdeel zijn van een databank of verspreid kunnen zijn over verschillende tabellen of over verschillende databanken. Het moet duidelijk zijn dat de vraag ”wat moet er bewaard worden” niet eenduidig kan beantwoord worden en dat dit afhankelijk kan zijn van de interpretatie van de archiefvormer en kan verschillen van databank tot databank. Zoals hierboven bij de beschrijving van een databank naar voor komt bestaat een databank uit verschillende onderdelen. Er moet afgevraagd worden welk onderdeel een belangrijk onderdeel van de databank vormt. Dit helpt bij het bepalen wat gearchiveerd moet worden. Zo kan men de vraag stellen of de applicatielaag belangrijk is om bewaard te blijven 3.2. Wanneer moet er gearchiveerd worden? Niet alle databanken moeten bewaard blijven. Zoals eerder aangehaald zijn databanken uniek en daarom is het niet eenvoudig om een databank op te nemen in een document- en archiefbeheersplan en algemene richtlijnen te geven welke databank moet bewaard blijven en hoe lang. Het is daarom belangrijk om van bij de creatie van de databank te bepalen of de databank in aanmerking komt voor langetermijnbewaring. De archiefvormer kan het best bepalen wanneer een databank in aanmerking komt voor langetermijnarchivering. Het is wel belangrijk om afspraken te maken met het Algemeen Rijksarchief, want de algemeen rijksarchivaris is degene die kan bepalen of iets voor lange termijn bewaard moet worden. De aangewezen manier om afspraken te maken met de rijksarchivaris is om een archiefbeheersplan op te stellen. Een archiefbeheersplan geeft een overzicht van alle documenttypes in een organisatie. Het Algemeen Rijksarchief heeft geen specifieke richtlijnen voor het archiveren van databanken en de archiefwet is ook niet duidelijk of databanken überhaupt wel gearchiveerd moeten worden (zie verder 3.4). Toch zijn er een aantal richtlijnen die gevolgd kunnen worden: Hoe hoger de databank in de hiërarchie van een organisatie geplaatst kan worden, hoe belangrijker de databank wordt om te bewaren. Bijvoorbeeld de Vlimpers databank is belangrijker om te bewaren dan een databank die door iemand gemaakt is om eenvoudig personeelsgegevens te beheren van de afdeling. Hoewel die databank 25 2.1 Archiveren van datasets 14 belangrijk kan zijn voor de werking van die persoon is het niet belangrijk om voor een lange tijd te bewaren. Omdat Vlimpers voor heel de Vlaamse overheid gebruikt wordt en dus hoog in de hiërarchie voorkomt, is het wel interessant om deze databank te bewaren. Bevat de databank extra informatie (die belangrijk is om te bewaren) over de organisatie of de activiteiten van de archiefvormer die niet in documenten of andere informatieobjecten bewaard wordt? Of is de informatie verspreid over verschillende documenten en zit in de databank alle informatie samen? Dan kan het interessant zijn om de databank te bewaren. Worden de gegevens in andere vorm bewaard? Bijvoorbeeld als op basis van de databank documenten gemaakt worden die ook bewaard blijven? Dan is het niet nodig om de databank te bewaren, als de andere documenten al bewaard worden. Laat de wetgeving toe om de informatie te bewaren in digitale vorm? Kan de integriteit en authenticiteit van de gegevens voldoende gegarandeerd worden? Bepalen wanneer een databank moet gearchiveerd worden is ook niet eenvoudig. Bij een operationele databank verandert de inhoud regelmatig. De structuur verandert in mindere mate. Dit schept problemen voor het bepalen van het tijdstip van archiveren. Er kan gesteld worden dat in elk geval bij wijzigingen aan de structuur de databank gearchiveerd moet worden en oude gegevens niet verwijderd of overschreven mogen worden. Als de bewaartermijn verstreken is dan mogen de data wel verwijderd worden. Om het beste moment te vinden om de inhoud van de databank te archiveren is heel wat moeilijker. Als een databank afgesloten is of als de wijzigingen af en toe plaats vinden of op regelmatige basis, maar in één keer een grote hoeveelheid, dan is het heel wat eenvoudiger om een tijdstip te bepalen. De archiefvormer is best geplaatst om het moment voor archivering te bepalen. Er zou bijvoorbeeld gezegd kunnen worden dat een databank één keer per jaar gearchiveerd kan worden. Voor de databanken die continu gewijzigd worden, zijn er een aantal mogelijkheden 26. De eenvoudigste en meest beheersbare oplossing is om een tijdsstempel te gebruiken bij elk record. Zo is het eenvoudig te weten wanneer de data laatst gewijzigd zijn en kan er éénvoudig een selectie uitgevoerd worden op de data. 26 Kevin Ashley (2004) The preservation of databases, VINE 34/2, p.66-70. 15 Het maken van complexe databanken gebeurt, zoals eerder aangehaald, door specialisten. Het archiveren is daardoor ook complex en moet gebeuren door specialisten. Desktop databanken zijn vaak eenvoudiger en het archiveren moet volgens een eenvoudig systeem gebeuren dat door de eindgebruiker snel geleerd kan worden en weinig expertise vereist. Type databank27 Beschrijving Wanneer archiveren Gesloten28 – statische29 databank Een databank die afgesloten is op een bepaald moment, bijvoorbeeld onderzoeksdatabanken Op het einde wanneer de databank afgesloten is Open30 – statische databank Een lijst van transacties bij een bankrekening. De transacties worden toegevoegd aan de databank. Een tupel wordt niet gewijzigd Op regelmatige tijdstippen kan de archiefvormer bepalen om een archiveringsactie uit te voeren, bijvoorbeeld jaarlijks Gesloten – dynamisch31 In bijzondere omstandigheden, bijvoorbeeld een databank van een bedrijf dat failliet is Op het einde wanneer de databank afgesloten is Open – dynamisch Een databank die continu geüpdatet wordt Een tijdstempel toevoegen aan elk tupel. Zo wordt het eenvoudiger om te archiveren. 3.3. Eisen bij het archiveren Een probleem van een andere orde is dat er weinig onderzoek verricht is naar de langetermijnbewaring van databanken, zeker in vergelijking met het bewaren van digitale documenten of afbeeldingen. Als er gesproken wordt over het archiveren van databanken, dan wordt er vaak enkel het archiveren van datasets bedoeld. Maar zoals eerder besproken is het niet mogelijk om voor elke databank enkel de dataset te bewaren, want anders kan er belangrijke informatie verloren gaan. Al deze problemen maken het moeilijk om een databank om te zetten naar een vorm die het 27 Kevin Ashley (2004) The preservation of databases, VINE 34/2, p.66-70. 28 Gesloten betekent dat er waarschijnlijk geen data meer zullen toegevoegd worden 29 Een statische databank is wanneer de tupel van een databank éénmaal gecreëerd niet meer gewijzigd worden 30 Open betekent een databank waar gegevens kunnen toegevoegd worden 31 De data in een dynamische databank kunnen overschreven worden 16 mogelijk maakt om te archiveren. Een oplossing voor het archiveren van databanken moet de volgende eisen in acht nemen: de authenticiteit en integriteit moeten zoveel mogelijk bewaard blijven door het bewaren van de originele structuur (inclusief primaire sleutels, vreemde sleutel, datatypes,...) De authenticiteit en integriteit kunnen gewaarborgd worden door de originele bitstream en metadata te bewaren32. de metadata moeten toegankelijk en begrijpbaar zijn op lange termijn de data moeten bruikbaar en verwerkbaar zijn door toekomstige systemen de databank moet onafhankelijk worden van de DBMS, de hardware en het besturingssysteem er moet gebruik gemaakt worden van standaarden die breed geaccepteerd en internationaal erkend zijn. Er wordt best gebruik gemaakt van open standaarden, omdat deze vrij van patenten zijn en dus een grotere zekerheid bieden om gebruikt te worden als archiveringsformaat het beheer en onderhoud van het archief moet onafhankelijk zijn van specifieke software. De voorkeur zou uit moeten gaan naar open bron software, omdat dit grotere zekerheid biedt, het veranderen van programma gemakkelijker is en het probleem van vendor lock-in33 vermeden wordt het archief moet toegankelijk gemaakt kunnen worden, het moet bijvoorbeeld mogelijk zijn om de gearchiveerde databank opnieuw te importeren in een andere databank de niet-technische metadata moeten verworven worden en opgeslagen worden in een standaard formaat. Ook deze metadata moet toegankelijk gemaakt worden, zodat de gearchiveerde databank gemakkelijk terug te vinden is 3.4. Wettelijke aspecten bij het archiveren van databanken Er zijn een aantal wettelijke aspecten waarmee rekening moet gehouden worden bij het archiveren van databanken. Een belangrijk decreet is het decreet op Openbaarheid van bestuur. Het decreet legt aan de overheid op om bestuursdocumenten waarover het beschikt ter beschikking te stellen aan de burgers. 32 Zie verder 4.1 Keuze van metadata voor de technische uitwerking 33 Met vendor lock-in wordt bedoeld dat men vasthangt aan een bepaald programma, omdat er geen gemakkelijke manier is om naar ander programma over te schakelen of omdat het veranderen van leverancier een grote kost met zich meebrengt. 17 Het is niet duidelijk of de term bestuursdocumenten ook betrekking heeft op databanken, want het is moeilijk bij een databank te spreken van een document. Ook de verduidelijking van de term schept problemen bij databanken. Men definieert bestuursdocumenten als “de drager, in welke vorm ook, van informatie waarover een instantie beschikt”. Het is niet duidelijk bij databanken wat onder de term “informatie” valt. Zijn dit enkel de gegevens in de databank of is dit ook bijvoorbeeld de applicatielaag, die van de gegevens in een databank informatie maakt? Uit de Memorie van toelichting34 is af te leiden dat ook databanken vallen onder de definitie van bestuursdocumenten 35. Om aan het decreet op openbaarheid van bestuur te voldoen moet een overheid de bestuursdocumenten bewaren. Toch zijn er een aantal beperkingen op het decreet van openbaarheid van bestuur. De eerste beperking is de archiefwet van 1955 voor publiekrechterlijk archief. De wet maakt het mogelijk om een selectie uit te voeren van de archiefobjecten die men moet bewaren. Er moet bij het vernietigen van archief wel toestemming gevraagd worden van de Algemeen Rijksarchivaris. De archiefwet is een verouderde en vage wet. Zo staat er niets vermeld over databanken. De wet bevat ook geen definitie van de term archief. Dit maakt het moeilijk om te bepalen of een databank valt onder de archiefwet. Een veel gebruikte definitie voor archief “de verzameling van stukken die, ongeacht datum, vorm of materiële drager, voortgebracht en ontvangen worden door iedere [...] archiefproducerende instelling in de uitoefening van haar activiteit”36. Onder deze brede definitie kunnen ook databanken vallen die gemaakt zijn in uitoefening van de taak of activiteit van de archiefvormer. Het decreet van openbaarheid van bestuur en de archiefwet zijn bondgenoten, omdat het archief volgens de archiefwet in een geordende en toegankelijke staat bewaard moet worden. Dit maakt het mogelijk om bestuursdocumenten 37 in het archief gemakkelijk terug te vinden en gemakkelijker op een vraag van de burger te antwoorden. Anders gezegd het decreet op openbaarheid van bestuur heeft een efficiënt archiefbeheer nodig. 34 Memorie van toelichting bij de term “Bestuursdocument” http://www3.vlaanderen.be/openbaarheid/meer.php?nav_id=11&eenheid_id_van=185. 35 Filip Boudrez en Hannelore Dekeyser, David, Digitaal archiveren in praktijk. Openbaarheid van bestuur, p 26. http://www.expertisecentrumdavid.be/davidhandboek/index.html 36 Dit is een veel gebruikte definitie in de archiefsector A.J.M Den Teuling, Archiefterminologie voor Nederland en Vlaanderen, Stichting Archiefpublicaties, ’s Gravenhage, 2003 37 Er is geen volledige overlapping tussen archiefstuk en bestuursdocument, maar ze overlappen wel voor een groot gedeelte. Een diepgaande analyse is te vinden in Digitaal archiefbeheer in de praktijk. Handboek, 27 –ev. 18 De privacywet legt ook beperkingen op aan het decreet van openbaarheid van bestuur en aan het archief. De overheid moet zich afvragen of de inzage in een bepaald bestuursdocument of archiefobject geoorloofd is als het document of object personeelsgegevens bevat. Niet enkel inzage is beschermd maar elk verwerking38 van een archiefobject is onderhevig aan de privacywet. Nog een wet die het decreet op de openbaarheid van bestuur beperkt is de auteurswet. In deze wet is er speciaal aandacht voor databanken. In de auteurswet wordt databank gedefinieerd als “een verzameling van werken, gegevens of andere zelfstandige elementen, systematisch of methodisch geordend, en afzonderlijk met elektronische middelen of anderszins toegankelijk39”. Een databank hoeft op basis van deze definitie niet digitaal te zijn. Bijvoorbeeld een telefoonboek in papieren vorm is ook een databank volgens deze wet 40. De auteurswet beschermt enkel databanken waarvan de originaliteit van de databank blijkt uit de selectie of de rangschikking van de inhoud. Omdat men geen selectie wil maken in een databank of men wil geen originele rangschikking, vallen heel wat databanken niet onder de auteurswet. Enkel de structuur kan door de auteurswet beschermd worden. Als het telefoonboek weer als voorbeeld genomen wordt, dan is het duidelijk dat een telefoonboek alle telefoonnummers wil ontsluiten en zeker geen selectie wil maken. Ook de manier van rangschikken van de gegevens is niet origineel, want de rangschikking is alfabetisch. De wetgever wilde dergelijke databanken beschermen, omdat ze een grote investering vragen van de producent van de databank. Daarom werd er een speciale Europese databankrichtlijn 41 gemaakt en werd deze richtlijn omgezet in een databankwet 42. De wet is van toepassing op databanken waarvan de verkrijging, controle of presentatie van de inhoud een substantiële investering vereist. De auteurswet en de databankwet zijn belangrijk voor het archiveren van databanken, omdat 38 De verwerking moet breed geïnterpreteerd worden, bijvoorbeeld verspreiding is ook een verwerking. De definitie van verwerking is te vinden in de privacywet art.1 §2. 39 Art 20bis van de auteurswet 40 In deze tekst geldt wordt een andere definitie gebruikt. Voor de definitie van een databank in deze tekst zie 1.2. Wat zijn databanken. 41 Richtlijn 96/9/EG van het Europees Parlement en de Raad van 11 maart 1996 betreffende de rechtsbescherming van databanken 42 Wet houdende omzetting in Belgisch recht van de Europese richtlijn van 11 maart 1996 betreffende de rechtsbescherming van databanken - 31 augustus 1998. Een uitgebreide bespreking van deze wet is te vinden in Hendrik Vanhees, De juridische bescherming van databanken, Rechtskundig weekblad 1999-2000, 30, 25 maart 2000, p 1001 – 1018. 19 er toestemming moet gevraagd worden aan de auteur voor o.a. archivering. De auteurswet beschermt een databank voor 70 jaar na de dood van de auteur 43 en de databankwet heeft een maximale bescherming van 31 jaar44. Er zijn wel een aantal uitzonderingen gemaakt voor personen die een legale kopie mogen hebben. In de databankwet wordt deze uitzonderingen de rechtmatige gebruiker45 genoemd. Deze gebruiker heeft tot een deel van de databank toegang en kan binnen de beperkingen van de databankwet 46 en de auteurswet47 kopieën van een deel van de databank gebruiken. In de algemene auteurswet is er een speciale uitzondering voor reproducties en mededelingen door archieven48. In de databankwet is er geen uitzondering voor archieven. Er is enkel een uitzondering voor het gebruik voor wetenschappelijk onderzoek en educatieve doeleinden. Voor deze uitzonderingen is het enkel toegestaan om een niet-substantieel deel van de databank te gebruiken. Dit schept problemen voor het archiveren van databanken. Al deze wettelijke aspecten moeten uitgeklaard worden voor een databank gearchiveerd kan worden. Sommige aspecten moeten bekeken worden voor de databank gecreëerd wordt, zoals de beperkingen die de auteurswet en databankwet opleggen. Indien nodig moet er in een licentieovereenkomst een uitzondering voorzien worden om het archiveren van databank mogelijk te maken. 4. Metadata Noch tijdens de dynamische fase noch tijdens de latere levensstadia staat een object op zichzelf. Een e-mail is meer dan enkel de tekst van het e-mailbericht. Het draagt een tijdsstempel, is afkomstig van een auteur, behandelt een bepaald onderwerp, beantwoordt een eerder bericht, heeft betrekking op een dossier, is gecreëerd met een bepaald programma enzovoort. Al deze elementen bieden informatie over de informatie in het document; het zijn metadata of gegevens over gegevens. Net zoals bij papieren stukken zijn ze voor de archiefvormer, de archiefbeheerder en de archiefgebruiker waardevolle elementen. Ze documenteren de archivistische en technische context van het document en maken het beheer 43 Voor uitzonderingen zie de auteurswet art 2. 44 Een databank wordt beschermd voor 15 jaar bij de fabricage van de databank en als de databank daarna aan het publiek wordt ter beschikking gesteld dan komt daar nog eens 15 jaar bij. 45 Art 2 4° 46 Art 8 - 12 47 Art 20quater van de auteurswet 48 Hannelore Dekeyser (2007) Auteursrecht, technische maatregelen en wettelijk depot p 32 – 33. http://www.expertisecentrumdavid.be/docs/Auteursrecht_Digitaal_Archiveren_v2.pdf. 20 van dat document in al zijn levensfases mogelijk. Ze zijn niet alleen essentieel voor een individueel document, maar ook voor een dossier, een serie en zelfs een archiefbestand. 4.1. De keuze van metadata Metadata dienen diverse doelstellingen en moeten daarom met grote zorg gekozen worden. Een vaak gebruikte categorisering van metadata is de indeling in inhoud, structuur en beheer. De inhoudelijke metadata leggen de auteur, de datum, de titel en dergelijke vast. Onder structuur dient men informatie over het formaat en de representatie of weergave van het object te verstaan. Ten derde beschrijven metadata over het beheer onder meer de bewerkingsgeschiedenis en de rechten. Een aantal specifiekere metadataschema’s zijn echter voorgesteld die meer aandacht schenken aan de bijzonderheid van archieven. Zoals hierboven aangehaald, is context een belangrijk begrip in de archiefwereld. Het zorgt dat de band tussen het digitaal object en het proces bewaard blijft en dat het object niet haar (juridische, administratieve of historische) waarde verliest. Uit het hoger beschreven voorbeeld van een e-mail blijkt dat de inhoud van het object vaak niet toereikend is om de context te achterhalen. Noch de band met andere object, noch de functie van het object is vanzelfsprekend. Toekenning van metadata aan archiefstukken dient dus rekening te houden met zeer diverse noden: niet alleen de inhoud moet gedocumenteerd worden, maar ook de verschijningsvorm van die inhoud, de context, de technische eigenschappen en het beheer van het object tijdens de dynamische, semi-statische en statische fase. Het OAIS-model definieert vier categorieën metadata die gericht zijn op archivistische bewaring en ontsluiting: 1) Inhoud 49, 2) Bewaring50, 3) Structuur51 en 4) Beschrijving52. De categorie ‘Inhoud’ omvat metadata over de visuele representatie of weergave en de technische eigenschappen van het object. Daaronder vallen dus ook gegevens over het bestandsformaat, de karakterset, de soft- en hardwareomgeving en het bestandssysteem. 49 Content Information 50 Preservation Description Information 51 Packaging Information 52 Descriptive Information 21 Figuur 1: Het OAIS-model De tweede categorie maakt de bewaring van die inhoud op lange termijn mogelijk. Bewaringsmetadata documenteren dus de inhoud van het bestand en houden haar begrijpelijk en betrouwbaar. Het OAIS-model legt vier onderscheiden functies vast voor bewaringsmetadata: Referentie, Context, Betrouwbaarheid en Geschiedenis53. ‘Referentie’ identificeert het bestand op unieke wijze en maakt haar terugvindbaar, zowel binnen het depot als naar buiten toe. Onder ‘Context’ wordt de relatie van het bestand met de taken van de moederorganisatie en met andere bestanden gedefinieerd, waardoor haar functie bewaard blijft. ’Betrouwbaarheid’ bewaakt de authenticiteit en integriteit van het object: het kan een controlecijfer bevatten of een digitale handtekening54. Metadata over de ‘Geschiedenis’ leveren informatie over het traject dat het object (en de ‘Inhoud’) doorlopen heeft: de oorsprong van het object, de migratiebewerkingen die het heeft ondergaan, de bevoegde beheerders, de bewaartermijnen55 en regelingen van openbaarheid56. 53 De Engelstalige benamingen luiden resp. Reference Information, Context Information, Fixity Information en Prove- nance Information 54 Een controlecijfer of checksum is het resultaat van een algoritme uitgevoerd op (meestal) de bits van een bestand om de integriteit ervan te controleren. Uiteraard moet in beide gevallen nagestreefd worden zo veel mogelijk gegevens te bewaren, dus ook het gebruikte algoritme, private sleutels enzovoort. 55 Het verwijderen van AIP’s (of archiefselectie en - vernietiging) is niet opgenomen in het OAIS-model. Gegevens over de bewaartermijn past niettemin in de categorie Geschiedenismetadata. 56 Een inleiding tot Bewaringsmetadata of Preservation Description Information biedt T. Leyssens, ‘Preservation Metadata: metadata voor digitale archieven op basis van het OAIS-informatiemodel’, Bibliotheek- & Archiefgids, 79 (2003/3) 15-18. 22 De derde categorie beschrijft de structuur van het AIP57 in het digitale depot, zoals de wijze waarop metadata geassocieerd worden met het object. Tenslotte maakt de categorie ‘Beschrijving’ ontsluiting van het archief mogelijk. Ze bevat algemeen-descriptieve gegevens over het AIP – geput uit de andere metadata – en wordt bevraagd door de gebruiker die op zoek is naar een bepaald object, dossier of archiefbestand58. Het vormt de bouwstenen van wat de archiefgebruiker kent als de inventaris. Voor elk van deze algemene categorieën van metadata moeten concrete elementen gekozen worden voor elk object, elk archiefbestanddeel. Een toenemend aantal concrete toepassingen van metadatastandaarden is beschikbaar maar onderlinge afstemming blijft beperkt 59. Toch kunnen en moeten ze de archiefvormer en archiefbewaarder inspireren bij het bepalen van de vereiste metadata. De National Archives of Australia ontwikkelden een lijst van metadata die verplicht is voor overheidsinstellingen van het Commonwealth of Australia 60. Ook in de Australische staat New South Wales, in Groot-Brittannië en in Canada werden gelijkaardige standaarden ontwikkeld61. Dichter bij huis stelde de Archiefschool in Amsterdam een lijst van metadata op voor het digitale beheer van papieren en digitaal overheidsarchief en baseerde zich daarbij op eerder ontwikkelde en gestandaardiseerde modellen62. Tussen deze standaarden voor publiekrechterlijk archiefbeheer zijn de onderlinge overeenkomsten beperkt, aangezien ze vaak vanuit een eigen theoretisch model vertrekken. Zelfs over de metadata die verplicht moeten worden, bestaat geen eensgezindheid. De gemeenschappelijke aggregatieniveau 57 verplichte (document, metadata dossier of zijn identificatie, serie), titel, openbaarheid, auteur, datum, bewaartermijn en AIP staat voor Archival Information Package. Dit is het pakket waarin een archiefobject wordt opgeslagen in het OAIS-model. Het pakket bevat niet alleen het archiefobject, maar ook metadata. 58 Consultative Committee for Space Data Systems, Reference Model for an Open Archival Information System (OAIS), 2002 , p. 4-34. Zie http://public.ccsds.org/publications/archive/650x0b1.pdf. 59 Een overzicht van de verschillende initiatieven en hun uiteenlopende doelstellingen geeft H. Hofman, ‘Metadata and the Management of Current Records in Digital Form (2000) http://www.ica.org/en/node/30038. 60 National Archives of Australia, Recordkeeping Metadata Standard for Commonwealth Agencies, 1999 http://www.naa.gov.au/records-management/publications/RKMS.aspx 61 Zie voor een (stilaan verouderd) overzicht en analyse van alle metadatastandaarden http://www.gseis.ucla.edu/us- interpares/madras/index.php 62 Met name ISO-15489, MoReq (Model Requirements for the Management of Electronic Records) en de archivistische beschrijvingsnormen ISAD(G) en ISAAR(CPF). P. Horsman e.a., Softwarespecificaties voor Records Management Applicaties voor de Nederlandse Overheid 2004, 95-96. http://www.remano.nl/docs/ReMANO2004.pdf. Recordkeeping Metadata Standard for Commonwealth Agencies, 1999. http://www.naa.gov.au/Images/rkms_pt1_2_tcm2-1036.pdf 23 beheersgeschiedenis. Essentiële gegevens als bijvoorbeeld organisatie of bestandsformaat zijn niet overal verplicht gesteld63. De optionele metadatavelden zijn nog veel diverser. Integrale overname van één metadatastandaard is dus niet doenbaar zonder aanvullingen en aanpassingen64. Enkele categorieën van metadata uit het OAIS-model werden apart uitgewerkt. De Amerikaanse Library of Congress werkte bijvoorbeeld vooral aan technische metadata voor tekst, afbeeldingen, video en audio, maar niet voor databanken. 65 De categorie van bewaringsmetadata slorpte echter de laatste jaren veruit de meeste aandacht op. Een eerste initiatief was bijvoorbeeld het NEDLIB-project66 dat voor de ontwikkeling van het OAIS-model al een voorstel deed voor bewaringsmetadata. Daarna volgde de National Library of New Zealand67 en PREMIS-werkgroep68. Opvallend is dat vooral de bibliotheekwereld zich hier profileerde, in tegenstelling tot archiefinstellingen. Deze initiatieven hebben soms geen boodschap aan het belang van context bij de bewaring van digitale archiefobjecten. Ze zijn niettemin waardevolle vertrekpunten bij de uitbouw van een digitaal depot. 5. Wat zijn de essentiële kenmerken en authenticiteitseisen van een databank? Alle bewaringsstrategieën voor digitale objecten dragen het risico op het verlies van gegevens of functionaliteiten met zich mee. Zo is de geëmuleerde omgeving69 om een oud rekenblad weer te geven bijna nooit identiek aan de oorspronkelijke omgeving. Of kan de gemigreerde 63 National Archives of Australia, Recordkeeping Metadata Standard for Commonwealth Agencies, 1999, p. 13 – 14. http://www.naa.gov.au/records-management/publications/RKMS.aspx en Governenement of Canada, Record Keeping Metadata Requirements for the Government of Canada, 2001. http://www.imforumgi.gc.ca/documents/2001/meta/metatb_e.asp 64 Een gebruikelijke praktijk bij digitale depots. Zie bijvoorbeeld het Electronic Records Archives Program (ERA) van de NARA op http://2006.xmlconference.org/programme/presentations/79.html. 65 http://www.lcweb.loc.gov/rr/mopic/avprot/extension2.html#textMD 66 C. Lupovici en J. Masanès, Metadata for the Long Term Preservation of Electronic Publications (NEDLIB Report Series 2) Amsterdam, 2000) http://nedlib.kb.nl/ 67 National Library of New Zealand, Metadata Standards Framework. Preservation Metadata (Revised), 2003. http://www.natlib.govt.nz/catalogues/library-documents/preservation-metadata-revised 68 PREMIS Working Group, Data Dictionary for Preservation Metadata, 2005, p. viii. http://www.oclc.org/research/projects/pmwg/premis-final.pdf. Zie ook P. Caplan, Preservation Metadata, DCC Digital Curation Manual, 2006, p. 10-11. http://www.dcc.ac.uk/resource/curation-manual/chapters/preservation-metadata/ en H. Hofman, Metadata and the Management of Current Records in Digital Form, 2000. http://www.ica.org/en/node/30038 69 Zie 6.4 Emulatie 24 kopie opgeslagen in een ander bestandsformaat dan de oorspronkelijke databank eveneens bepaalde eigenschappen verliezen. Maar niet alle eigenschappen zijn echter even belangrijk om de authenticiteit van de databank te vrijwaren. De authenticiteitseisen zijn belangrijk om te bepalen wat de beste bewaarstrategie 70 zal zijn. De eisen worden bepaald door het proces en het wettelijk statuut van de databank. De werkprocessen en het statuut zijn belangrijk om te begrijpen, omdat deze informatie nodig is om de inhoud van de database te begrijpen en het verband met gerelateerde objecten te begrijpen. Als de databank bewaard wordt zonder extra informatie over de waarde en de betekenis, dan wordt het later moeilijk om de inhoud van de databank te begrijpen. Als voldaan is aan de gestelde authenticiteitseisen kan worden aangetoond dat een databank nog authentiek is, ook al is ze gewijzigd door beheer -of bewaaracties. De databank hoeft dan niet exact gelijk te zijn aan de oorspronkelijke versie 71. In een poging om objectieve voorwaarden op te stellen waaraan een authentiek document moet voldoen, stelde de InterPARES-projectgroep vast dat er geen generaliserende uitspraken gedaan kunnen worden over de eigenschappen van digitale documenten 72. Deze stelling is ook van toepassing voor databanken. Het belang van de eigenschappen is afhankelijk van het werkproces waarbinnen de databank zijn functie vervult of vervulde. Elk archiefobject is ontstaan of ontvangen bij de uitoefening van een functie door de individuele of collectieve archiefvormer. De band tussen de databank en het proces waarbinnen het ontstaan is moet bewaard blijven – indien ze verloren gaat, is de databank niet meer begrijpbaar. Alles wat deze band documenteert is een essentiële eigenschap. Een authentieke kopie behoudt dus de essentiële eigenschappen van de databank, samen met eventuele wettelijk verplichte eigenschappen. De InterPARES-groep ontwikkelde een analyseschema met een lijst van alle essentiële eigenschappen voor digitale documenten 73. Er is (nog) geen lijst gemaakt met de essentiële eigenschappen voor databanken. Zoals hierboven vermeld, kunnen databanken complexe systemen zijn en is het niet onmiddellijk duidelijk wat bewaard moet blijven. Daarom is het belangrijk om te onderzoeken wat de essentiële kenmerken zijn van een databank en vast te 70 zie verder 6. Een digitale archiveringsstrategie 71 Jeff Rothenberg, Tora Bikson,, Carrying Authentic, Understandable and Usable Digital Records Through Time, 1999. http://www.digitaleduurzaamheid.nl/bibliotheek/docs/final-report_4.pdf 72 H. MacNeil, Trusting Records in a Postmodern World (Lezing op University of Virginia, mei 2002). Zie http://www3.iath.virginia.edu/sds/macneil_text.htm 73 US - InterPARES Project, Findings on the Preservation of Authentic Electronic Records, 2002, p. 63-69. http://www.gseis.ucla.edu/us-interpares/pdf/InterPARES1FinalReport.pdf 25 stellen wat de authenticiteitseisen zijn. Het is de taak van de archiefvormer en de archiefbeheerder om een onderscheid te maken tussen de essentiële en de incidentele eigenschappen van elk soort object. Zo is de kleur die bij de tekstopmaak van een emailbericht gebruikt werd minder wezenlijk dan de kleur van een foto. De afbeelding van de leeuw in brieven van de Vlaamse overheid is essentieel; de grafische overgangseffecten tussen dia’s in een presentatie zijn dat niet. Het gebruikte lettertype in een officieel document heeft meer waarde dan het lettertype van een persoonlijk memorandum van een leidend ambtenaar. Wat echter niet in rekening gebracht werd door InterPARES is het gedrag van een digitaal object. Dat gedrag wordt gevormd door interactieve elementen, zoals een dynamisch tekstveld in een brief of een formule in een rekenblad. Een andere belangrijke bron om de essentiële authenticiteitseisen te bepalen is de wetgeving74. 5.1. Inhoud Het belangrijkste onderdeel van een databank zijn de gegevens. De inhoud van de tabellen moet intact en leesbaar bewaard worden. De gebruikersapplicatie maakt gebruik van de gegevens van de databank om informatie op het scherm te laten zien. Deze gegevens worden uit de databank gehaald door een zoekvraag te formuleren. Daarom moeten de zoekvragen ook bewaard blijven. 5.2. Context Een belangrijke eis voor het goed bewaren van een databank is dat de context duidelijk is. Met context wordt de oorspronkelijke omgeving bedoeld waarin de databank gemaakt en gebruikt is. Het gaat over informatie in verband met de functie, het bedrijfsproces en de organisatie. De contextuele informatie is nodig om de inhoud van de databank te kunnen begrijpen en situeren. Het is ook belangrijk om de samenhang tussen de databank en andere objecten te vatten. De context is ook belangrijk voor de gebruikers van de gearchiveerde databank. Het is mogelijk om de waarde in te schatten van de data en de beperkingen beter te begrijpen. Op die manier kan de gebruiker de data op een goede manier interpreteren 75. 74 Zie eerder Wettelijke aspecten bij het archiveren van databanken 75 Research information network, Stewardship of digital research data: a framework of principles and guidelines (Draft for consultation), april 2007, p 9. http://www.rin.ac.uk/data-principles 26 Om de context te bewaren moet de databank beschrijvende metadata bevatten, zoals de naam van de organisatie, de taak, het werkproces en de relatie met andere bestanden. Om de waarde en de beperkingen van de data te kunnen inschatten is het belangrijk om de herkomst van de data te documenteren. Ook de manier van ingeven van de data en de methoden, technieken en instrumenten om de data te verwerven. Om de context van de wijzigingen te behouden is het belangrijk dat er een logboek wordt bijgehouden. Met het logboek kan aangetoond of nagekeken worden in hoeverre de databank nog authentiek is na eventuele beheer -of bewaaracties. Het logboek bevat voornamelijk technische metadata, zoals informatie over de originele en huidige databank en informatie die nodig is om de huidige databank te interpreteren, zoals naam en versie van de gebruikte DBMS en besturingssysteem en de naam en het type apparatuur. Ook informatie over de gebruikte bewaarstrategie, zoals de toepassing die werd gebruikt om de bewaaractie uit te voeren, datum en tijdstip dat de bewaaractie werd uitgevoerd. Het logboek moet ook informatie bevatten over de verantwoordelijke van de bewaaractie, wijzigingen die gebeurd zijn aan de databank tijdens de bewaaractie en het resultaat. Naast het logboek voor de databank is er ook een logboek voor de gebruikersapplicatie. Hier wordt bijgehouden wat de naam en versie is van de gebruikte zoektalen. Daarom moet het logboek gemaakt worden bij de creatie van de databank. Concreet kan het logboek ook in een databank aangemaakt worden. Want een databank kan beveiligd worden, zodat niet iedereen wijzigingen kan uitvoeren, de gegevens mogen niet zomaar overschreven worden,.... Het is belangrijk dat de databank waarin het logboek aangemaakt wordt, gemakkelijk te exporteren is in XML of een ander formaat dat toelaat om het logboek voor een lange tijd te bewaren. De databank zou best gebruik maken van een standaard taal en een open brontoepassing zijn. Op die manier wordt vermeden dat de gegevens van het logboek door vendor lock-in verloren gaan. Een voorbeeld van een databank die gebruikt zou kunnen worden is eXist76. Het is een open bron databank en maakt gebruik van XML als bestandsformaat. 5.3. Structuur Om de structuur te bewaren moeten de tabellen, relaties tussen tabellen, beperkingen 77, subschema en veldeigenschappen78 bewaard blijven. Naast de fysieke structuur van de databank moet ook de logische structuur bewaard blijven. De logische structuur kan 76 http://exist.sourceforge.net/ 77 De beperkingen zijn onder andere type, vreemde sleutels,... 78 Naam, gegevenstype, veldlengte 27 weergegeven worden in een afbeelding zoals een ERD-diagram79, of in tekstvorm, zoals een XML-schema. De structuur van de gebruikersapplicatie moet ook bewaard worden. Deze kan bewaard worden door de schermopbouw te documenteren. 5.4. Uiterlijk Het uiterlijk80 beschrijft hoe de inhoud op het scherm wordt weergegeven. Dit is belangrijk om te bewaren omdat het uiterlijk kan gebruikt worden om een bepaalde betekenis uit te drukken. Het is niet altijd nodig om het uiterlijk te bewaren, als het uiterlijk geen betekenis bevat. Deze betekenis is niet in de voorgaande kenmerken terug te vinden. Het uiterlijk slaat enkel op de gebruikersapplicatie. 5.5. Gedrag Gedrag is een relatief nieuw begrip voor de archiefwereld. Het is een dynamisch kenmerk dat enkel van toepassing is op digitale objecten. Het gedrag geldt bij databanken enkel voor de gebruikersapplicatie. Het gedrag en het uiterlijk zijn moeilijk te bewaren voor een lange termijn, omdat het ofwel ingebed zit in het database programma of bijvoorbeeld bij een webapplicatie in de programmacode en de compiler. Het gedrag en het uiterlijk is enkel te bewaren door emulatie, conversie81 of door een beschrijving te maken en deze te bewaren. De beschrijving moet gebruikersinterface. De informatie bevatten gebruikersapplicatie over wordt de functionaliteiten, bewaard omdat zoekvragen soms door en de gebruikersapplicatie data in de databank informatie wordt. Het geeft context aan de data en zo is de data te begrijpen. De beschrijving van de functionaliteiten vermeldt wanneer en onder welke voorwaarden een functie mag geactiveerd worden. De zoekvragen voor het invoeren, wijzigen, verwijderen en opvragen van gegevens uit de databank moeten ook beschreven worden en opgenomen in de documentatie, zoals eerder aangehaald moeten de zoekvragen in leveranciersspecifieke SQL omgezet worden naar een gestandaardiseerde versie van SQL. Andere leveranciersspecifieke code die niet in standaard SQL kan omgezet worden, zoals PL/SQL van Oracle, moet 79 Entity-Relationship diagram is een grafische representatie om een conceptueel model weer te geven. Er wordt in vastgelegd wat de onderdelen, relaties tussen de verschillende onderdelen en de beperkingen in het conceptueel model zijn. 80 Testbed Digitale Bewaring, Van digitale vluchtigheid naar digitaal houvast. Bewaren van databases, 2003, P. 14. 81 Emulatie en conversie worden verder besproken onder 6. Een digitale archiveringsstrategie 28 gedocumenteerd worden. In de documentatie moet ook vermeld worden wat de naam en versie van de databank is waarvoor de code bedoeld is. De gebruikersinterface kan ook gedocumenteerd worden aan de hand van de gebruikersdocumentatie of documentatie van de ontwikkelaars. De documentatie moet, indien nog niet volledig, aangevuld worden met een beschrijving van elk veld op elk scherm en de relatie met de velden in de tabel. Het uiterlijk kan verder gedocumenteerd worden met schermafbeeldingen. Het is gemakkelijker om het gedrag en het uiterlijk te bewaren voor een korte termijn, want dan kan door conversie de databank omgezet worden naar een nieuwe versie van de databank. 6. Een digitale archiveringsstrategie Net als hun papieren tegenhangers moeten digitale documenten raadpleegbaar blijven op korte, middellange en lange termijn om administratieve, juridische en (voor het statische archief) historische redenen. De snelle technologische evolutie in de informaticasector dwingt de archiefvormer om – meer dan bij het papieren archief – aandacht te hebben voor de technologie van de drager en de informatie die erop vastgelegd is. Digitale documenten zijn immers enkel machineleesbaar en zijn dus afhankelijk van informatietechnologie om raadpleegbaar te blijven. 6.1. De keuze van een strategie Om dit probleem het hoofd te bieden, bestaan er verschillende strategieën 82. Afhankelijk van de bewaartermijn, de technische aard van de documenten en de financiële mogelijkheden zal men vaak voor één oplossing of een combinatie van twee oplossingen kiezen. Een digitale archiveringsstrategie mag zich niet enkel richten op het behoud van de oorspronkelijke bitstream of het digitale object (zoals de reguliere back-up of het maken van een nieuwe kopie op een cd-rom om gegevensverlies tegen te gaan). Dit garandeert immers wel de (machinale) leesbaarheid, maar niet noodzakelijk de (visuele) raadpleegbaarheid van de gegevens op middellange of lange termijn. De software om de bestanden te raadplegen is immers niet het eeuwige leven beschoren. 82 Het afdrukken van digitale objecten als archiveringsstrategie wordt niet in beschouwing genomen in deze tekst: deze strategie leidt tot een toename van de materiële omvang van het papieren archief en mogelijk verlies van de context van het stuk en functionaliteiten. Voor de andere strategieën, zie http://www.library.cornell.edu/iris/tutorial/dpm/terminology/strategies.html. 29 Een oplossing die vooral voor complexe digitale objecten zoals een databank gebruikt wordt, is de computermuseumstrategie. Men bewaart niet alleen de data, maar ook de applicaties die de data genereerden en verwerkten, samen met de handleidingen en andere documentatie. Zo kunnen de oorspronkelijke bewerkingen en rapporteringen bewaard worden. Binnen de Vlaamse overheid wordt deze strategie momenteel toegepast voor de opslag van onder meer boekhoudkundige en wetenschappelijke gegevens. De snelle evolutie van hardware bemoeilijkt echter de raadpleging op lange termijn, waardoor deze strategie enkel geschikt is voor digitale objecten die maximaal acht tot tien jaar bewaard moeten worden. Vaak behoudt men dan ook niet alleen de software, maar ook de hardware, waarvoor bruikbare wisselstukken echter niet lang beschikbaar blijven. De meest voorkomende bewaarstrategieën om digitale informatie langdurig te kunnen bewaren zijn: migratie, conversie en emulatie. 6.2. Migratie Wanneer bestanden omgezet worden naar een indeling die raadpleegbaar is in een andere (software- of hardware) configuratie, spreekt men van migratie83. De strategie om een digitaal object raadpleegbaar te houden op verschillende computerplatformen is op dit moment de meest gebruikte digitale archiveringsstrategie. Migratie verplicht de archiefbeheerders echter om af te stappen van het idee dat het origineel bewaard moet worden; het streeft ernaar om een integere, authentieke kopie van het origineel te bewaren die compatibel is met een andere technologische generatie. Het concept van een ‘origineel’ in archivistisch opzicht is immers niet vol te houden in de digitale wereld aangezien de informatie en haar drager gescheiden zijn 84. Voor een migratie kan uitgevoerd worden moet er een onderzoek gevoerd worden om na te gaan welk doelformaat het beste geschikt is om naar te migreren en welke minimale eigenschappen het digitale object moet hebben om de omgezette vorm te (h)erkennen als een authentiek en integer object. Een ander belangrijk element om rekening mee te houden bij migratie is hoe lang een object bewaard moet blijven. Als iets maar 5 jaar bewaard moet blijven dan is het niet altijd de 83 Testbed Digitale Bewaring White Paper. Migratie: context en huidige stand van zaken, 2001, p. 9-10, te raadplegen op http://www.digitaleduurzaamheid.nl/bibliotheek/docs/white_paper_migratie.pdf. Zie ook E. Oltmans, ‘Cost Models in Digital Archiving: An Overview of Life Cycle Management at the National Library of the Netherlands’, Liber Quarterly, 14 (2004) 380-392, te raadplegen op http://webdoc.sub.gwdg.de/edoc/aw/liber/lq-3-04/oltmans.pdf. 84 F. Boudrez en H. Dekeyzer, Digitaal archiefbeheer in de praktijk. Handboek (Rapporten van het Stadsarchief Antwerpen 5) (Antwerpen, 2004) 54-55. 30 moeite waard om grote inspanning te leveren om een object te archiveren. Net als de andere archiveringsstrategieën kent migratie voor- en tegenstanders. Terwijl ze – samen met emulatie – op dit moment aanvaard wordt als een zeer valabele strategie, zijn het de voorstanders van emulatie die de zwaarste kritiek leveren 85. Hun voornaamste bezwaar is dat migratie het verlies van gegevens en functionaliteiten niet kan uitsluiten, zelfs al zijn ze meestal miniem. Het is bijgevolg een intensief proces dat voortdurende opvolging vereist, ook van reeds gearchiveerde databanken. Voor databanken is het argument dat er gegevensverlies optreedt een minder belangrijk argument, omdat het heel moeilijk is om met de verschillende leverancierspecifieke databanken geen gegevensverlies te hebben. Het verlies van functionaliteit zou wel een probleem kunnen zijn, bijvoorbeeld bij databanken waar de applicatielaag belangrijk is. 6.2.1. Standaardformaten Bij migratie voor lange termijn is het belangrijk om gebruik te maken van gestandaardiseerde bestandsformaten86, want dit geeft een grotere zekerheid om de gemigreerde databank na een lange termijn nog te kunnen openen. Met het migreren naar een gestandaardiseerd bestandsformaat wordt bedoeld het migreren van een gesloten bestandsformaat, eigen aan een bepaalde leverancier, naar een standaardformaat. Het voordeel van een standaardformaat is dat het niet afhankelijk is van bepaalde hardware of software en daardoor gemakkelijker voor langetermijnbewaring. Bij het gebruik van gesloten formaten is er ook het probleem van vendor lock-in of het afhankelijk zijn van één leverancier. Het is erg belangrijk dat dit vermeden wordt, anders wordt de archivaris afhankelijk van één leverancier om een bepaald bestand te openen en later voor het omzetten naar een nieuw formaat. In een snel evoluerende sector als de informaticasector is dat een groot probleem, daarom is het belangrijk om een standaard te gebruiken. Er zijn verschillende soorten standaarden, zoals standaarden door een gebruikersorganisatie beheerde standaard 87 of door een aantal bedrijven gesteunde standaard 88 of door een gemeenschap of door een 85 Rothenberg, Avoiding Technological Quicksand: Finding a Viable Technical Foundation for Digital Preservation, 1999, p 5-6 te raadplegen op http://www.clir.org/pubs/abstract/pub77.html 86 ISO 18492:2005, Long-term preservation of electronic document-based information, p 12. 87 Een voorbeeld is AIIM (Association for Information and Image Management). Het is een vereniging die zich focust op standardisatie op het gebied van Enterprise Content Management http://www.aiim.org/ 88 Een voorbeeld is ECMA International. Het is een standaardorganisatie van bedrijven actief in computer of communicatiesystemen http://www.ecma-international.org/ 31 officiële standaardorganisatie uitgebrachte organisatie. De verschillende soorten standaarden hebben een verschillend belang en gewicht. De standaarden met het meeste gewicht zijn de standaarden uitgebracht door een standaard organisatie zoals ISO. Het is ook belangrijk om een onderscheid te maken tussen de jure standaarden, de facto en open standaarden. De jure standaarden zijn door een standaardisatieorgaan erkende standaard, zoals ISO. De standaarden worden in een formeel en open proces erkend. Een de facto standaard is een standaard die veel gebruikt wordt. De facto standaarden komen tijdens een gesloten proces tot stand, vaak door de fabrikant zelf. Soms zijn er ook licentiekosten verbonden aan een dergelijke standaard. Dit maakt het moeilijk om een dergelijke "standaard" te gebruiken. Een open standaard is vrij van patenten en de specificatie is publiek beschikbaar. Een bekend voorbeeld van een open standaard is HTML. Sommige versies van deze open standaarden zijn ook goedgekeurde standaarden door ISO en zijn dus ook de jure standaarden. Bij HTML bijvoorbeeld is versie 4.01 strict een ISO standaard (ISO/IEC 15445:2000). Andere versies zijn geen ISO standaard. De keuze voor een open standaard of standaard moet niet rigoureus gebeuren. Een belangrijk criterium is dat de open standaard of standaard wijdverspreid moet zijn. Het is een erg subjectief criterium89, gebruikersgemeenschap maar of er naar kan gekeken hoeveel worden verschillende naar de grootte programma’s de van de standaard ondersteunen. Dit criterium is nodig omdat sommige standaarden niet gebruikt werden in praktijk. Het is dan niet te verantwoorden om in dergelijke open standaarden te investeren. Er moet ook opgemerkt worden dat standaardformaten moeten worden omgezet naar nieuwe versies van de standaard of een andere standaard. Dus ook bij een standaard eindigt de migratie niet. Het moet regelmatig opgevolgd worden. De standaardformaten die vaak naar voor worden geschoven zijn ASCII, XML en SQL. Deze formaten wordt naast het oorspronkelijk formaat opgenomen in de wetgeving 90 van de Nederlandse overheid. 6.2.1.1. Platte tekstbestand Het meest gebruikte formaat om platte tekst op te slaan is met de ASCII tekenset. ASCII is een standaard die al een hele tijd bestaat en zijn degelijkheid bewezen heeft. De ondersteuning is groot en ASCII is wijdverspreid. ASCII wordt gebruikt om letters, cijfers en andere symbolen in een tekst voor te stellen door een getal. Dat getal wordt ter identificatie 89 Zie verder bij de vergelijking tussen UCS en Unicode 90 Artikel 6e, Regeling geordende en toegankelijke staat archiefbescheiden 32 gebruikt van dat teken in computers en andere systemen die met ASCII tekst kunnen werken. Het belangrijkste doel van ASCII is om tekst uit te wisselen, zoals ook uit de naam ASCII of American Standard Code for Information Interchange blijkt91. De ASCII standaard is gemaakt door ANSI, de Amerikaanse standaardenorganisatie. ASCII is ook een ISO standaard. ISO 64692 wijkt licht af van de ANSI versie van ASCII. Maar ondertussen is ASCII verouderd. Het kan maar een beperkt aantal karakters weergeven, daarom kan ASCII beter worden vervangen door Unicode. Unicode heeft 100 000 gereserveerde karakters in tegenstelling tot ASCII dat 256 karakters ondersteunt. Unicode is geen door ISO gecertificeerde standaard, maar is wel vrij en gratis beschikbaar. Unicode wordt door het Unicode Consortium93 uitgewerkt. Dit is een consortium dat bestaat uit een hele reeks bedrijven. Het is een zogenaamde industriestandaard. Het is nog niet zo wijdverspreid als ASCII, maar de ondersteuning groeit snel. ISO/IEC 10646 of ook wel Universal Character Set genoemd is vergelijkbaar met Unicode en is wel een ISO standaard. Maar er wordt in dit geval beter gekozen voor Unicode in plaats van de ISO-standaard, omdat Unicode wijder verspreid is. Bij het archiveren van databanken wordt een platte tekstbestand vooral gebruikt om data op te slaan. De verschillende velden uit een tabel worden van elkaar gescheiden door een karakter, vaak wordt een komma of een tab gebruikt. Het is ook mogelijk om andere onderdelen in een platte tekst bestand op te nemen, zoals de relaties, datatypes en andere informatie. Maar deze gegevens worden dan beschreven in een niet-formele taal. Deze descriptieve metadata worden toegevoegd aan een apart bestand. Op basis van deze bestanden kan de databank dan gereconstrueerd worden 94. Het is heel arbeidsintensief om een dergelijk archief te beheren en toegankelijk te maken, omdat de databank in een voor computers ontoegankelijk, niet-formeel, formaat zijn opgeslagen, daarom moet er door de archivaris veel manueel werk uitgevoerd worden om de databank toegankelijk te maken. Voor het beschrijven van relaties, datatypes,... is een tekstbestand zonder een formele taal niet voldoende. Er moet een taal gebruikt worden die ook door computers gebruikt worden. De gebruikte taal moet ook een standaard en vrij beschikbaar zijn. Er zijn twee "talen" die 91 http://en.wikipedia.org/wiki/ASCII 92 http://en.wikipedia.org/wiki/ISO/IEC_646 93 http://www.unicode.org/consortium/consort.html 94 Deze methode wordt vaak gebruikt bij datasets 33 hiervoor veel gebruikt worden. Het gaat om SQL en XML. 6.2.1.2. SQL SQL is zoals ASCII een standaard. Het is een standaard goedgekeurd door ANSI 95 en ISO. SQL is ook gekend als ISO 9075. Het is een taal die zijn degelijkheid bewezen heeft en volwassen is. De eerste versie van de standaard werd ontwikkeld in 1986 (SQL-89). Er zijn ondertussen al verschillende revisies geweest, SQL-92, SQL-99 en SQL 2003. De meeste databanken ondersteunen een versie van de standaard. SQL-92 wordt het meest ondersteund. De nieuwere versies worden niet door alle databanken ondersteund. Er is momenteel ook geen databank die alles van de laatste versie van de standaard ondersteunt. Welke standaard gekozen wordt bij archivering, is afhankelijk van elementen die nodig zijn om de leveranciersspecifieke SQL om te zetten in de standaard SQL. SQL is een taal die vooral gekend is om zoekvragen in te stellen, maar het wordt ook gebruikt om de structuur van de databank te definiëren. Dit laatste is de Data Definition Language. De Data Definition Language wordt gebruikt om de tabellen van een databank en de databank zelf te beschrijven. Er worden onder andere de relaties, beperkingen, data types,... gedefinieerd. Met deze taal kan de structuur van de databank volledig beschreven worden. Het grote probleem, vanuit een archiefstandpunt, van de SQL-standaard is dat de standaard veel ruimte laat voor interpretatie en uitbreiding door de ontwikkelaar van het DBMS. Er zijn zogenaamd 137 implementatie-afhankelijke elementen en deze elementen mogen door de leverancier van de databank zelf gedefinieerd worden en geïmplementeerd worden 96. De enige vereisten is dat de eigen implementatie gedocumenteerd wordt. De Amerikaanse overheid heeft regels vastgelegd waaraan databank leveranciers moeten voldoen voor ze door overheidsinstanties gebruikt kunnen worden 97. Deze regels worden de Federal Information Processing Standard (FIPS) genoemd98. Er zijn op de website enkele test suites te downloaden om de conformiteit aan de FIPS SQL standaard te testen 99. Deze FIPS regels leggen wel beperkingen aan de ANSI/ISO SQL standaard op. Dankzij de FIPS regels zijn 95 De Amerikaanse standaarden organisatie, die ook ASCII gemaakt heeft 96 S. Heuscher, S Jaermann, P. Keller-Marxer en F. Moehle (2004) Providing Authentic Long-term Archival Access to Complex Relational Data, p 3 http://arxiv.org/abs/cs/0408054. 97 S. Heuscher, S Jaermann, P. Keller-Marxer en F. Moehle (2004) Providing Authentic Long-term Archival Access to Complex Relational Data, p 3 http://arxiv.org/abs/cs/0408054. 98 http://www.itl.nist.gov/fipspubs/fip127-2.htm en http://www.itl.nist.gov/fipspubs/fip193.htm. Deze regels zijn ondertussen niet meer geldig. 99 http://www.itl.nist.gov/div897/ctg/sql_form.htm. 34 de meeste databank systemen wel compatibel met SQL-92 en wordt er gebruik gemaakt van SQL-Flaggers100 om aan te geven welke elementen niet conform de standaard zijn. De leveranciersspecifieke uitbreidingen van de databank komen veelvuldig voor. Het zijn bijvoorbeeld wijzigingen aangebracht aan data types, functies, operatoren,.... of er werden nieuwe ontwikkeld. De eigen interpretatie mogelijkheden en het gebruik van eigen uitbreidingen door databank leveranciers zorgt voor problemen bij het archiveren van databanken en daarom moeten de gebruikte zoekvragen omgezet worden naar een gestandaardiseerde versie van SQL. Alles wat niet omgezet kan worden moet beschreven en gedocumenteerd worden. Bij het ontwikkelen van een databank, die moet gearchiveerd worden, moet er getracht worden om zoveel mogelijk de SQL standaard te volgen. Mimer Information Technology biedt een online SQL Validator 101 aan om de conformiteit met de verschillende ANSI/ISO SQL standaarden te testen. Naast SQL gebruiken sommige databanken een eigen procedurele programmeertaal om routines op te slaan. Het wordt gebruikt om blokken programmeercode in een databank toe te voegen. Een voorbeeld van een procedurele programmeertaal is PL/SQL van Oracle of PL/pgSQL van PostgreSQL. De standaard procedurele programmeertaal is SQL/PSM. PSM staat voor Persistent Stored Module. Dit onderdeel van de SQL-99 standaard kent geen wijde verspreiding. De meeste databanken ondersteunen enkel de eigen procedurele taal. Vanuit een archiefstandpunt bekeken is het belangrijk om deze procedurele talen om te zetten naar de standaard SQL/PSM. Om een databank te archiveren is het niet voldoende om de databank om te zetten in ISO/ANSI SQL en SQL/PSM. Er zijn nog bijkomende acties nodig om de databank toegankelijk te maken voor een lange tijd, zoals het toevoegen van descriptieve metadata. 6.2.1.3. XML Een ander belangrijke standaard die gebruikt kan worden om een databank te beschrijven is XML. XML is een bestandsformaat geschikt voor langetermijnbewaring. Het is een open standaard ontwikkeld door het W3C 102 en is wijdverspreid. Het wordt gebruikt als basis voor 100 SQL-Flaggers zijn een onderdeel van de SQL standaard en moet er voor zorgen dat de ontwikkelde SQL-taal voor een specifieke databank overdraagbaar is naar verschillende implementaties 101 http://developer.mimer.se/validator/ 102 Het W3C of World Wide Web Consortium is een organisatie die web standaarden vastlegt. Het is geen standaardenorganisatie zoals ISO. De standaarden van het W3C zijn geen de jure standaarden. Het is wel mogelijk dat een web standaard omgezet wordt in een de jure standaard. Het best gekende web standaard is HTML http://www.w3.org/ 35 heel veel standaarden. Hierdoor geniet XML een brede ondersteuning door veel programma's die XML bestanden kunnen openen of verwerken. De specificatie is vrij en gratis beschikbaar. XML is platformonafhankelijk en is leesbaar door mensen en machines. Het is onmiddellijk leesbaar en soms ook begrijpbaar in een eenvoudige tekstverwerker103. Oorspronkelijk werd XML ontwikkeld om documenten te structureren. Het is een opmaaktaal die het mogelijk maakt om de inhoud, structuur en presentatie van elkaar te scheiden. Dit bevordert de leesbaarheid van het bestand. Nu wordt XML niet enkel meer gebruikt om documenten op te maken, maar ook om data te structureren. Hierdoor is het mogelijk om meer informatie over de data op te slaan in een XML bestand dan in een ASCII bestand. De structuur geeft aan in welk kolom en welk veld een bepaalde waarde zich bevindt. XML is ook gemakkelijk uit te breiden door een DTD of een XML Schema te gebruiken. DTD en XML Schema worden gebruikt om XML elementen te definiëren. DTD staat voor Document Type Definition. Ook deze taal is ontwikkeld door het W3C. Het is de oudste manier om XML elementen te definiëren en het is minder krachtig dan een XML Schema. Er kan met een XML Schema ook meer informatie worden opgeslagen over de databank in een XML bestand. Het is bijvoorbeeld mogelijk om de data types te definiëren. Dankzij DTD bestanden en XML Schema's kunnen XML bestanden gevalideerd worden om te kijken of het XML bestand overeenkomt met de definitie. Als karaktercodering ondersteunt XML o.a. ook Unicode en ASCII, zoals hierboven aangehaald bij ‘Platte tekstbestanden’ wordt er best gebruik gemaakt van Unicode als karaktercodering. XML kan gebruikt worden bij het archiveren van databanken om de context, inhoud en structuur op te slaan. Door een DTD of een XML Schema te gebruiken kan de structuur van een databank expliciet gemaakt worden. Het XML bestand bevat het overzicht van de databank en als metadata moet het bestand minstens de naam van de databank en DBMS programma, versie van de databank en DBMS, naam van het DTD of XML schema, de naam van de tabellen, opmerkingen over de tabellen, de gebruikte SQL om subschema's te creëren, kolomnamen, gegevenstype, mag de waarde 'NULL' gebruikt worden, maximum lengte van een gegevenstype, beperkingen, type beperking, kolomnaam waarop de beperking geldt en de referentie naar de vreemde sleutels. Het XML Schema voor het opslaan van deze informatie moet eerst gedefinieerd worden en er moet vastgelegd worden welke informatie men wil opslaan. 103 Dit geldt enkel als het XML bestand goed ontwikkeld wordt, anders is het XML bestand ook moeilijk te begrijpen zonder verdere uitleg. 36 De data kan in een tekstbestand worden opgeslagen zoals hierboven beschreven, maar het is ook mogelijk om het tekstbestand met data te vervangen door een XML bestand. Op die manier is zowel het schema van de databank als de data in XML. Bij grote databanken kan dit wel voor problemen zorgen om een dergelijk groot XML bestand te openen. Het XML bestand zou dan kunnen gesplitst worden in verschillende bestanden. Een andere manier om de bestandsgrootte te beperken is om de binaire data te exporteren uit de databank en in aparte bestanden op te slaan. In het XML bestand moet een verwijzing opgeslagen worden naar het geëxporteerde bestand en er moet aangegeven worden welk bestandsformaat geëxporteerd werd. Dit vereist een grotere zorg bij het beheer van het archief. De bestanden die uit de databank geëxporteerd worden moeten op een aangepaste manier bewaard worden, afhankelijk van het bestandsformaat dat de bestanden zijn. Het zou bijvoorbeeld over afbeeldingen kunnen gaan of kantoordocumenten. De context kan opgeslagen worden door de metadata op te slaan in een XML bestand. Een ander interessante XML technologie die XML interessant maakt als archiveringstechnologie is XSLT104. Het is ook gemaakt door het W3C en zorgt voor het omzetten van XML in een ander XML formaat of in een ander niet-XML formaat, zoals SQL. De gebruikersapplicatie is moeilijk te bewaren door het migreren naar XML. Als de gebruikersapplicatie functionerend bewaard moet blijven, dan is emulatie de enige mogelijkheid. Gezien emulatie nu geen bruikbare mogelijkheid is (zie hierboven), moet zoals eerder vermeldt de gebruikersapplicatie zo goed mogelijk beschreven worden. Er kan gebruikt gemaakt worden van schermafbeeldingen en handleidingen die gemaakt zijn om gebruikers vertrouwd te maken met de toepassing. Samenvattend kan gesteld worden dat XML kan gebruikt worden bij de migratiestrategie als een onafhankelijk formaat om de databank op te slaan of als tussenschakel tussen huidige databanken en toekomstige databanken. Het gebruik van XML als archiveringsformaat kent veel bijval en wordt in heel wat onderzoeken naar voor geschoven als de beste oplossing. 6.2.1.4. Platte tekst + XML + SQL Het is mogelijk om de vorige standaarden te combineren en gebruik te maken van de verschillende voordelen van elke standaard. Er zijn een aantal combinatie mogelijkheden. Zo kan er gebruik gemaakt worden van platte tekst en XML. De platte tekst bevat dan de data en XML de metadata en de beschrijving van de databank. 104 Extensible Stylesheet Language Transformations http://www.w3.org/TR/xslt. 37 Er is ook een combinatie mogelijk tussen SQL en XML. SQL bevat de beschrijving van de databank met de verschillende tabellen en de data die toegevoegd moet worden aan de databank. Het XML bestand bevat de data en de metadata over de databank 105. Een andere mogelijkheid is om de drie standaarden te combineren. Zo wordt platte tekst gebruikt om de grote hoeveelheid gegevens op een zo compact mogelijke manier te bewaren. Er wordt ook hier best Unicode gebruikt om ook vreemde karakters zo goed mogelijk te bewaren. XML bevat de metadata over de databank, zodat de betekenis van de databank niet verloren gaat. Deze wordt dan op een meer gestructureerde manier opgeslagen dan de data. De structuur van de databank wordt opgeslagen in SQL 106. Als de databank opnieuw toegankelijk gemaakt moet worden, dan is het gemakkelijkste om SQL te gebruiken om de databank opnieuw op te bouwen. Het moet wel opgemerkt worden dat het hier gaat over standaard SQL. 6.2.1.5. RDF en OWL Hoewel XML een veel gebruikt formaat is in de archiefwereld, heeft het ook enkele nadelen. Een nadeel bij het bewaren van databank is dat het de semantiek van een databank niet expliciet bewaard. Met RDF (en bij uitbreiding ook OWL) is het wel mogelijk om meer van semantiek expliciet weer te geven, zoals de relaties tussen de tabellen en velden. Het wordt ook mogelijk om relaties tussen databanken weer te geven. RDF is een web standaard ontwikkeld door het W3C 107. RDF staat voor Resource Description Framework. Het is een raamwerk om een eenvoudig, uitbreidbaar en makkelijk te vermengen datamodel te maken. Dit maakt het mogelijk om voor een bepaald domein een algemeen datamodel uit te werken. RDF en XML sluiten elkaar niet uit, ze zijn complementair. RDF wordt gebruikt om een model te beschrijven en XML om de data binnen een model te beschrijven. Het datamodel is heel flexibel en kan het gebruikt worden om verschillende soorten datamodellen voor te stellen. In XML gebeurt, zoals eerder besproken, de definiëring door een DTD of door een XML Schema. Een DTD definieert vooral de syntaxis. Een XML Schema definieert ook de syntaxis, maar kan meer beperkingen opleggen, zoals het vastleggen van datatypes of andere 105 Het moet duidelijk zijn dat met metadata hier de metadata wordt bedoeld zoals beschreven in 4. Metadata en niet de data dictionary 106 Er wordt voornamelijk de DDL (Data Definition Language) van SQL bedoeld. De data wordt immers opgeslagen in het platte tekstbestand 107 http://www.w3.org/RDF/ 38 beperkingen. RDF gebruikt RDFS om het datamodel te definiëren. RDFS staat voor RDF Schema. Het is een raamwerk dat de eigenschappen, de klassen en relaties van RDF objecten kan beschrijven. RDF is bedoeld om enkel een algemeen datamodel te ontwikkelen. Er is een andere taal die gebruikt kan worden om een meer specifieke model te ontwerpen. Deze taal wordt OWL of Web Ontology Language genoemd108. OWL is ook een taal ontwikkeld door het W3C. Het is geen vervanging van RDF, maar een bijkomende taal, die bovenop RDF wordt toegepast. In verband met databanken kan gesteld worden dat XML kan gebruikt worden voor de concretisering109 van de inhoud van een databank. XML geeft enkel de syntaxis weer en geeft geen betekenis aan de elementen 110. Er is geen mogelijkheid om te bepalen wat de betekenis is van die relatie of wat bijvoorbeeld de eigenschappen zijn van de relaties. Hiervoor is een vocabularium nodig dat een datamodel kan definiëren en dat de verschillende relaties en de eigenschappen van deze relatie expliciet maakt. Expliciete relaties zijn belangrijk om het model geschikt te maken om door een machine te verwerken. Vanuit archivistisch oogpunt kan duidelijker gedefinieerd worden wat de relatie is en wat de eigenschappen zijn van deze relatie. Als er impliciete relaties worden gebruikt zoals bij XML dan is men afhankelijk van de software of van een beschrijving om duidelijk te maken wat de relatie is tussen de verschillende elementen. RDF en OWL maken het mogelijk om de relaties, beperkingen,... expliciet te maken. OWL kan bijvoorbeeld een relatie meer gedetailleerde definiëren, zoals disjunctie of de kardinaliteit. Een belangrijk voordeel van RDF is dat het zelfbeschrijvend is. Zo is er minder uitleg nodig dat enkel door mensen bruikbaar is. Een nadeel is dat RDF en OWL nog niet gebruikt zijn voor het archiveren van databanken. Het moet ook onderzocht worden of het gebruikt kan worden om een databank te archiveren. Platte tekst 108 109 SQL XML Platte tekst + SQL + XML RDF/OWL http://www.w3.org/2004/OWL/ In het Engels wordt dit serialization genoemd 110 Het is zoals eerder gezegd een metataal voor het definiëren van opmaak en structuur van de data. 39 Platte tekst + Structuur blijft bewaard veel beschrijvingen nodig in een niet-formele taal SQL Betekenis van de databank en verschillende velden blijven bewaard + De betekenis wordt vooral bewaard in een beschrijvend gedeelte met een weinig formele taal Beschikbare hulpmiddelen ++++ Heel veel hulpmiddelen beschikbaar +++ Probleem is ook dat de meeste databanken geen standaard SQL gebruiken. ++ De betekenis moet bewaard blijven in een beschrijvend gedeelte in een weinig formele taal. Sommige onderdelen zoals de beschrijving van de datatypes is wel in een formele taal. ++++ Heel veel hulpmiddelen beschikbaar Maturiteit ++++ Wordt overal ondersteund ++++ Wordt heel veel gebruikt XML ++++ Platte tekst + RDF/OWL SQL + XML ++++ ++++ +++ +++ Betekenis wordt vooral in de structuur bewaard. Extra betekenis zoals datatypes kan in een formele taal beschreven worden (XML Schema) ++++ Betekenis kan precies worden opgeslagen (zeker met OWL). Om datatypes te definiëren kan ook gebruik gemaakt worden van XML Schema’s +++ Ook veel hulpmiddelen beschikbaar, maar minder +++ ++ Weinig middelen ter beschikking. Ze zijn vaak nog in volle ontwikkeling +++ Wordt steeds belangrijker +++ + Nog heel jong. Het gebruik begint toe te nemen 40 Platte tekst Gemakkelijk beheer + Door het gebrek aan structuur zijn ze moeilijk te bewerken. De nietformele beschrijving zijn ook moeilijk up-todate te houden SQL XML Platte tekst + SQL + XML +++ +++ ++ De bestanden Het is erg Door de hebben meer gestructureerd en verschillende structuur en dat bestanden en zijn daarom vereenvoudigd verschillende ook het beheer, maar formaten éénvoudiger te grote bestanden beheren. Om zijn moeilijk om het beheer te te bewerken, vereenvoudige omdat ze veel n kunnen ze in geheugen een databank vereisen. Het geladen verhoogt ook de worden. De opslagvereisten niet-formele stukken zijn moeilijk te beheren. RDF/OWL ++ Het kan snel complex worden en er zijn weinig hulpmiddelen ter beschikking. Er is weinig expertise buiten de academische kringen. Tabel 1: Overzicht van de standaardformaten Essentiële kenmerken en authenticiteitseisen Inhoud De inhoud kan goed bewaard worden. Het is belangrijk dat er wel een validatiestap is om na te kijken of de migratie geslaagd is. Context De context moet bewaard worden door beschrijvende en technische metadata toe te voegen. Structuur De structuur kan bewaard blijven, maar zal meer beschreven moeten worden. Bij andere strategieën kon de structuur bewaard worden in een databank, bij migratie zal de structuur meer beschreven moeten worden in een standaard taal. Het is mogelijk om de beschrijving in een databank te laden en op die manier te bevragen. Uiterlijk Het uiterlijk is niet te bewaren door gebruik te maken van migratie. Het uiterlijk moet beschreven worden. Gedrag Het gedrag is niet gemakkelijk om te bewaren, daarom wordt het best beschreven. 41 6.2.2. Interoperabiliteit Interoperabiliteit111 is, naast het omzetten in een standaardformaat, een mogelijk migratiestrategie. In deze strategie wordt een oud bestandsformaat omgezet in een nieuw programma met een ander bestandsformaat, bijvoorbeeld wanneer een oude dBase III bestand wordt geïmporteerd in MS Access. Een andere vorm van interoperabiliteit is het gebruik maken van een tijdelijk uitwisselingsformaat, bijvoorbeeld het omzetten van een MS Access bestand in een tekstbestand en importeren in een andere database programma zoals bijvoorbeeld MySQL. Bij desktop databanken kan het programma zelf gebruikt worden of kan er gebruik gemaakt worden van hulpprogramma's om de databank om te zetten naar een ander formaat. Het zijn relatief eenvoudige migraties. In MS Access kan er bijvoorbeeld naar ASCII, RTF of Excel omgezet worden. Het is mogelijk dat er informatie verloren gaat bij het omzetten in een ander formaat of het opnieuw importeren in een andere databank, bijvoorbeeld bij het omzetten naar Excel gaat informatie over de relaties verloren. Er moet gecontroleerd worden of de omzetting geslaagd is zonder dat de essentiële informatie verloren is gegaan. Deze controle is relatief eenvoudig. Het omzetten van complexe databanken is moeilijker en is een werk voor specialisten. Het proces kan uit meerdere fasen bestaan. Er kan gebruik gemaakt worden van de speciale hulpprogramma’s. Het blijft een moeilijke taak, omdat ook de zoekopdrachten en de gebruikersapplicatie moeten getest worden. Door deze moeilijkheden is interoperabiliteit geen goede strategie voor complexe databanken. Het kan wel gebruikt worden als tijdelijke oplossing voor het omzetten van verouderde desktop databanken naar een nieuwe of een andere databank. Het is belangrijk dat gekeken wordt in hoeverre de authenticiteit en de integriteit van de database behouden blijft. Het is belangrijk dat de termijn tussen het bronformaat en het doelformaat zo klein mogelijk is om zoveel mogelijk informatie te behouden. Essentiële kenmerken en authenticiteitseisen Inhoud De inhoud wordt vaak goed overgenomen. Het is belangrijk om te testen of de omzetting goed gebeurd is. Context De context moet beschreven worden door technische en 111 Testbed Digitale Bewaring (2003) Van digitale vluchtigheid naar digitaal houvast. Bewaren van databanken, p 32. http://www.digitaleduurzaamheid.nl/bibliotheek/Bewaren_van_databases.pdf 42 beschrijvende metadata toe te voegen. Structuur De structuur van de tabellen worden normaal goed omgezet. Afhankelijk van de gebruikte techniek worden andere onderdelen van de databank minder goed omgezet. Het gaat dan bijvoorbeeld over de relaties, beperkingen of datatypes. Als er gebruik gemaakt wordt van een tijdelijk uitwisselformaat, zoals Excel of ASCII dan gaat de informatie over de relaties verloren en zal die moeten toegevoegd worden. Sommige databanken gebruiken speciale datatypes die andere databanken niet ondersteunen112. Deze informatie kan verloren gaan. Om de logische structuur te bewaren is het aan te raden om een ERD-diagram te bewaren van de databank. Dan kan de structuur van de oude en de nieuwe databank snel gecontroleerd worden. Uiterlijk Het uiterlijk is moeilijk te bewaren. Het is nodig om het uiterlijk te documenteren met schermafbeeldingen Gedrag Het gedrag is, net zoals uiterlijk, moeilijk te bewaren. Daarom moet ook het gedrag gedocumenteerd worden. 6.3. Conversie Een andere strategie is conversie, waarbij objecten opgeslagen worden in een hogere, nieuwe versie van hetzelfde bestandsformaat. Hoe groter het tijdsverschil is tussen de oorspronkelijk gebruikte bestandsversie en de versie waarnaar geconverteerd zal worden, hoe groter de kans is op verlies van gegevens en functionaliteiten. Indien het bestandsformaat gesloten is, bestaat bovendien het risico dat de informatie op termijn niet meer toegankelijk is. Het voordeel van conversie is echter dat het een relatief eenvoudige bewerking is die met behulp van de nieuwe versie van de moedertoepassing uitgevoerd kan worden. Enkel voor databanken die slechts gedurende enkele jaren raadpleegbaar moeten blijven, is dit een geschikte optie. Essentiële kenmerken en authenticiteitseisen Inhoud De inhoud wordt goed bewaard. Al kunnen er bij de omzetting wel kleinere fouten optreden. Het is belangrijk bij de conversie te kijken of het omzetten gelukt is door de twee versies te vergelijken. Context De context moet ook bij conversie bewaard worden. Dit kan door beschrijvende en technische metadata toe te voegen. 112 Voor een voorbeeld zie 10. Stappenplannen 43 Structuur De structuur van de databank blijft goed bewaard, omdat de leverancier van de databank meestal hulpprogramma’s maakt om de conversie uit te voeren of de conversie mogelijkheid wordt ingebouwd in het DBMS. De logische structuur kan vaak weergegeven worden door hulpprogramma’s of ingebouwde programma’s, want heel wat DBMS hebben een eigen programma of andere hulpprogramma’s. Uiterlijk Bij databanken is conversie moeilijker uit te voeren dan bij andere archiefobjecten, omdat zowel de databank als de applicatielaag geconverteerd moeten worden. Bij een databank zoals een MS Access is dit relatief eenvoudig, omdat een nieuwe versie vaak de oude versie kan openen en converteren. Het wordt moeilijker als het om complexere databanken gaat, omdat heel wat componenten ook geconverteerd moeten worden. De broncode van de gebruikersapplicatie, de programmacode om met het DBMS te communiceren en de SQL moeten omgezet worden naar de nieuwe versie. Uiteraard moeten niet altijd alle componenten omgezet worden. De verschillende componenten zijn vaak gemaakt met leveranciersspecifieke programma’s en daarom is het conversieproces afhankelijk van deze programma's. Gedrag Het gedrag blijft bewaard. Het is mogelijk dat er fouten ontstaan door wijzigingen tussen verschillende versies, daarom is het belangrijk om te testen of de opzetting naar de nieuwe versie geslaagd is. 6.4. Emulatie Emuleren is op bepaalde computers een andere computer nabootsen door middel van software. Emulatie wordt bij digitaal archiveren gebruikt om op een nagebootste computer verouderde software uit de tijd dat het bestand gemaakt werd te gebruiken. Op deze manier kan men op een betrouwbare manier oude bestanden openen. Het gaat dan vooral over oude, niet-gestandaardiseerde bestanden waarvoor geen programma meer beschikbaar is om het bestand te openen. Als een dergelijk bestand geopend zou moeten worden, dan zou er een nieuw programma geschreven moeten worden. Dit vereist een grote hoeveelheid onderzoek en reconstructie als het bestand geen open formaat en niet goed gedocumenteerd is. Emuleren is vooral een oplossing voor bestanden waarvoor geen migratie of conversie strategie bestaat. Er zijn verschillende soorten emulatie. Er kan een emulator gemaakt worden die de hardware, het besturingssysteem, specifieke software of een combinatie van de vorige technieken nabootsen. 44 Bij de emulatie door specifieke software wordt er een programma geschreven dat het oude programma emuleert. Het is nodig om voor elk programma een nieuwe emulator te schrijven. De programma’s zijn leverancierspecifiek en dit vereist een grote inspanning om een dergelijk programma te maken en te onderhouden. Het voordeel van hardware emulatie ten opzicht van het bouwen van een programma dat de weergave van een oud bestand mogelijk maakt, is dat een hardware emulator maar één keer gemaakt moet worden en dat er dan een hele reeks programma's kunnen gebruik van maken in tegenstelling tot de vorige soort emulator. Hardware emulatie laat toe om complexe software en speciaal ontworpen software gemakkelijk te bewaren. In dit opzicht is dit een interessante bewaarstrategie. Het nadeel van hardware emulatie is de technische complexiteit in het ontwerpen, testen en gebruiken van de emulator, omdat het specificeren van alle hardware-interacties moeilijk is. De hardware-interacties zijn eigendom van de makers van de computerhardware en niet toegankelijk voor de ontwerpers van de emulator. Ook al zijn de hardwarefuncties gekend dan is het nog een moeilijke opdracht, omdat de softwarematige implementatie van deze functies complex en lastig is. Bij de emulatie van het besturingssysteem zijn ook aanzienlijke inspanningen nodig, want het besturingssysteem moet gereconstrueerd worden. Het emuleren van een besturingssysteem is niet voldoende om een bepaald programma te laten werken, want een besturingssysteem verleent enkel faciliteiten die door een programma tijdens het uitvoeren gebruikt worden. De applicatie moet zelf altijd uitgevoerd worden op hardware net als het besturingssysteem en dus blijft emulatie van de hardware een vereiste. Een bijkomend nadeel bij emulatie van complexe databanken ten opzichte van documenten is dat er verschillende onderdelen moeten bewaard worden. Zo moeten de oorspronkelijke databank, het oorspronkelijk besturingssysteem, DBMS, de databanktoepassing, ook de volledige gebruikershandleiding en verschillende configuratiebestanden voor het besturingssysteem en de gegevens in de DBMS bewaard worden. Het is ook nodig dat de software in het publieke domein is of dat de licentie verworven is voor de geëmuleerde componenten. Een algemeen nadeel van emuleren is dat de oude programma’s en de daar bijhorende oude technologieën gekend moeten zijn bij de gebruikers. Het is ook niet eenvoudig om met één vraag verschillende programma’s te bevragen. Telkens moet in het specifieke programma een zoekvraag gestart worden. 45 Het grootste nadeel van de emulatiestrategie voor het bewaren van databanken is dat er geen emulator is voor de bewaring voor databanken. Er is nog verder onderzoek nodig om na te gaan of het überhaupt mogelijk is om de verschillende onderdelen van een databank te emuleren. Hierdoor is dit momenteel geen optie. Essentiële kenmerken en authenticiteiteisen Inhoud Bij emulatie blijft de oorspronkelijk inhoud bewaard, omdat het oorspronkelijk bestand bewaard blijft. Context De context moet toegevoegd worden door beschrijvende en technische metadata toe te voegen. Structuur De structuur wordt bewaard omdat de oorspronkelijke databank bewaard blijft. Sommige databanken hebben eigen of ingebouwde hulpmiddelen om de logische structuur weer te geven. Uiterlijk Gedrag Het uiterlijk blijft bewaard omdat de oorspronkelijke applicatielaag bewaard blijft. Het kan wel moeilijk zijn om het uiterlijk te bewaren als er extra programma’s bewaard moeten worden. Bijvoorbeeld bij databanken met een webinterface moet er naast de databanksoftware een webserver, een programmeertaal,... bewaard blijven. Het gedrag blijft bewaard omdat de oorspronkelijke databank bewaard blijft. 6.5. Geen bewaarstrategie gebruiken Niets doen is ook een mogelijkheid. Bij databanken is dit een meer relevante mogelijkheid dan bij andere archiefobjecten, want er zijn een aantal valabele argumenten. Er kan bijvoorbeeld gesteld worden dat het te veel inspanning (en geld) vergt om een databank te archiveren. De data die gearchiveerd kan worden, wordt weggeschreven in een speciale archieftabel. De archieftabel blijft in de databank bewaard en wordt ook geconverteerd of gemigreerd naar een nieuwe databank. Een andere optie is om enkel de output van de databank te archiveren en de data in de databank zo lang mogelijk te bewaren. Want de databank is vaak ook maar een bron voor een andere vorm, bijvoorbeeld een databank met personeelsgegevens wordt gebruikt om een personeelsdossier op te maken in papieren of elektronische vorm. Of bij wetenschappelijk onderzoek worden heel wat gegevens bewaard, maar het is mogelijk om enkel de output van die gegevens te bewaren, namelijk het wetenschappelijk rapport. Op dit moment gebeurt het op deze manier bij papieren archieven. Het moet duidelijk zijn dat de output wel op een goede 46 manier moet gearchiveerd worden en dat hiervoor wel een bewaarstrategie moet uitgewerkt worden. Het nadeel van enkel de output te bewaren van een databank is dat het moeilijk wordt om de gegevens te bevragen, zoals een databank wel mogelijk maakt. Een ander voorbeeld waar het bewaren van de databanken of datasets een voordeel is en niet enkel de output, is wanneer bijvoorbeeld een databank of dataset gebruikt wordt voor wetenschappelijk onderzoek. Door de dataset of databank te bewaren en niet enkel het eindrapport is het mogelijk voor andere wetenschappers om de experimenten opnieuw uit te voeren en kan het eindrapport gemakkelijker op zijn waarde getest worden. Soms is het moeilijk om bepaalde experimenten opnieuw uit te voeren en dan is het ook belangrijk om de dataset of databank te bewaren. Een andere mogelijkheid is om op basis van statistiek een deel van de databank te bewaren en enkel dat deel te bewaren. Zo hoeft niet alles bewaard te worden en kan er veel ruimte gespaard worden. Het is een techniek die ook wordt toegepast bij grote papieren archieven113. Er zijn databanken die meer informatie kunnen bevatten dan de output die gegenereerd wordt. Het gaat dan bijvoorbeeld over databanken die belangrijke informatie bevatten over de organisatie. Bij de Vlaamse overheid is de Vlimpers databank daar een voorbeeld van. Het is de databank waar alle gegevens over personeel worden bijgehouden. Het is een erg belangrijke databank en ze bevat ook veel informatie over de organisatie zelf die niet in een personeelsdossier zit, zoals de organisatiestructuur. Er zit in de Vlimpers databank heel wat meer informatie dan in personeelsdossiers die anders uit verschillende bronnen zou moeten samengevoegd worden. Het gebruik van steekproeven is op deze databank af te raden. De selectie op basis van steekproeven is interessanter voor papieren archief dan bij digitaal archief. Digitaal archief maakt het mogelijk om automatisch bewerkingen uit te voeren op de data. Hierdoor is het ook interessant om bijvoorbeeld evoluties over een lange termijn te onderzoeken of het kan ook gebruikt worden om rekenschap af te leggen. Bij de het berekenen van de kostprijs moet ook rekening gehouden worden met de wettelijke aspecten, zoals aan gehaald in 3.4. Er zijn wettelijke verplichtingen waaraan voldaan moet 113 E. Aerts, Archiefselectie vanuit de statistiek: de steekproef in de archivistiek (Miscellea archivistica. Manuale, 28), Brussel 1998 en E. Aerts, The application of Elementary Sampling in the Appraising of Records, in: archive vor der Globalisierung? Beiträge zum Symposion des Nodrhein-Westfälischen Hauptstaatsarchivs in Verbindung mit den Allgemeinen Reichsarchiven in Brüssel (Belgien) und Den Haag (Niederlande) vom 11 bis 13 Semptember 2000 in Düsseldorf (red. M. Blach-veldtrup, O. Dascher & A. Koppetsch), Münster, 2001, p 157-205. http://www.archive.nrw.de/dok/symposion01/Inhalt.html 47 worden. Als er in een rechtzaak bepaalde stukken niet voorgelegd kunnen worden, dan kan dit o.a. financiële gevolgen hebben. Het is belangrijk dit in het achterhoofd te houden bij het beslissen over de beste bewaarstrategie en bij het selecteren van de essentiële kenmerken en authenticiteitseisen. Essentiële kenmerken en authenticiteitseisen Inhoud Wanneer de databank niet wordt bewaard, maar wel de output van de databank, dan wordt de inhoud wel bewaard, maar niet meer op een dergelijke gestructureerde manier als in een databank. Het is dan bijvoorbeeld niet meer mogelijk om een bevraging te doen over de gegevens, zoals dat wel mogelijk is in een databank. Context De context moet toegevoegd worden door beschrijvende metadata en technische metadata toe te voegen. De technische metadata geldt dan voor de oplossing die gekozen werd in plaats van de databank. Structuur De structuur van de databank wordt niet bewaard, omdat het in een andere vorm wordt bewaard. Uiterlijk Het uiterlijk wordt ook niet bewaard, omdat de databank niet bewaard wordt. Gedrag Het gedrag gaat ook verloren, omdat er een andere vorm wordt gebruikt 6.6. Conclusie bewaarstrategieën Aangezien het moeilijk is om databanken te archiveren, is het aan te raden om het originele bestand en de nodige software te bewaren. Bij complexe databanken zit de databank niet vervat in één bestand, maar bestaat het uit verschillende bestanden. Alle bestanden die deel uitmaken van de databank, zoals de data, gebruikersapplicatie,... moeten bewaard blijven. Het biedt de meest authentieke representatie van de databank, zolang het nog mogelijk is om de databank uit te voeren. Het biedt ook grotere mogelijkheden bij toekomstige bewaarstrategieën en emulatie blijft een optie. Emulatie van databanken is een interessante strategie, vooral in vergelijking met andere digitale objecten. Het is interessant omdat zowel de databank, DBMS als de gebruikersapplicatie kan behouden worden. Het is enkel interessant als een strategie voor langetermijnbewaring, want er is een grote inspanning en kennis vereist om emulatie software te maken en te onderhouden. Er zijn op dit moment ook geen bruikbare emulatieprogramma’s en er is onderzoek nodig naar de haalbaarheid van emulatie van databanken. Hierdoor is emulatie op dit moment geen optie. 48 Net zoals bij interoperabiliteit, kan conversie alleen gebruikt worden om databanken voor een korte termijn te bewaren. Er moet ook over gewaakt worden dat de conversie naar een nieuwe versie regelmatig gebeurt. Migratie is op dit moment de beste optie voor het archiveren op lange termijn. Het is belangrijk om over te schakelen op een standaardformaat voor langetermijnbewaring. Het is beter voor een de jure standaard of een open standaard te kiezen. Andere factoren spelen ook een rol zoals de geschiktheid en de populariteit van de standaard. XML is een interessant formaat voor langetermijnbewaring. Het wordt op dit moment naar voor geschoven als de beste oplossing voor het archiveren, omdat XML een wijdverspreide open standaard is en veel gebruikt wordt bij archivering. Om meer van de semantiek van de databank te bewaren, zouden RDF en OWL een mogelijke oplossing kunnen zijn. Deze optie zou ook nog verder onderzocht moeten worden om na te gaan of het een optie is om XML te vervangen of aan te vullen. “Niets doen” en enkel opslaan van de output van de databank wordt hier niet verder in beschouwing genomen, omdat het vooral een management beslissing is. Het is belangrijk dat de archivaris op een degelijke manier de output van de databank kan bewaren. Het opslaan van de te archiveren databank in een archieftabel komt overeen met technisch archiveren, zoals eerder besproken. Voordelen Emulatie + Zeer getrouwe representatie + Alle oorspronkelijke functionaliteiten werken Conversie + Zeer getrouwe representatie + Relatief eenvoudige ingreep + Beperkte kans op gegevensverlies op korte termijn + Relatief eenvoudige ingreep + Beperkte kans op gegevensverlies op korte termijn + Minder afhankelijk van een bepaald platform en producent Interoperabiliteit Nadelen - Arbeidsintensieve ontwikkeling - Meerdere configuratie moeten geëmuleerd worden - Licenties van de verschillende programma’s nodig - Geen emulator voor databank software - Volledige afhankelijkheid van platform en producent - Problematische conversie van oudere versies, met kans op gegevensverlies - Niet alle functionaliteiten kunnen bewaard blijven - Geen volledige onafhankelijkheid van platform en producent 49 Voordelen Migratie Nadelen + Volledige neutraliteit en onafhankelijkheid + Getrouwe representatie - Kans op beperkt gegevensverlies bij oorspronkelijke migratiebewerking - Geen eenvoudige bewerking - Niet alles kan behouden worden, bijvoorbeeld de applicatielaag en hierdoor moet er veel beschreven worden Tabel 2: Voor- en nadelen van verschillende bewaarstrategieën Kortetermijnbewaring Langetermijnbewaring Permanente bewaring - X X - - - - X X X - - Emulatie114 Interoperabiliteit Migratie Conversie Tabel 3: Overzicht bewaarstrategieën De onderstaande tabel bespreekt de mogelijke bewaarstrategie voor elke databanksysteem, zoals besproken in 2.2.1. De voorgestelde korte termijn bewaarstrategie (tot 5 jaar): Hiërarchisch Netwerk Object- Relationeel XML georiënteerd Emulatie - - - - - Conversie X X X X X Interoperabiliteit - - - - - Migratie - - - - - Tabel 4: Overzicht van de voorgestelde korte termijn bewaarstrategie per type databanksysteem De voorgestelde lange termijn bewaarstrategie (6 jaar -...): 114 Emulatie is pas een optie als er een emulator wordt gebouwd en als deze ook efficiënt blijkt 50 Hiërarchisch Netwerk Object- Relationeel georiënteerd XML databank Emulatie X X X X X Conversie - - - - - Migratie XML XML XML XML XML Interoperabiliteit - - - - - Tabel 5: Overzicht van de voorgestelde lange termijn bewaarstrategie per type databanksysteem 7. Stand van zaken van projecten en hulpmiddelen 7.1. Emulatie Een veel geciteerde emulator in archiefcontext is de UVC of "Universal Virtual Computer" van IBM, het Nationaal archief en de Koninklijke bibliotheek van Nederland 115. Het is een universele emulator, omdat er geen programma moet geëmuleerd worden. De data wordt op een speciale manier bewaard. Er wordt een speciale gelabelde versie bewaard in een speciale UVC programmeertaal. Deze gelabelde versie van de data wordt gebruikt om met een UVC programma het oude bestandsformaat terug weer te geven. Op deze manier is er geen volledige emulatie nodig. Er is enkel een programma dat de gelabelde data kan decoderen. Dit is ook een nadeel van de UVC. Voor elk formaat moet er een decodeermodule geschreven worden en bij elke generatie van nieuwe hardware moet er ook een nieuwe virtuele computer ontwikkeld worden. UVC is geen oplossing voor databanken, want er is geen decodeerprogramma ontwikkeld dat kan getest worden. Het moet ook nog onderzocht worden of de UVC in staat is alle aspecten van een databank op een betrouwbare manier te decoderen. Er wordt op dit moment onderzoek gedaan naar emulatie software door de Koninklijke 115 R. Lorie, The UVC: a Method for Preserving Digital Documents – Proof of Concept, 2002. Een technisch overzicht van de UVC biedt J.R. van der Hoeven, R. J. van Diessen en K. van der Meer, 'Development of a Universal Virtual Computer (UVC) for long-term preservation of digital objects', Journal of Information Science, 31/3, 2005, p. 196-208, te raadplegen op http://dx.doi.org/10.1177/0165551505052347. Zie ook de projectsite: http://www.kb.nl/hrd/dd/dd_projecten/projecten_emulatieproject.html. 51 Bibliotheek, het Nationaal Archief van Nederland en recent ook PLANETS 116. Een eerste product dat recent werd uitgebracht is Dioscuri117. Het is een emulator die momenteel een 8086 computer nabootst. Het is de bedoeling om een meer recentere computer te emuleren. De bedoeling is om een moderne computer met Windows 2000 te emuleren. Deze machine wordt de Reference Workstation genoemd (RWS). In de scope van het project is ook opgenomen om databanken te emuleren, maar zijn nog niet getest. Men heeft al succesvol een aantal programma’s kunnen uitvoeren, bijvoorbeeld Wordperfect 5.1 (een tekstverwerker), Arachne (browser) en een aantal spelen. Het verschil tussen Dioscuri en de huidige commerciële emulatoren zoals VMWare emulatiesoftware118 en Virtual PC van Microsoft119 is dat Diocsuri een tussenlaag heeft. De tussenlaag wordt de Universal Virtual Machine (UVM) genoemd en is de tussenlaag tussen de huidige hardware en de emulator. De tussenlaag is gemaakt, omdat er minder wijzigingen moeten doorgevoerd worden aan de emulator als de onderliggende hardware veranderd. De huidige UVM die gebruikt wordt is Java. Nog een verschil is dat de emulator modulair is opgebouwd. Zo is het gemakkelijker om een bepaald onderdeel dat geëmuleerd wordt te vervangen door een nieuw onderdeel. De verschillende modules die moeten gebruikt worden staan beschreven in de Emulator Specification Document (ESD). De verschillende componenten worden met elkaar verbonden door een controller. De controller haalt de modules uit de module bibliotheek. Dioscuri is een interessant programma dat in de toekomst mogelijk een oplossing is voor het emuleren van databanken. Er moet nagegaan worden of het programma in staat is om op een performante manier databanken te emuleren. 7.2. Conversie Conversie is, zoals hierboven aangehaald, enkel voor korte termijn. Het is een relatief eenvoudige operatie. Het wordt moeilijker bij complexe databanken en ook als de applicatielaag moet geconverteerd worden. Het is best om niet te veel versie over te slaan, anders wordt de conversie moeilijker. 116 PLANETS staat voor ‘Preservation and Long-term Access through Networked Services’. Het is een project door de Europese Unie onder het zesde raamwerk programma om een aantal kernproblemen van digitale bewaring aan te pakken. De nadruk ligt op het uitwerken van praktische oplossingen en hulpmiddelen voor langetermijnbewaring van culturele en wetenschappelijke informatie http://www.planets-project.eu/ 117 http://dioscuri.sourceforge.net 118 http://www.vmware.com/ 119 http://www.microsoft.com/windows/products/winfamily/virtualpc/default.mspx 52 Als we bijvoorbeeld naar MS Access kijken dan worden er door elke nieuwe versies een aantal oudere versies van Access ondersteund. Bij het openen van een oude versie van een MS Access bestand wordt gevraagd of het bestand geconverteerd moet worden. Binnen de Vlaamse overheid wordt MS Access 2003 veel gebruikt. Deze versie kan MS Access 97 en MS Access 2000 bestanden openen. Als er bij de conversie fouten optreden, dan wordt er een tabel ‘Conversiefouten’ gemaakt. In deze tabel worden de fouten beschreven 120. Om het conversieproces vlot te laten verlopen is het belangrijk om een verantwoordelijke aan te duiden die de conversies uitvoert op regelmatige tijdstippen en die een testprocedure uitwerkt om te kijken of de conversie geslaagd is. Hiervoor is het belangrijk om de gebruikte databanken binnen de organisatie op te lijsten en een conversieplan uit te werken. Bij de oplijsting kunnen er een aantal gegevens worden bijgehouden over de databanken, zoals een beschrijving van de databank, wat de software is die gebruikt wordt om de databank te raadplegen, of en welke applicatielaag gebruikt wordt, bewaartermijn,.... 7.3. Interoperabiliteit ‘Interoperabiliteit’ is een migratie naar een ander formaat dat geen standaardformaat is. Als voorbeeld wordt ook hier MS Access genomen, omdat het een veel gebruikte databank is. Het is mogelijk om een MS Access databank om te zetten naar een andere databank, bijvoorbeeld MySQL. Hiervoor kan de Migration Tool van MySQL gebruikt worden. Het programma is een onderdeel van de MySQL GUI Tools 121 en het kan gebruikt worden om een MS Access bestand te converteren naar een MySQL databank. De MySQL Migration Toolkit ondersteunt niet alleen MS Access, maar kan een heleboel andere databanken migreren. Het resultaat is een MySQL databank en geen databank in een standaardformaat, maar omdat het een openbronprogramma is en het tabelformaat ook openbron is, kan het een alternatieve opslag zijn voor kortetermijnbewaring. Het is geen ideale oplossing, maar het is in elk geval duurzamer dan het Access-formaat te blijven gebruiken 122. De applicatielaag van de Accessdatabank wordt niet overgenomen. Hiervoor moet een andere oplossing gezocht worden. 120 http://office.microsoft.com/nl-be/access/HP051863711043.aspx 121 http://www.mysql.com/products/tools/migration-toolkit/. 122 Microsoft heeft een XML gebaseerd formaat gemaakt voor alle MS Office bestanden. De nieuwe OOXML bestandsformaten zijn door het ECMA associatie goedgekeurd als een standaard en momenteel is OOXML ingediend bij de ISO standaardorganisatie en Microsoft hoopt dat OOXML een ISO standaard wordt. Het nieuwe OOXML formaat is ook geen oplossing, omdat het Access formaat uit deze familie een binair formaat is en niet zoals de andere bestandsformaten op XML gebaseerd is. 53 7.4. XML als bewaarformaat XML is een veel gebruikt formaat om databanken te bewaren. Hieronder worden een aantal instellingen en initiatieven opgesomd die XML gebruiken als bewaarformaat. Ze concentreren zich enkel op de data en migreerden de applicatielaag niet. 7.4.1. Digitale Duurzaamheid Digitale Duurzaamheid, een project van het nationaal archief van Nederland, heeft een aantal tests uitgevoerd123. Ze hebben gebruik gemaakt van WinAllora en XML Junction124 om een MS Access 2002 databank te migreren naar XML. Er werd 1 XML bestand gemaakt per tabel en er werd 1 overzichtsbestand van de databank in XML gemaakt. In het overzichtsbestand werden ook beperkingen en eventuele databank subschema's opgesomd. Het migreren van de databank naar verschillende bestanden is moeilijk met de gebruikte programma’s. Zo bleek het moeilijk te zijn om de programma’s te configureren om de gewenste output te krijgen en om volledige controle te krijgen over de uiteindelijke vorm. Er kon niet beslist worden wat er behouden werd en wat verwijderd kon worden. Daarom werd er gekozen om een eigen programma te maken. Bij Digitale Duurzaamheid heeft men ook een aantal problemen tegengekomen met hun strategie. De verbinding tussen het eigen ontwikkeld programma en de databank heeft beperkte mogelijkheden. Er werd gebruik gemaakt van JDBC en ODBC. Een ander probleem dat men tegenkwam was een probleem met het omzetten van leveranciersspecifieke SQL naar de standaard SQL125 en tussen java.sql en Oracle databank. Er was ook een probleem met het geheugen. Bij grote databanken was er ook te weinig geheugen omdat volledige tabellen in het geheugen werden geladen. Ook afbeeldingen in de databank gaven problemen, want er werd niet voldoende informatie gegeven over het formaat van de afbeeldingen. Het exporteren van bestanden uit databanken was daarom moeilijk. Bij een onbekende databank zou dit problemen kunnen geven. Er was in dat geval nood aan meer metadata. 7.4.2. Arkade en Arkadukt Het nationaal archief van Noorwegen heeft ook gewerkt rond het archiveren van databanken. 123 Remco Verdegem, Database Preservation Issues. Erpanet Workshop Long-term Preservation of Databases, 2003 http://www.digitaleduurzaamheid.nl/bibliotheek/docs/longterm_preservation_of_databases.pdf. 124 WinAllora heet nu XML-RDB en is een programma van Hitsoftware. XML junction was een programma van Data Junction, maar het product bestaat niet meer en Data Junction is overgenomen door Pervasive http://www.pervasive.com/. 125 Zoals eerder besproken 54 Een databank wordt beschreven in ADDMML. ADDMML is een XML DTD en staat voor Archives Data Description and Manipulation Markup Language. Het is een metadata formaat om de data uit databanken te beschrijven in een software en hardware onafhankelijk formaat. Er worden enkel datasets beschreven. De structuur van de taal is hiërarchisch opgesteld en is gelaagd. De taal beschrijft eerst de dataset, daarna worden de verschillende bestanden beschreven. Na de beschrijving van een bestand worden de tabellen beschreven. Na de tabellen worden velden beschreven en als laatste de codes gebruikt in de velden. Het programma dat deze ADDMML bestanden maakt, wordt Arkadukt genoemd. Het is een grafisch programma dat gebruikt wordt om correcte ADDMML-bestanden te maken zonder dat de gebruiker ADDMML moet kennen. Een tweede programma is Arkade, het maakt gebruik van de output van Arkadukt. Het ondersteunt de volgende functies: conversie, analyse, controle van de ADDMML-bestanden. Er zijn ook nog een aantal speciale functies die ondersteund worden, zoals de creatie van SASdatasets126 en willekeurige kwaliteitstesten van records. Er is nog een derde programma ArkN3 dat de conformiteit nakijkt met de Noorse Records Management standaard. 7.4.3. RODA Het nationaal archief van Portugal doet ook onderzoek naar het archiveren van databanken. Ze zijn hiervoor een project opgestart dat RODA wordt genoemd 127. RODA staat voor "Repository of Authentic Digital Objects". Zoals uit de naam blijkt is het niet enkel de bedoeling om een depot te maken om databanken in te archiveren, maar ook documenten, afbeeldingen en andere digitale objecten. Databanken worden in het depot toegevoegd als ze van het gesloten en statische type 128 zijn. Om databanken te beschrijven heeft men een eigen generiek XML schema ontwikkeld. Het schema wordt DBML genoemd. Een DBML-bestand bestaat uit twee delen. Het eerste gedeelte bevat de structuur van de databank en het tweede gedeelte de data. Voor de migratie wordt gebruik gemaakt van een hulpprogramma dat specifiek voor een bepaalde databank geschreven werd. Een dergelijk programma wordt een mediator genoemd. De omzetting van de structuur gebeurt door de mediator. De structuur bestaat uit een 126 SAS is een statistisch programma http://www.sas.com/. 127 http://roda.iantt.pt/en. 128 zie hierboven 55 algemeen gedeelte met een overzicht van de tabellen, kolommen en primaire en vreemde sleutels. Na het algemene gedeelte wordt elke tabel en rij afzonderlijk gedefinieerd. Na het structurele gedeelte worden de data in de juiste structuur weergegeven. RODA maakt gebruik van het PREMIS129 datamodel. Het datamodel bestaat uit 5 entiteiten: Intellectual Entities, Object, Rights, Event, Agent. Om Intellectual Entities te beschrijven wordt EAD130 gebruikt. De databank en de beschrijvende bestanden worden in één pakket samengebracht. Het pakket bestaat uit drie delen: beschrijvende metadata in EAD, DBML en bijkomende bestanden. Het pakket wordt beschreven in METS 131. Het concept van de pakketten is afkomstig van het OAIS-model. Afhankelijk van de taak wordt het pakket SIP, DIP of AIP genoemd132. Om toegang te verlenen tot de databank wordt het pakket omgezet in andere formaten, want XML wordt snel te groot om gebruikt te worden. Er wordt gebruik gemaakt van HTML en SQL. De gebruiker kan door het HTML bestand bladeren of kan het SQL bestand in een andere databank importeren. Er wordt geen vermelding gemaakt van het bewaren van onderdelen van de databank die niet gemigreerd kunnen worden of die niet opgenomen kunnen worden in de gebruikte bestanden, zoals formulieren of andere interfaces. 7.4.4. MIXED MIXED133 is een project van DANS134. MIXED staat voor Migration to Intermediate XML for Electronic Data. De doelstelling van het project is om een systeem en procedure uit te werken 129 Staat voor PREservation Metadata, Implementation Strategies. Het is gegroeid uit de bibliotheekwereld. Het bestaat uit een aantal strategieën en een data dictionairy om minimale set van bewaringsmetadata te definiëren. 130 EAD staat voor Encoded Archival Description. Het is een internationale standaard die gebruik maakt van XML om archiefinventarissen te maken. Zo kunnen deze archieftoegangen toegankelijk, uitgewisseld en gepubliceerd worden. http://www.loc.gov/ead/. 131 Metadata Encoding and Transmission Standard: http://www.loc.gov/standards/mets/. Het is een standaard om verschillende soorten bestanden samen te nemen en op te slaan als een XML-bestand. 132 SIP staat voor Submission Information Package en is het pakket dat aangeleerd wordt aan het digitaal depot; DIP staat voor Dissemination Information Package en dit is het pakket dat naar de gebruiker wordt gestuurd; AIP betekent Archival Information Package en dit is het pakket dat opgeslagen wordt in het depot. 133 http://mixed.dans.knaw.nl/ 134 DANS staat voor Data Archiving and Networked Services. Het is een onderzoeksinstelling van KNAW (Koninklijke Nederlandse Academie van Wetenschappen) en NWO (Nederlandse Organisatie voor Wetenschappelijk Onderzoek). Het doel van DANS is om digitale onderzoeksdata beschikbaar te stellen. http://www.dans.knaw.nl/nl/ 56 om datasets van onderzoeksprojecten toegankelijk te maken en te houden. Enkel de data en de logische relaties worden behouden bij de methode die MIXED gebruikt. Het project onderzoekt hoe datasets uit databanken en spreadsheet kunnen gemigreerd worden naar een generiek XML formaat. Het generiek formaat wordt gebruikt om de data te bewaren in het EASY depot135. Het EASY depot maakt gebruik van het OAIS model. Het depot zorgt dat de data toegankelijk blijven voor later en dat de gebruikers 136 de data kunnen downloaden. Om de data van het depot toegankelijk te maken voor de gebruikers wordt het XML bestand omgezet in een ander formaat, bijvoorbeeld naar CSV. Om de data om te zetten wordt er een module gemaakt voor elke databanksysteem en spreadsheetprogramma. De module moet de data omzetten in het generieke XML formaat. Veel informatie over MIXED is nog niet beschikbaar, want het project is pas vanaf januari 2007 gestart. 7.5. SIARD SIARD is een programma ontwikkeld door het federaal archief van Zwitserland. SIARD staat voor ‘Software Invariant Archiving of Relational Databases at the Swiss Federal Archives’. Het is een programma dat een databank migreert naar standaard formaten, namelijk SQL en XML. SIARD heeft de mogelijkheid om een directe connectie te maken met een operationele databank, een migratie van de databank naar een andere databank (zowel van dezelfde leverancier als van een andere leverancier) of een connectie met een operationele databank via een hiervoor speciaal ontwikkeld component. Een intermediaire databank is een interessante optie omdat het toelaat om een aantal bewerkingen uit te voeren die het archiveren vergemakkelijken, zoals data conversie, filteren,... Het programma bestaat uit drie onderdelen, namelijk A0, A1 en A2. Het zijn afzonderlijke programma's die door andere gebruikers bediend kunnen worden. Dit heeft het voordeel dat verschillende personen tegelijkertijd kunnen werken en specialisatie mogelijk maakt. A0 wordt gebruikt om een databank te analyseren en te extraheren uit een DBMS. Het analyseert de databank en geeft deze weer in een boomstructuur. De analyse geeft een overzicht van de verschillende onderdelen van de databank, zoals de data dictionary, schema’s, tabellen, sub-schema’s, beperkingen,…. Deze verschillende onderdelen worden dan omgezet naar SQL-99 elementen. Als de migratie niet gelukt is, door bijvoorbeeld leverancierspecifieke 135 EASY staat voor elektronisch archiveringssystemen:.http://easy.dans.knaw.nl/dms 136 Gebruikers zijn hier heel ruim te interpreteren, zowel onderzoekers als burgers. In het OAIS jargon wordt dit de ‘designated community’ genoemd 57 onderdelen, dan wordt in de structuur aangegeven waar fouten zijn opgetreden bij de migratie van de leverancierspecifieke SQL naar standaard SQL-99. Alle wijzigingen die optreden bij de migratie naar SQL-99 worden opgeslagen in een logboek. Als de gerapporteerde problemen kunnen opgelost worden, manueel of automatisch, dan wordt er een archief gemaakt. Het is ook mogelijk om aan te geven dat een bepaald onderdeel niet gearchiveerd kan worden of dat bepaalde onderdelen niet gearchiveerd moeten worden en dat ze uitgesloten worden bij het archiveren. Al deze acties worden opgenomen in het logboek. Het resultaat van de migratie zijn een aantal XML-bestanden met de generieke metadata, SQL-99 bestanden en platte tekstbestanden. De XML referentiebestanden die gemaakt worden door A0, worden bij A1 gebruikt om niettechnische metadata over de verschillende onderdelen van de databank en contextuele metadata toe te voegen door de gebruiker. Er zijn een aantal verplichte metadatavelden die moeten ingevuld worden. Na de toevoeging van deze gegevens wordt het XML-bestand terug naar het archief verplaatst. A2 wordt gebruikt om toegang te verlenen tot de gearchiveerde databank en om de gearchiveerde bestanden opnieuw te importeren in een nieuwe databank. 7.6. Chronos Een commerciële oplossing voor het archiveren van databanken is Chronos 137. Het is een product dat te vergelijken is met SIARD. Het is ontwikkeld door CSP en de universiteit van Landshut. Het is een applicatie die aan de te archiveren databank wordt gekoppeld. Het Chronos systeem bewaart de oorspronkelijke databank en heeft de mogelijkheid om de databank te exporteren in XML en platte tekst. XML wordt gebruikt voor de metadata te bewaren en platte tekst (ASCII of Unicode) voor de data. In het XML bestand wordt informatie over objectnamen, datatypes en beperkingen opgeslagen. Het Chronos systeem verandert de oorspronkelijke data niet, maar bewaart de data zoals ze gedefinieerd is in de oorspronkelijke databank. Dit is het belangrijkste verschil met SIARD. Chronos bevat een kennisdatabank met de informatie over verschillende DBMS, zodat er migratie mogelijk zijn tussen de verschillende leverancierspecifieke databanken. Het archief is toegankelijk via het Chronos systeem of kan geïmporteerd worden in een andere databank. Chronos heeft verschillende mogelijkheden om te archiveren. Een eerste mogelijkheid is de retrieval gebaseerde benadering. Deze benadering verschilt van de object gebaseerde benadering zoals SIARD. SIARD extraheert de verschillende objecten, zoals tabellen, 137 http://www.chronos.csp-sw.de/?lang=en 58 subschema's, kolommen,.... Chronos extraheert de volledige data tupels en bewaart alle informatie over de sleutel beperkingen tussen verschillende objecten. Dit zorgt dat de gearchiveerde bestanden minder snel groeien, want Chronos heeft een incrementele archiveringsmogelijkheid. Via deze incrementele archivering hoeft niet telkens bij elke nieuwe archiveringsactie opnieuw alle tabellen,... geëxtraheerd worden. De retrieval gebaseerde methode gebruikt het SELECT statement in SQL om gegevens uit de databank te halen. Zo kan er volgens Chronos bepaald worden welke data men uit de databank wenst te archiveren. De relationele integriteit138 wordt behouden. Chronos voegt deze integriteit automatisch toe. Er wordt gebruik gemaakt van de vreemde sleutel. Als er geen vreemde sleutel is of deze functionaliteit niet ondersteund wordt door de databank, dan moet de integriteit van de relaties manueel geconfigureerd worden. Een andere mogelijkheid om een tabel te archiveren is door gebruik te maken van speciale "archive status" velden. Chronos heeft een update mechanisme om de status van deze velden te veranderen. Dit speciaal veld geeft aan dat een bepaalde rij gearchiveerd mag worden. De authenticiteit van de gearchiveerde data tupels worden op twee manieren bewezen. De eerste manier is door een hash code139 van elke tupel te berekenen en de hash code wordt opgeslagen in een te archiveren bestand. Op deze manier kan de juistheid 140 van elke tupel aangetoond worden. De tweede manier is door een hash code te berekenen van het volledige te archiveren bestand. De hash code wordt berekend voor de overbrenging en na de overbrenging van het te archiveren bestand naar de uiteindelijke opslag. De authenticiteit kan verbeterd worden door een digitale handtekening te gebruiken bovenop de hash code. Bij incrementeel archivering bestaat het gevaar dat er na verloop van tijd veranderingen worden aangebracht aan een schema van de databank en dat de schema's incompatibel worden. Om dit probleem op te lossen maakt Chronos gebruik van "archive revisions". Bij elke verandering aan het productiesysteem wordt er een nieuwe revisie aangemaakt. Chronos detecteert deze schema veranderingen automatisch. De verschillende revisies worden bewaard en de structurele wijzigingen worden door Chronos automatisch gedetecteerd. De semantische 138 Wordt ook referentiële integriteit genoemd. Het is een beperking gebruikt om de consistentie tussen tabellen te behouden. Het komt er op neer dat bij een vreemde sleutel in één tabel altijd een primaire sleutel uit een andere tabel hoort. Het probleem van de relationele integriteit kan ontstaan wanneer een record verwijderd wordt. 139 Een hash code wordt gegenereerd door een hashfunctie. Het zet een langere tekst om in een korte tekst. Deze korte tekst is de hashwaarde. Het is moeilijk om van de korte tekst naar de lange tekst te gaan, maar het is wel mogelijk om te controleren of de korte tekst overeenkomt met de lange tekst (cfr checksums) 140 In het Engels wordt dit fixity genoemd 59 wijzigingen, bijvoorbeeld hernoemen van kolommen en veranderingen in datatypes,..., moeten door de beheerder van het Chronos depot worden aangegeven en deze wijzigingen kunnen niet automatisch gedetecteerd worden. Er zijn wel hulpmiddelen om de concordantie uit te voeren. Er is ook een derde mogelijkheid en dat is de combinatie van de twee voorgaande. Er kan bijvoorbeeld een nieuwe kolom worden toegevoegd aan een tabel en de inhoud van de kolom wordt berekend door de combinatie van de bestaande kolommen. Als de gebruiker het incrementeel gevormde archief wenst te bevragen, dan wordt er op basis van de verschillende schema's een virtuele laag gecreëerd tijdens de zoekactie. De virtuele laag wordt gebruikt om de verschillende bestanden die zijn ontstaan door de incrementele archiveringsacties van de verschillende revisies of door opgesplitste bestanden die de maximum bestandsgrootte hebben bereikt. De virtuele laag bevindt zich tussen de gebruiker en de data. De virtuele laag zorgt dat verschillende bestanden overeenkomen als een homogeen geheel. Er is directe toegang tot het Chronos archief door gebruik te maken van een webinterface of een speciaal ontworpen java programma of een extern programma dat gebruikt maakt van de Chronos API141 Zo hoeven bestanden niet geïmporteerd te worden in een nieuwe databank, zoals dat bij SIARD wel nodig is. Het archief kan full-text, per kolom of met een SQL zoekvraag bevraagd worden. De resultaten kunnen gevisualiseerd worden of in een aantal formaten geëxporteerd worden. Als de geëxporteerde bestanden wel worden geïmporteerd in een ander databank dan kunnen er verschillende gebruikers gebruik maken van het archief en kunnen er verschillende rechten en verschillende gebruikersgroepen toegekend worden. In volgende versies zal het voor de beheerders mogelijk zijn om rapporten te maken. Het zullen geen logboeken zijn zoals bij SIARD. SIARD Chronos Migreren naar standaard Ja, naar de SQL standaard en XML Tekst als importformaat Ja Nee, er is een kennisbank met informatie over verschillende databanken. Het is wel mogelijk om te exporteren naar XML Ja Verbonden met operationele DB Is wel mogelijk, maar wordt niet aangeraden Ja en is een functie Exportformaat XML XML 141 API staat voor Application Program Interface en het laat programma’s of diensten communiceren met een programma via vastgelegde commando's. 60 SIARD Chronos Aantonen van de effectiviteit? ? Prijs ? Kan niet getest worden. Het is wel mogelijk om een demonstratie te krijgen van van CSP. Die duurt 2 à 3 dagen en kost 2000 tot 3000 euro + reiskosten Voor 1 CPU is de licentiekost 25.000 Euro (exclusief BTW). Het is inclusief 1 database verbinding. Bijkomende databank verbindingen kosten 3.000 Euro per verbinding Onderhoudscontract kost 3.750 Euro per jaar Technische vereisten Gebruikt java, maar geen technische eisen verder bekend Ondersteunde databanken “Export modes” voor Oracle en SQL Server. Voor de overige JDBC Gebruikt java en is voor verschillende besturingssystemen beschikbaar (bijvoorbeeld Windows XP, Server 2003, 2000, Linux, Solaris, HP-UX, AIX) Oracle, IBM DB2, MS SQL Server of elke databank die JDBC ondersteunt OAIS -Compliant ? Ja Personeelsvereisten Eigen informatica personeel voor de verdere ontwikkeling + onderhoud Onderhoudscontract mogelijk voor 3.750 Euro (geen ontwikkeling nodig) Nadelen Het exporteren naar een XML-bestand is traag en levert grote bestanden op. Dit vormt vooral een probleem bij grote databanken. Het migreren naar standaard SQL is niet gemakkelijk en bevat veel fouten Geen actieve ontwikkeling meer? Gebruikt een kennisbank en dat levert problemen op met databanken die niet in de kennisbank zitten. Men wordt afhankelijk van de leverancier van Chronos Geen duidelijkheid over SQL zoekvragen, zoals views 61 Voordelen SIARD Chronos Gebruiken standaarden Houdt rekening met de oorspronkelijke orde (toevoegen van beschrijving van nietgearchiveerde databanken) Actieve ontwikkeling Heeft zijn degelijkheid bewezen Tabel 6: Vergelijking tussen SIARD en Chronos 7.7. RDF en OWL Er is nog geen praktische ervaring met het archiveren van databanken met RDF en OWL. Er zijn een aantal programma’s die gebruikt worden om databanken om te zetten in OWL en RDF. Het zou interessant zijn om deze programma’s ook te bekijken in het licht van archiveren van databanken. Een voorbeeld van een programma om een databank om te zetten in RDF of OWL is Protégé met de Data Master plugin. Protégé is een programma van de Stanford universiteit voor het maken van ontologiëen. De Data Master plugin maakt gebruik JDBC en ODBC om een databank te importeren en om te zetten in RDF of een combinatie van RDF en OWL. De plugin maakt gebruik van Relational.OWL142 van de Heinrich Heine universiteit uit Düsseldorf. Daarnaast is er bijvoorbeeld ook TopBraid Composer 143 van TopQuadrant dat gebruik maakt van D2R144. D2R is een taal op een concordantie te maken tussen een databank en een OWL/RDFS ontologie. Het is gemaakt door Chris Bizer van de vrije universiteit van Berlijn. 8. Minimale metadataset voor databanken Met metadata wordt hier niet de metadata bedoeld zoals gebruikt in een databank. In databankjargon wordt dit soort metadata catalogs of data dictionary genoemd. In een relationele databank is dit een tabel waarin alle tabellen en de eigenschappen van de tabellen van een databank zijn opgenomen. De verschillende metadatatypes die hierboven beschreven worden zijn ook bij databanken relevant. De technische metadata beschrijven de databank door middel van data dictionaries, codelijsten en schema's. Ze worden aangemaakt bij het ontwikkelen van de databank. De technische metadata zijn nodig om de gegevens in de databank te begrijpen, om te weten welke DBMS gebruikt werd, enz. Ze geven technische context aan de databank en aan de data. 142 http://www.dbs.cs.uni-duesseldorf.de/RDF/ 143 http://www.topbraidcomposer.com/ 144 http://sites.wiwiss.fu-berlin.de/suhl/bizer/d2rmap/D2Rmap.htm 62 Er zijn ook de beschrijvende metadata die bijhouden wat het doel is van een databank, wie de databank gemaakt heeft, wat de betekenis en het nut van de data is, enz. Beschrijvende metadata beschrijven de context van de databank en zijn omgeving en geven ook informatie over het intellectueel beheer, zoals de wijze van ordenen. Door deze beschrijvende metadata is de databank ook in de toekomst gemakkelijk te begrijpen. De beschrijvende metadata zitten niet in de databank vervat, maar moeten geleverd worden door de archiefvormer en moet van bij de creatie worden bijgehouden en opgeslagen. Zowel de technische metadata als de beschrijvende metadata zijn nodig om de databank op een goede manier te bewaren voor de toekomst. Om een databank voor een lange termijn te kunnen bewaren moet de integriteit, verstaanbaarheid, authenticiteit, originaliteit en toegankelijkheid zo goed mogelijk gegarandeerd worden. Het toekennen van metadata is een belangrijk en noodzakelijke taak, maar het kan ook een tijdsintensieve taak zijn. Gelukkig kan er heel wat metadata automatisch ingevuld worden. Een bijkomend voordeel van het automatisch toekennen van zoveel mogelijk metadata is dat als er minder menselijke interactie vereist is en de metadata consistenter zullen zijn. Voor een aantal gegevens is automatische captering evident, bijvoorbeeld het gebruikte DBMS, het cijfer voor de integriteitscontrole, het bestandsformaat of de versie van het bestandsformaat. Ook overgeërfde metadata worden zonder menselijke inbreng toegekend. Er bestaan geen metadatastandaarden voor het beschrijven van databanken. Elk initiatief ontwikkelt zelf een eigen schema 145. Een voorstel voor de minimale metadataset bestaat uit de volgende velden: Metadata Inhoud Oorspronkelijk (bestands)formaat Huidig (bestands)formaat Naam van het oorspronkelijk DBMS Versie van het oorspronkelijk DBMS 145 Zie bijvoorbeeld SIARD, Chronos, Mixed, RODA of Arkadukt. Voor datasets zijn er wel metadatastandaarden ontwikkeld die bedoeld zijn om door verschillende instellingen samen gebruikt te worden, bijvoorbeeld het eerder vermelde Data Documentation Initiative (DDI, http://www.ddialliance.org/ ). Maar deze initiatieven zijn beperkt voor een bepaalde doelgroep. DDI is bijvoorbeeld gericht op de sociale wetenschappen. 63 Naam van het huidig DBMS Versie van het huidig DBMS Oorspronkelijk besturingssysteem Huidig besturingssysteem Naam van apparatuur Type van apparatuur Naam en versie van zoektalen Bewaring Auteur Datum Titel Naam van de organisatie Taak binnen de organisatie Werkproces Relatie met andere bestanden Controlecijfer Oorsprong van het object Beschrijving van bewaar- of beheeractie Datum en tijdstip van bewaar -en beheeractie Verantwoordelijke bewaar -en beheeractie Referentie informatie 64 Beschrijving146 Auteur Datum Titel Naam van de organisatie Taak binnen de organisatie Werkproces Relatie met andere bestanden Structuur AIP Data dictionary Tabellen Beperkingen Subschema Datatypes Tabel 7: Minimale set van metadata De Inhoud beschrijft het bestandsformaat, het gebruikte databanksysteem en het gebruikte hard –en software. Het is belangrijk dat deze beschrijving zo gedetailleerd mogelijk is, omdat het later van groot belang kan zijn om te bepalen welke versie van een programma nodig is om het bestandsformaat te open. Het oorspronkelijk bestandsformaat is ook belangrijk om te kennen als onderdeel om de authenticiteit aan te tonen. Als het oorspronkelijk formaat bewaard wordt dan is het ook belangrijk om het oorspronkelijk bestandsformaat zo goed mogelijk te definiëren voor de juiste technische specificaties te gebruiken. Zo is het bijvoorbeeld niet voldoende om te zeggen MS Access, maar zoveel mogelijk van het bestandsformaat te bewaren. Er kan gebruik gemaakt worden van bestaande hulpmiddelen zoals de PRONOM147 website van het nationaal archief van Groot-Brittannië. Het is een website 146 De metadatavelden zijn een herhaling van de andere metadatavelden, omdat de Descriptive Information van OAIS samengesteld wordt uit andere metadatavelden 147 http://www.nationalarchives.gov.uk/PRONOM/default.htm 65 met gedetailleerde informatie over een bestandsformaat. DROID 148 is een bijhorend programma dat kan gebruikt worden om de nodige informatie automatisch te extraheren. Er zijn nog andere metadata extractiehulpmiddelen, maar deze ondersteunen geen databanken. Een voorbeeld is Metadata Extractor Tool149 van de nationale bibliotheek van Nieuw-Zeeland. De elementen bij bewaring geven de contextuele informatie en informatie om de integriteit en authenticiteit te bewijzen. De taak, werkproces en organisatie informatie worden gebruikt om de context te schetsen. Het controlecijfer wordt gebruikt om de integriteit aan te duiden. De beschrijving van de bewaar- en beheeracties helpen om de authenticiteit te bewijzen. De structuur van het gehele pakket wordt opgeslagen in een AIP. Data dictionary is specifiek voor databanken en bevat een aantal elementen die nodig zijn om de tabellen te beschrijven. De bovengenoemde opsomming is een minimale vereiste om databanken voor een lange termijn op een authentieke, integere manier te bewaren. De minimale vereisten kunnen uitgebreid worden afhankelijk van de databank en als de archiefvormer oordeelt dat de minimale vereisten onvoldoende zijn om de authenticiteit en integriteit te behouden. 9. Richtlijnen Als er een aantal raadgevingen worden gevolgd dan wordt het proces van archiveren aanzienlijk vereenvoudigd. Er zijn algemene raadgevingen voor het management en specifieke richtlijnen die gevolgd kunnen worden door ontwikkelaars en eindgebruikers. De ontwikkelaar zal in praktijk een evenwicht moeten vinden tussen de eisen van gebruikers van de databank nu en het vereenvoudigen van het archiveren van de databank later. De eindgebruiker kan ook een aantal richtlijnen volgen bij het ontwikkelen van een desktop databank. Er zijn een aantal functies toegevoegd aan een dergelijke databank die het ontwikkelen van een databank eenvoudiger maken, maar die voor problemen zorgen bij het archiveren van de databank. Algemene richtlijnen: als medewerkers goed opgeleid worden om databanken te maken en te onderhouden, dan wordt het gemakkelijker om de databank te archiveren. afspreken van verantwoordelijkheden, bijvoorbeeld wie zorgt voor de conversie of migratie van een databank en wanneer de databank gearchiveerd moet worden 148 DROID staat voor Digital Record Object Identification en wordt ook ontwikkeld door het Nationaal Archief van Groot-Brittannië. 149 http://meta-extractor.sourceforge.net/ en http://www.natlib.govt.nz/about-us/current-initiatives/metadata-extraction- tool 66 opletten bij het aankopen van software dat het programma standaardformaten ondersteunt. in de planning van projecten voldoende aandacht en nadruk leggen op het gebruik van standaardformaten Richtlijnen bij het ontwikkelen van databanken, die het migreren van de databank gemakkelijker maken: gebruik geen tabel- of kolomnaam met tekens die niet compatibel zijn met de SQL standaard. Mimer Information Technology biedt een online SQL Validator 150 aan om de conformiteit met de verschillende ANSI/ISO SQL standaarden te testen. maak geen gebruik van niet door de standaard SQL gedefinieerde gegevenstypen, bijvoorbeeld hyperlinks, valuta en automatische nummering in MS Access. Valuta kan bijvoorbeeld vervangen worden door het type numeriek en in de gebruikersapplicatie kan aangegeven worden wat de valuta is. Een overzicht van de verschillen tussen de SQL gebruikt in MS Access en de standaard SQL is te vinden in de Help van MS Access.151 Bij het ontwikkelen van databanken moet rekening gehouden worden dat oude gegevens niet mogen verwijderd of overschreven worden. Daarom moeten ze bewaard blijven. Er kan gebruik gemaakt worden van een tijdstempel om aan te geven wanneer welke gegevens geldig waren. Richtlijnen voor eindgebruikers die zelf databanken ontwerpen: ontwerp een goede structuur voor de tabellen. Belangrijke aandachtspunten zijn het normaliseren152 van de gegevens en de referentiële integriteit van de gegevens. Bijvoorbeeld MS Access is er een functie Prestatie-analyse. De functie geeft informatie om onder andere de structuur van de databank te verbeteren. Deze informatie kan gebruikt worden om de structuur te verbeteren. Het is belangrijk dat elke suggestie bekeken wordt voor deze uit te voeren, want sommige suggesties zijn eigen aan MS Access en dat maakt het weer moeilijker om te archiveren. Het is geen optie die blindelings kan toegevoegd worden. Door de functie Documentatie te gebruiken krijgt u een uitgebreid verslag van de databank. Het is interessant om dit verslag te bewaren, 150 http://developer.mimer.se/validator/ 151 Zoekterm: ANSI SQL 152 Normaliseren is een techniek gebruikt in relationele databanken om de opslag van dubbele gegevens te vermijden. De data wordt in een aparte tabel opgeslagen, zodat andere tabellen een koppeling kunnen leggen met de tabel 67 want het geeft een gedetailleerde beschrijving van de databank. geef tabellen en kolommen een betekenisvolle naam en gebruik geen speciale tekens153. gebruik, zie hierboven, enkel standaard gegevenstype en enkel standaard SQL. wees consequent in het gebruik van notaties, zoals datum en tijd. Als er bepaalde standaarden zijn dan is het ook aan te raden die te gebruiken 154. Het is ook belangrijk om af te spreken met alle invoerders in de databank dat dezelfde conventies worden gebruikt. Het is belangrijk om deze conventies ook op papier te zetten, dat maakt het duidelijk voor iedere invoerder en het kan gebruikt worden als documentatie bij het archiveren van de databank gebruik liefst geen paswoorden om een databank te beveiligen, maar vertrouw op toegangsrechten op mappen en bestanden. sommige databanken hebben ingebouwde mogelijkheden om de databank gezond te houden. Het maakt het mogelijk om problemen en fouten in de databank sneller op te sporen. In MS Access wordt de functie om de databank gezond te houden "comprimeren en herstellen" genoemd. Bij ernstige fouten houdt MS Access een logboek bij van de melding van de fouten. Dit bestand kan interessant zijn om bij te houden. Praktische kwesties bij het ontwerp en configuratie van het depot: De toegang tot het depot moet zorgvuldig gecontroleerd worden, zodat er geen opzettelijke of onbedoelde schade kan toegebracht worden. Een back-upstrategie moet uitgewerkt worden, zodat het depot bij problemen opnieuw hersteld kan worden. 10. Stappenplannen 10.1. Voorbereidende stappen a. Omschrijf waarom het nuttig is om de databank te archiveren. Het is belangrijk om na te gaan of het nuttig is om de databank voor een korte of lange termijn te archiveren. Deze stap wordt idealiter uitgevoerd voor de creatie van de databank omdat er dan een aantal richtlijnen zijn die u kan volgen b. Voeg de databank toe aan het archiefbeheersplan 153 154 Gebruik enkel volgende karakters: letters, cijfer, _ en - Voor datum en tijd is dat bijvoorbeeld ISO 8601 68 c. Onderzoek de wetgeving of er vormvereisten zijn of dat er andere obstakels zijn in de wetgeving voor het bewaren van de gegevens op een digitale manier (privacywetgeving, auteursrecht, databankrecht, specifieke wetgeving over het onderwerp,...). Dit is een erg belangrijke stap, want het is een belangrijk onderdeel van de authenticiteitseisen 155 en het bepaald of er hoegenaamd wel digitaal gearchiveerd kan worden d. Bepaal de metadata die belangrijk zijn om de databank te kunnen archiveren. Het gaat dan o.a. om metadata om de context te bewaren, technische metadata,... e. Samenstellen van een logboek om beheer –en bewaaractie in te noteren f. Duidt een verantwoordelijke aan voor het archiveren van de databanken g. Maak een inventaris van de bestaande databanken h. Definieer de essentiële authenticiteitseisen die bewaard moeten blijven i. Hou de oorspronkelijke databank ook bij. Zet de databank op een veilige plaats. De drager waarop de databank wordt bewaard moet regelmatig nagekeken worden op fouten. Het is belangrijk ook hier een verantwoordelijke voor aan te duiden. Maak best gebruik van verschillende soorten dragers 10.2. Stappenplan voor langetermijnarchivering van databanken in XML a. Beschrijf het doel van de databank met gegevens over bijvoorbeeld de context, archiefvormer,… in een XML-bestand. Er kan gebruik gemaakt worden van een beschrijvende metadata standaard zoals EAD b. Beschrijven van de databank, tabellen, velden en data. Er kan een eigen XML Schema uitgewerkt worden of er kan een bestaand schema gebruikt worden, bijvoorbeeld DBML van RODA c. Kijk of de datatypes overal goed zijn en gebruik de juiste, standaard datatypes voor de velden, bijvoorbeeld bij de datum 4 cijfers worden gebruikt om het jaar aan te geven. Of bij valuta dat de juiste standaard datatypes gebruikt worden d. Speciale tekens zoals &, < en > die voorkomen in de inhoud van een databank moeten 155 Zie verder en ook 5. Wat zijn de essentiële kenmerken en authenticiteitseisen 69 geconverteerd worden naar XML entiteiten156 e. Verwijder alle toegangsbeperkingen, die het bekijken of het exporteren van de databankinhoud belemmeren. Voeg de beschrijving van de toegangsrechten toe aan het logboek f. Zet de databank volledig om in XML. Als de XML-bestanden te groot worden om ze vlot te gebruiken, is het beter om het XML-bestand te splitsen in een aantal bestanden of om een combinatie van SQL, platte tekst en XML te gebruiken157 g. Geef een visuele voorstelling van de databank bijvoorbeeld in een ER-diagram h. Binaire datavelden moeten geëxporteerd worden naar aparte bestanden. Er moet in het XML-bestand een verwijzing worden aangebracht naar het geëxporteerde bestand en de bestanden moeten ook een archiveringstraject krijgen i. Beschrijf de onderdelen die niet in de XML beschrijving konden opgenomen worden, zoals de zoekvragen, invoerschermen, programmeercode,…., moeten gedocumenteerd worden. Er kan hier gebruik gemaakt worden van de documentatie voor de gebruikers of de documentatie gemaakt door de ontwikkelaars j. Gebruik een container bestand om de verschillende bestanden gemakkelijk te koppelen en terug te vinden. METS is hiervoor geschikt 10.2.1. Valideren van gearchiveerde bestanden a. Gebruik een programma om de XML bestanden te valideren, dit garandeert dat het XMLbestand voldoet aan de XML specificatie en aan het gebruikte XML Schema b. Kijk of alle informatie uit de databank goed is omgezet in XML en dat alle belangrijke eigenschappen zijn bewaard zijn ofwel in het XML-bestand ofwel in de documentatie c. Maak ook gebruik van controlecijfers om de integriteit te controleren 156 In XML moeten speciale karakters omgezet in een code die begint met &# en wordt gevolgd door een nummer en eindigt met een “;”, bijvoorbeeld de ampersand (&) wordt als een XML entiteit omgezet als &#38;. Informatie over het omzetten van SQL naar XML is te vinden in SQL-2003 standaard, in het onderdeel SQL/XML http://www.sqlx.org/ 157 Zie 10.3. Stappenplan bij het archiveren van grote databank 70 10.3. Stappenplan bij het archiveren van grote databanken 10.3.1. Stappenplan voor het omzetten van de databank a. Beschrijf het doel van de databank met gegevens over de context, archiefvormer,… . Sla deze informatie op in een XML-bestand b. Geef een korte beschrijving van de inhoud van de databank, tabellen en velden. Gebruik hier ook een XML-bestand c. Beschrijf aan de hand van een formele taal (bijvoorbeeld bij relationele databanken kan ANSI/ISO SQL gebruikt worden) de databank, tabellen, velden, datatypes van de velden, relaties tussen tabellen met de kardinaliteit, primaire sleutels, eventuele vreemde sleutels,... d. Beschrijf de onderdelen van de databank die niet konden omgezet worden naar standaard SQL e. Beschrijf het eventuele coderingsschema dat gebruikt werd in de databank f. Zorg dat de datatypes overal goed zijn ingegeven en dat velden de juiste, standaard datatypes gebruiken, bijvoorbeeld bij de datum 4 cijfers worden gebruikt om het jaar aan te geven158. Of bij valuta dat de juiste standaard datatypes gebruikt worden. g. Verwijder alle databankinhoud toegangsbeperkingen, belemmeren. die Voeg het een bekijken of beschrijving het van exporteren de van de verwijderde toegangsbeperkingen toe aan het logboek h. Geef een visuele voorstelling van de databank bijvoorbeeld in een ER-diagram i. Beschrijf de onderdelen van de databank die niet in een vorige beschrijving konden opgenomen worden, bijvoorbeeld invoerschermen, rapporten, specifieke programmeercode die niet kan omgezet worden in PSM/SQL j. Bewaar een gebruikershandleiding om een overzicht te hebben van de verschillende schermen en de richtlijnen voor het invoeren van de data. Als deze handleiding niet bestaat dan moet er een document gemaakt worden dat elk scherm afzonderlijk beschrijft. Als het mogelijk is om de richtlijnen voor invoer te beschrijven deze ook op te nemen. Het is ook 158 De richtlijnen van ISO 8601 kunnen gevolgd worden. 71 belangrijk dat relevante documentatie tijdens de ontwikkeling bewaard wordt. Het gaat over documentatie waar de beslissingen van de ontwikkelaars bij de ontwikkeling van de databank zijn opgenomen of waar elementen instaan die nog niet in de beschrijving staan en wel relevant zijn om de databank te begrijpen k. Gebruik een container bestand om de verschillende bestanden gemakkelijk te koppelen en terug te vinden. METS is hiervoor geschikt 10.3.2. Stappenplan voor het omzetten van de gegevens a. Exporteer elke tabel naar bij voorkeur Unicode bestand met de velden gescheiden door een speciaal karakter dat niet voorkomt in de tabel. Bijvoorbeeld kan er gebruik gemaakt worden van een tab of een pijp (|) karakter. Gebruik geen aanhalingstekens om de tekstvelden te begrenzen. Tekstvelden die te groot worden, worden beter in een apart tekstbestand geplaatst. Een extra aandachtspunt bij het exporteren van grote tekstvelden is dat er moet over gewaakt worden dat er geen end-of-line karakters voorkomen. Dit kan problemen geven bij het gebruik van de bestanden. De end-of-line karakters moeten vervangen worden door een speciaal symbool, bijvoorbeeld <EOL>159. Het is ook mogelijk om ASCII te gebruiken in plaats van Unicode b. Elke geëxporteerde tabel moet een naam krijgen die gebruikt wordt in de databank. Let op met speciale karakters160 c. Binaire datavelden moeten geëxporteerd worden in een apart bestand. Er moet een verwijzing aangebracht worden in het data-bestand naar de geëxporteerde bestanden. De geëxporteerde, binaire bestanden moeten op gepaste manier gearchiveerd worden, zodat ze ook bewaard kunnen worden op lange termijn. Als er wijzigingen gebeuren aan de verwijzing dan moet deze aangepast worden in de data-bestanden. Ook al deze acties moeten opgenomen worden in een logboek 10.3.3. Valideren van de gearchiveerde bestanden a. Gebruik een procedure om na te kijken of alles voldoende is omgezet. De veiligste en meest volledige procedure is om de databank opnieuw te laden in een nieuwe databank en kijken of alle essentiële informatie bewaard is. Maar dit is een intensieve methode. Het is 159 J. Hamish, ADHS Preservation handbook. Relational databases, 2005, p 6. http://ahds.ac.uk/preservation/Relational- Database-preservation-handbook_v1-0.pdf. In de tekst staat <EOF>, maar waarschijnlijk wordt <EOL> bedoeld 160 Zie voetnoot 153 72 ook mogelijk om een aantal tests uit te voeren, zoals ANSI/ISO SQL valideren 161 en controlecijfers te gebruiken b. De data-bestanden kunnen nagekeken worden op aantal kolommen en aantal rijen. Kijk de velden na op vreemde karakters, zoals de lege vierkanten “□”. Kijk de precisie na van de numerieke velden en kijk de conformiteit van de datums na met ISO 8601 11. Conclusie De aanleiding van deze studie was de bevraging over het archiefbeleid van de afdelingen van de Vlaamse overheid. Naar aanleiding van deze bevraging wil de Vlaamse overheid strategieën aanbieden aan de verschillende afdelingen om een bewaarstrategie uit te bouwen voor het digitale archief. In de huidige studie werd een onderzoek gedaan naar de verschillende gangbare strategieën en de verschillende aspecten waarmee rekening moet gehouden worden bij het archiveren van databanken. Uit deze studie blijkt dat het archiveren van databanken een grote uitdaging vormt, vooral bij databanken waar het niet voldoende is om enkel de gegevens te bewaren. Het is duidelijk dat het onderzoek voor het archiveren van de volledige databank (en niet enkel de gegevens) nog in de beginfase bevindt. Het archiveren van databanken stelt de archiefbewaarder voor vier problemen. Van de gearchiveerde informatie moet de machinale raadpleegbaarheid, de visuele raadpleegbaarheid, de begrijpelijkheid en de authenticiteit gegarandeerd worden. Elk van deze eisen vragen specifieke oplossingen. Databanken moeten machinaal raadpleegbaar blijven. De bitstream van gegevens die de databank vormt, moet door een computer geïnterpreteerd kunnen worden, zonder gegevensverlies. Dit vraagt technische oplossingen, zoals specifieke hard- en software die voor langdurige opslag gebruikt wordt maar ook geregelde controle van de opgeslagen databanken aan de hand van een checksum of controlecijfer. Als databanken machinaal raadpleegbaar zijn, moet de software en hardware aanwezig zijn die deze binaire informatie kan omzetten naar menselijk interpreteerbare informatie. Dit niveau van raadpleegbaarheid bereikt men door de oorspronkelijke databanken te migreren naar een open standaard. Zo blijft de garantie op raadpleegbaarheid van de informatie het grootst. In het slechtste geval – bij ontbreken van de juiste software om de binaire gegevens naar zinvolle informatie om te zetten – kunnen de specificaties van het gebruikte migratieformaat ingekeken 161 Bijvoorbeeld de dienst aangeboden door MimerSQL http://developer.mimer.com/validator/index.htm 73 worden en de nodige software geschreven worden. Als databanken in een gesloten bestandsformaat opgeslagen worden, is de raadpleegbaarheid reeds na een decennium zeer onzeker. Net als de machinale raadpleegbaarheid wordt de visuele raadpleegbaarheid ondersteund door bijkomende gegevens, metadata die de te bewaren databank voorzien van noodzakelijke informatie over de software- en hardwareomgeving waarbinnen de databank ontstaan is. Indien een databank visueel raadpleegbaar is, kan de informatie die erin vervat zit voor de archiefgebruiker nog steeds onbegrijpelijk zijn. Een brief kan bijvoorbeeld leesbaar zijn maar de betekenis kan onduidelijk zijn. De begrijpelijkheid van een databank garandeert men door niet alleen een degelijke migratiestrategie te hanteren (waardoor de inhoud en haar gedrag behouden blijft), maar ook door de context ervan te documenteren. Metadata verduidelijken de oorsprong van de databank, de auteur, de organisatie, de relatie met het werkproces waarbinnen het is ontstaan enzovoort. Het zijn essentiële gegevens voor de archiefgebruiker om de functie van de databank te achterhalen. Tenslotte moet ook de authenticiteit van een databank gegarandeerd worden. Een factuur mag dan wel leesbaar en begrijpelijk zijn, maar dat betekent niet dat het een authentiek document is. Een databank is authentiek als het is wat het beweert te zijn. Deze eigenschap bestaat uit twee delen: integriteit en identiteit. Een authentieke databank is integer en dus vrij van ongeoorloofde wijzigingen en heeft een unieke identiteit die het onderscheidt van andere databanken. Authenticiteit wordt gegarandeerd door een ononderbroken beheer van databanken (zowel tijdens de dynamische als tijdens latere levensfasen). Dat beheer steunt op en wordt gedocumenteerd door metadata over de logische integriteit van de databank, de oorspronkelijke bestandsnaam, de vorige beheerders enzovoort. Uit het bovenstaande blijkt dat een nauwe samenwerking tussen de archiefvormer en de archiefbewaarder het fundament vormt van een degelijk digitaal archiefbeheer. Meer dan bij papieren archief is het noodzakelijk om in te grijpen nog vóór de databank ontstaat indien men een efficiënt archiefbeheer wil uitbouwen162. Concreet vertaalt dit zich in enkele technische maatregelen (zoals minimumvoorwaarden die aan databanken gesteld worden) en inhoudelijke afspraken (zoals het opstellen van bewaartermijnen). Het is erg belangrijk om van bij het begin te bepalen of de databank gearchiveerd zal worden. Dan kan men tijdens de creatie rekening houden met het archiveren van databanken, zoals 162 cfr 9. Richtlijnen 74 aangehaald in de Praktische richtlijnen en in het Stappenplan 163. Ook de wettelijke aspecten kunnen een obstakel zijn bij het archiveren van databanken en moeten eerst uitgeklaard worden voor een databank gearchiveerd kan worden. Op dit moment wordt voor kortetermijnbewaring conversie en interoperabiliteit als bewaarstrategie naar voor geschoven. Deze strategieën zijn eenvoudig te implementeren en geven een grote zekerheid van authenticiteit. Als het blijkt dat het nodig is om de databank voor een lange termijn te bewaren, dan is het belangrijk om van bij de ontwikkeling enkele richtlijnen in de gaten te houden. Bijvoorbeeld zou er gebruikt gemaakt kunnen worden van ISO/ANSI SQL of zo weinig mogelijk leverancierspecifieke onderdelen te gebruiken of documentatie maken zowel voor de gebruiker richtlijnen over de invoer of het gebruik van de databank als de documentatie aangemaakt door de ontwikkelaar of een archiefbeheersplan maken met hoe lang een bepaalde databank bewaard moet blijven of wie verantwoordelijk is om de bewaarstrategie te volgen. De meest aangewezen strategie voor langetermijnbewaring is om XML te gebruiken. Bij databanken die te groot zijn om te bewaren in XML, kan er gebruik gemaakt worden van een combinatie van XML, SQL en platte tekst. Binaire informatie die in de databank is opgeslagen moet geëxporteerd worden in een apart bestand. De verwijzing naar de verschillende bestanden wordt opgeslagen in een container bestand, zoals METS-bestand. Het is belangrijk om voldoende metadata op te slaan over een databank bij het archiveren, zowel technische als beschrijvende metadata. Deze studie draagt een aantal minimale metadata elementen naar voor die minstens aanwezig moeten zijn bij het ontwikkelen van een metadata schema voor het archiveren van een databank. Deze lijst moet gezien worden als een minimum, als het nodig is om meer metadata elementen te registreren dan kan de set uitgebreid worden. In de toekomst kan emulatie een belangrijke bewaarstrategie worden als de applicatielaag bewaard moet blijven. 163 9. Richtlijnen en 10. Stappenplan 75 Lijst van figuren Figuur 1: CCSDS 650.0-B-1 Blue Book. Reference Model for an Open Archival Information System (OAIS), Figuur 4-1 p. 4-1. 76 12. Bibliografie Adobe, Adobe XMP: Adding intelligence to media, 2007. http://www.adobe.com/products/xmp/ E. Aerts, Archiefselectie vanuit de statistiek: de steekproef in de archivistiek (Miscellea archivistica. Manuale, 28), Brussel 1998 E. Aerts, The application of Elementary Sampling in the Appraising of Records, in: archive vor der Globalisierung? Beiträge zum Symposion des Nodrhein-Westfälischen Hauptstaatsarchivs in Verbindung mit den Allgemeinen Reichsarchiven in Brüssel (Belgien) und Den Haag (Niederlande) vom 11 bis 13 Semptember 2000 in Düsseldorf (red. M. Blach-veldtrup, O. Dascher & A. Koppetsch), Münster, 2001, p 157-205. http://www.archive.nrw.de/dok/symposion01/Inhalt.html Kevin Ashley, The preservation of databases, VINE: The Journal of Information and Knowledge Management Systems 2004, 34/2, 66-70. BAR - Schweizerisches Bundesarchiv. http://www.bar.admin.ch/ Belgisch Staatsblad, Wet van 30 juni 1994 betreffende het auteursrecht en de naburige rechten. Gewijzigd bij wet van 3 april 1995 houdende aanpassing van de wet van 30 juni 1994 betreffende het auteursrecht en de naburige rechten Belgisch Staatsblad, 31 AUGUSTUS 1998 - Wet houdende omzetting in Belgisch recht van de Europese richtlijn van 11 maart 1996 betreffende de rechtsbescherming van databanken Chris Bizer, D2R Map - Database to RDF Map - Chris Bizer, 2006.http://sites.wiwiss.fuberlin.de/suhl/bizer/d2rmap/D2Rmap.htm Filip Boudrez (2001) Het digitaal archiveringssysteem: beheersinventaris, informatielagen en beslissingsmodel als uitgangspunt, Antwerpen, (DAVID-rapport nr. 4). http://www.expertisecentrumdavid.be/davidproject/teksten/Rapporten/Report3.pdf Filip Boudrez (2003) Een archiveringssysteem voor dynamische en interactieve informatiesystemen http://www.digicult.info/downloads/digicultinfo_issue5_october_2003.pdf Filip Boudrez (2003) Preservation of electronic records from database-driven informationsystems, ErpaWorkshop: Long-term preservation of databases, Bern. http://www.expertisecentrumdavid.be/davidproject/teksten/Presentaties/Information_Erpa_20 03.pdf Filip Boudrez en Hannelore Dekeyser, David, Digitaal archiveren in praktijk. Openbaarheid van bestuur, p 26. http://www.expertisecentrumdavid.be/davidhandboek/index.html Priscilla Caplan, DCC Digital Curation Manual. Instalment on “Preservation Metadata”, 2006. http://www.dcc.ac.uk/resource/curation-manual/chapters/preservation-metadata/ Consultative Committee for Space Data Systems, 650.0-B-1 Blue Book. Reference Model for an Open Archival Information System (OAIS), 2002 CSP GmbH & Co. KG, Chronos, 2007 http://www.chronos.csp-sw.de/?lang=en 77 Cornell University Library, Digital Preservation Management: Implementing Short-term strategies for Long-term probleem, 2003. http://www.library.cornell.edu/iris/tutorial/dpm/eng_index.html DANS, Home | mixed, 2007. http://mixed.dans.knaw.nl/ DANS, Voorpagina (DANS), 2007. http://www.dans.knaw.nl/nl/ DANS, DANS EASY - Electronic Archiving System, 2007. http://easy.dans.knaw.nl/dms Gabriel David, Data Warehouses in the Path from Databases to Archives. International Workshop on Database Preservation (PresDB'07), 2007. http://homepages.inf.ed.ac.uk/hmueller/presdb07/papers/PRESDB_GTD.pdf Patricia Daum, 'Evolving the Records Management Culture: From Ad Hoc to Adherence', The Information Management Journal, 41 (2007/3) 43-49. DDI Alliance, Data Documentation Initiative, 2007. http://www.ddialliance.org Hannelore Dekeyser, Auteursrecht, technische maatregelen en wettelijk depot, 2007. http://www.expertisecentrumdavid.be/docs/Auteursrecht_Digitaal_Archiveren_v2.pdf A.J.M Den Teuling, Archiefterminologie voor Nederland en Vlaanderen, Stichting Archiefpublicaties, ’s Gravenhage, 2003. Digitale Duurzaamheid, Databases, http://www.digitaleduurzaamheid.nl/index.cfm?paginakeuze=341 Dioscuri, Dioscuri - the modular emulator for digital preservation, http://dioscuri.sourceforge.net/ Erpanet Workshop: Long-term Preservation of Databases (9 - 11 April 2003), Bern http://www.erpanet.org/events/2003/bern/index.php eXist, Open source Native XML database, 2007 http://exist.sourceforge.net/ EUR-Lex. Richtlijn 96/9/EG van het Europees Parlement en de Raad van 11 maart 1996 betreffende de rechtsbescherming van databanken. Publicatieblad Nr. L 077 van 27/03/1996, p. 20 – 28. FIPS, Database Language SQL. Federal Information Processing Standards Publication 127-2, 1993. http://www.itl.nist.gov/fipspubs/fip127-2.htm FIPS, Database Language SQL. Federal Information Processing Standards Publication 193, 1995. http://www.itl.nist.gov/fipspubs/fip193.htm Government of Canada, Record Keeping Metadata Requirements for the Government of Canada, 2001. http://www.imforumgi.gc.ca/documents/2001/meta/metatb_e.asp Tom Gruber, Toward principles for the design of ontologies used for knowledge sharing, International Journal of Human-Computer Studies, Vol. 43/4-5, 1995, p. 907-928. J. Hamish, ADHS Preservation handbook. Relational databases, 2005 http://ahds.ac.uk/preservation/Relational-Database-preservation-handbook_v1-0.pdf 78 S. Heuscher, S Jaermann, P. Keller-Marxer en F. Moehle (2004) Providing Authentic Long-term Archival Access to Complex Relational Data, p 1 – 19. http://arxiv.org/abs/cs/0408054. H. Hofman, 2000, Metadata and the Management of Current Records in Digital Form. http://www.ica.org/en/node/30038 P. Horsman e.a., Softwarespecificaties voor Records Management Applicaties voor de Nederlandse Overheid 2004, 95-96. http://www.remano.nl/docs/ReMANO2004.pdf. International workshop on database preservation, 23 maart 2007 http://homepages.inf.ed.ac.uk/hmueller/presdb07/ Peter Keller-Marxer (s.d.) Long-term Archiving of Relational Databases with CHRONOS. CHRONOS compared with SIARD, (niet gepubliceerd). Lee W. Lacy, OWL: Representing Information Using the Web Ontology Language, 2005. T. Leyssens, Preservation Metadata: metadata voor digitale archieven op basis van het OAISinformatiemodel, Bibliotheek- & Archiefgids, 79 (2003/3), p. 15-18. Library of Congress. Data Dictionary for Administrative Metadata for Audio, Image, Text, and Video Content, 2002. http://www.loc.gov/rr/mopic/avprot/extension2.html Library of Congress, EAD: Encoded Archival Description Version 2002 Official Site (EAD Official Site, Library of Congress). http://www.loc.gov/ead/ Library of Congress, Metadata Encoding and Transmission Standard (METS) Official Web Site. http://www.loc.gov/standards/mets/ R. Lorie, The UVC: a Method for Preserving Digital Documents – Proof of Concept, 2002. C. Lupovici en J. Masanès, Metadata for the Long Term Preservation of Electronic Publications (NEDLIB Report Series 2) Amsterdam, 2000) http://nedlib.kb.nl/ H. MacNeil, Trusting Records in a Postmodern World, 2002. http://www3.iath.virginia.edu/sds/macneil_text.htm Microsoft, Access Home Page - Microsoft Office Online, 2007 http://office.microsoft.com/enus/access/ Microsoft, Access-bestanden converteren - Access - Microsoft Office Online. http://office.microsoft.com/nl-be/access/HP051863711043.aspx Microsoft, Microsoft Virtual PC 2007. http://www.microsoft.com/windows/products/winfamily/virtualpc/default.mspx Mimer Information Technology. Mimer SQL Developers - Mimer SQL Validator. http://developer.mimer.se/validator/ MySQL AB, MySQL Migration Toolkit http://www.mysql.com/products/tools/migration-toolkit/ National Archives of Australia, Recordkeeping Metadata Standard for Commonwealth Agencies, 1999. http://www.naa.gov.au/records-management/publications/RKMS.aspx 79 National Library of New Zealand, Metadata Standards Framework. Preservation Metadata (Revised), 2003. http://www.natlib.govt.nz/catalogues/library-documents/preservationmetadata-revised Quyen Nguyen, XML Metadata For Digital Records Archives, 2006. http://2006.xmlconference.org/programme/presentations/79.html NIST, Structured Query Language (SQL). Test Suite, 2003. http://www.itl.nist.gov/div897/ctg/sql_form.htm Csongor Nyulas, DataMaster, 2007. http://protegewiki.stanford.edu/index.php/DataMaster E. Oltmans, ‘Cost Models in Digital Archiving: An Overview of Life Cycle Management at the National Library of the Netherlands’, Liber Quarterly, 14 (2004) p. 380-392. http://webdoc.sub.gwdg.de/edoc/aw/liber/lq-3-04/oltmans.pdf Shelley Powers, Practical RDF, 2003. PREMIS Working Group, Data Dictionary for Preservation Metadata, 2005. http://www.oclc.org/research/projects/pmwg/premis-final.pdf Recordkeeping Metadata Standard for Commonwealth Agencies (1999) http://www.naa.gov.au/Images/rkms_pt1_2_tcm2-1036.pdf RelationalOWL, About: Relational.OWL - v 0.1 beta. http://dbs.cs.uniduesseldorf.de/RDF/docs/ROWLApp/ Research information network, Stewardship of digital research data: a framework of principles and guidelines (Draft for consultation), april 2007, p 9. http://www.rin.ac.uk/data-principles Jeff Rothenberg, Tora Bikson,, Carrying Authentic, Understandable and Usable Digital Records Through Time, 1999. http://www.digitaleduurzaamheid.nl/bibliotheek/docs/final-report_4.pdf SQLX Group, SQLX.org Home Page, 2004. http://www.sqlx.org/ Testbed Digitale Bewaring White Paper. Migratie: Context en huidige stand van zaken, 2001. http://www.digitaleduurzaamheid.nl/bibliotheek/docs/white_paper_migratie.pdf Testbed Digitale Bewaring (2003) Van digitale vluchtigheid naar digitaal houvast. Bewaren van databanken. http://www.digitaleduurzaamheid.nl/bibliotheek/Bewaren_van_databases.pdf TopQuadrant, Inc., Topbraid Composer, 2007. http://www.topbraidcomposer.com/ Unicode Consortium. The Unicode Consortium, 2007. http://www.unicode.org/consortium/consort.html US – Interpares, InterPARES2 Metadata and Archival Description Registry and Analysis System (MADRAS). http://www.gseis.ucla.edu/us-interpares/madras/index.php US - InterPARES Project. Findings on the Preservation of Authentic Electronic Records, 2002, p. 63-69. http://www.gseis.ucla.edu/us-interpares/pdf/InterPARES1FinalReport.pdf J.R. van der Hoeven, R. J. van Diessen en K. van der Meer, 'Development of a Universal Virtual Computer (UVC) for long-term preservation of digital objects', Journal of Information Science, 80 31/3, 2005, p. 196-208. http://dx.doi.org/10.1177/0165551505052347 Jeffrey van der Hoeven, Project emulatie: Dioscuri. http://www.kb.nl/hrd/dd/dd_projecten/projecten_emulatieproject.html Hendrik Vanhees, De juridische bescherming van databanken, Rechtskundig weekblad 19992000, 30, 25 maart 2000, p 1001 – 1018. Remco Verdegem, Database Preservation Issues. Erpanet Workshop Long-term Preservation of Databases, 2003 http://www.digitaleduurzaamheid.nl/bibliotheek/docs/longterm_preservation_of_databases.pdf . Vlaamse regering, Decreet van 26 maart 2004: openbaarheid van bestuur. http://www3.vlaanderen.be/openbaarheid/ Vlaamse regering, Decreet van 26 maart 2004. Openbaarheid van bestuur – Memorie van toelichting http://www3.vlaanderen.be/openbaarheid/document.php?document_id=3 VMWare Inc., VMware: Virtualization, Virtual Machine & Virtual Server Consolidation – Vmware. http://www.vmware.com/ Wikipedia, Extract, transform, load, 2007. http://en.wikipedia.org/wiki/Extract,_transform,_load Wikipedia. American Standard Code for Information Interchange, 2007. http://en.wikipedia.org/wiki/ASCII W3C, World Wide Web Consortium, 2007 http://www.w3.org/ 81