• No results found

Standarder FGS:eroch deras tekniska regelverk

N/A
N/A
Protected

Academic year: 2022

Share "Standarder FGS:eroch deras tekniska regelverk"

Copied!
41
0
0

Loading.... (view fulltext now)

Full text

(1)

FGS:er och deras tekniska regelverk

Karin Bredenberg, FGS funktionen

Standarder

(2)

Standarder

• Det finns många standarder och ingen bild med alla på…

• Det finns inte heller någon standard som gäller för allt…

3

Lilla XML-familjen

(3)

XML Standarder (2003) men fortfarande aktuell

http://www.daisy.org/samples/daisypedia/bigpix.html 5

Kombinera XML-familjens medlemmar

(4)

Metadata standarder

• http://jennriley.com/metadatamap/

7

Mål: Skapa en svensk profil inte en ny standard

(5)

Se det så här

• Utgångsläget är en

internationell standard och dess utbytesformat

• (Det skapas en EU profil)

• Det skapas en nationell profil

• Det skapas en lokal profil

9

I systemen som sedan tar emot

• Finns inget i standarderna som säger hur systemen ska hantera informationen som överförs

• Finns inget i FGS:erna som säger hur systemen ska

(6)

eXtensible Markup Language aka.

XML

11

XML

• Så att vi använder samma begrepp kommer en snabb genomgång/repetition

• https://www.w3.org/TR/2006/REC-xml11-20060816/

• https://www.w3.org/TR/1998/REC-xml-19980210

• En mogen 20 åring!!!

(7)

Allra första raden

• <?xml version="1.0" encoding="UTF-8"?>

eller

<?xml version="1.0" encoding=”ISO-8859-1"?>

• Är XML deklarationen

• Talar om version samt teckenkodning

• UTF-8 = Unicode Transformations Format åtta-bitars

• ISO-8859-1 = Latin-1/West European character set

13

Ett XML-dokuments innehåll

• Första raden XML

• <note> eller <mets:mets> eller <ead> osv.

• Rotelementet i dokumentet. Dvs. vad är jag, vad beskriver jag

• Rader emellan

(8)

Regler 1(2)

• Allt som har en början måste ha ett slut!

<start>Min start har ett slut men det heter start</start>

• Skiftlägeskänsligt, name, Name och NAME tre olika element.

• Nästling måste avslutas på rätt sätt.

Rätt <text><fetStil>fetstils text</fetStil></text>

Fel <text><fetStil>fetstils text</text></fetStil>

• Det måste finnas ett rot-element. Någon som är förälder till alla följande element.

• Attribut värden skrivs inom ”” eller ’’

15

Regler 2(2)

• Vissa tecken har en speciell mening och måste skrivas med en entitets referens istället.

&lt; < less than

&gt; > greater than

&amp; & ampersand

&apos; apostrophe

&quot; quotation mark

• Kommentarer har sitt eget skrivsätt

<!-- Detta är en kommentar-->

• Mellanslag (White-space) bevaras.

Skriver man 10 mellanslag är det tio mellanslag.

(9)

Element

• Kan innehålla andra element

• Kan innehålla text

• Kan innehålla båda

• Kan ha attribut

• Namnregler för element:

Kan innehålla bokstäver, siffror och andra tecken Kan inte börja med nummer eller skiljetecken Kan inte börja med bokstäverna xml

Kan inte innehålla mellanslag

17

Attribut

• Extra/utökande information

Innehåller ofta något som inte är del av datat men kan vara viktigt för den som ska manipulera datat

• Måste ha ”” eller ’’

(10)

Well-formed XML

• Följer reglerna och har korrekt XML syntax

• Repetition -Rotelement -Sluttagg -Skifteskänslig -Nästlade på rätt sätt -Attribut med ”” eller ’’

19

Validerad XML

• Well-formed

• Följer och uppfyller regler i en dtd eller ett schema (avsett schematyp)

(11)

XML-schema

21

Scheman

• XML-schema samt Relax NG i sina två smaker (DTD)

• https://www.w3.org/XML/Schema

• http://www.relaxng.org/

(12)

Vad är Schemat?

• Oavsett XML-schema, Relax NG, DTD gäller att det är:

• Regeluppsättningen som styr vilka element och attribut som är tillåtna i XML-dokumentet

• Anger kardinalitet

• Kan ange värdelistor

23

Dvs. XML-schemat definierar:

• Element som kan finnas i ett dokument

• Attribut som kan finnas i ett dokument

• Vilka element som är barnelement

• Ordningen på barnelement (eventuell ordning)

• Antal barn element

• Om ett element är tomt (endast innehåller barn eller attribut) eller kan innehålla text och barn eller attribut

• Datatyp för element och attribut

• Förvalda eller fixerade värden för element och attribut

(13)

Kardinalitet

25 Relax NG

XML-schema (+DTD) FGS

XML-schema

• Och så är det ju en hel massa mer men ni ska i undantagsfall utveckla scheman så vi går vidare redan nu med annat

(14)

Schematron

27

Schematron

• Scheman kan dock inte hantera alla typer av önskade valideringar

• Schematron är regler som ej går att uttrycka med ett schema dvs du kan med hjälp av regler testa element, attribut och innehåll på ett mer explicit sätt

• Kräver en Schematron processor för att fungera

• Är en ISO standard, ISO/IEC 19757-3

• http://schematron.com/

(15)

Snabbkurs Schematron?!

• Ska vi hoppa över de kommande bilderna?

-Näe, vi behöver en gemensam grund och gemensamma begrepp

29

Snabbkurs i Schematron 1(5)

• Assertions – det som ska testas samt beskrivning av förhållande/läge/status som man vill få vetskap om

• Messages – vad du får tillbaka när ett test lyckas eller misslyckas

• Rules – testerna samlas i regler som gäller för specifika XML

(16)

Snabbkurs i Schematron 2(5)

31

Snabbkurs i Schematron 3(5)

(17)

Snabbkurs i Schematron 4(5)

33

Snabbkurs i Schematron 5(5)

(18)

Anpassningar

35

Vi har en FGS

• Vi ska anpassa standarden till en FGS:en för vår nationella användning alt. en lokal anpassning

• Vad behöver göras?

• Ett dokument som beskriver anpassningen:

• [Ansvarig för anpassningen] av FGS [Informationstyp] för [Syfte och användningsområde för anpassningen]

• Valideringsregler som följer anpassningen

• En ändrad regeluppsättning till exempel ett ändrat XML-schema

(19)

Textdokument

• Fokuserar vi inte på nu

• Vi tittar på anpassningarna av valideringsreglerna

37

Anpassningar i Schema

(20)

Anpassningar

• Olika möjligheter

• Bra och dåliga….

• Här fokus på XML-schema men motsvarande finns i Relax NG

• Jag använder scheman från FGS:erna som exempel; FGS Paketstrukturs METS XML-schema, FGS Arkivredovisning

(Verksamhetsbaserad)’s EAC-CPF XML-schema, Draft (utkast) för ERMS

39

Ändra kardinalitet

optional or required or prohibited

0 or 1 or another number

0 or unbounded or a number

(21)

Tillgängliga restriktioner för datatyperna

41

Attributvärdelista

(22)

Elementvärdelista

43

Bättre lösning för värdelistor och kardinalitet

• Att implementera Schematron så man inte påverkar original scheman från standarderna

• Håller på att bli rekommendationerna från standardgrupperna

• Värdelistor går att hämta från externa källor, till exempel som EAD3 hämtar landskoder

(23)

Schemat i sig tillåter 1(10)

• Att lägga till egna attribut från valfritt schema

• Det egna attribut schemat (ser ut som vilket schema som helst…)

45

Schemat i sig tillåter 2(10)

• Att lägga till egna element via att det finns ett element som ”skapar”

ett nytt element (elementen kan heta vad som helst och se ut hur som helst)

(24)

Schemat i sig tillåter 3(10)

• Mer kod

47

Schemat i sig tillåter 4(10)

• Än mer kod

(25)

Schemat i sig tillåter 5(10)

• Binär data (elementet kan heta vad som helst)

49

Binär data aka. Base64

• Base64 är ett format som endast innehåller tecknen: A-z, a-z, 0-9 samt + och / där = används som en speciell suffix kod.

• Filkonverteringen medför att den konverterade filens storlek ökar med cirka 1/3. Alltså kommer XML-dokumentets totala storlek om man bäddar in alla filer att bli summan av filernas storlek gånger en och en

(26)

Schemat i sig tillåter 6(10)

• XML-data (elementet kan heta vad som helst)

51

Schemat i sig tillåter 7(10)

• Anpassning? Referering till en annan fil tex XML dokument.

• Elementet kan se ut hur som helst och heta vad som helst

(27)

Schemat i sig tillåter 8(10)

53

Schemat i sig tillåter 9(10)

(28)

Schemat i sig tillåter 10(10)

• Extra från FGS Paketstruktur

55

Anpassningar i Schematron

(29)

Anpassningar/regler i Schematron

• Att anpassa med sina egna regler gör man i ett eget Schematron- Schema/dokument

• Repetition

• Det går att göra avancerade regler som behöver uppfyllas för den egna anpassningen

• Det går att säga att om värdet i detta element/attribut är ”X”

måste detta element/attribut finnas

57

De egna Schematron reglerna

(30)

Att utöka antalet Schematron anpassningar/regler

• I detta exempel utökas de regler som finns i EAD3 med FGS:ens regler

• I detta exempel utökas FGS:ens regler samt EAD3 reglerna med den egna anpassningens regler

59

Hur ser anpassningarna ut i

XML-dokumenten?

(31)

Att implementera anpassningarna i XML- dokumentet

• Vi använder METS, EAD3 och EAC-CPF som exempel

61

Attributsvärdelista i METS

• Användningen ser ut så här Värdelistan använd

(32)

Elementvärdelista i EAC-CPF

• Användningen ser ut så här

63

Värdelistan använd

Egna attribut i METS 1(2)

• För att underlätta:

• Men, går givetvis att anropa schemat där det används

(33)

Egna attribut i METS 2(2)

• I XML ser det ut så här

65

Egna element i draft ERMS 1(3)

• Ett element med värde samt ett attribut

(34)

Egna element i draft ERMS 2(3)

• Ett element med värde samt ett attribut samt ett underelement

67

Egna element i draft ERMS 3(3)

• Ett element med flera element av samma typ

(35)

Binary64 i METS

• Man kan koda om filer till Base64

69

Egen XML i METS 1(3)

• För att underlätta

(36)

Egen XML i METS 2(3)

• För att underlätta ser i XML ut så här

71

Egen XML i METS 3(3)

• Går även att där man vill använda den andra XML-en att anrop schemat och det ser i XML-en ut så här

(37)

Referera till en fil 1(2)

• Olika mängd information till en filreferens följande FGS Paketstruktur

73

Referera till en fil 2(2)

• Filreferenser följande EAD3

(38)

Att använda Schematron 1(4)

• Att implementera användningen av Schematron kräver implementering och användning av en Schematron processor

• Ser olika ut i alla programmeringsspråk

• Fungerar ibland direkt i en XML-editor (oXygen vet jag om)

75

Att använda Schematron 2(4)

• När använder Relax NG

(39)

Att använda Schematron 3(4)

• När använder XML-schema

77

Att använda Schematron 4(4)

• Validering visar egna meddelanden (från oXygen)

(40)

Källor

79

Källor

• Vissa ihop med sin bild annars:

Introduktion till förvaltningsgemen-samma specifikationer (FGS)

Beginning XML, 4th Edition (Programmer to Programmer), David Hunter, ISBN 0470114878 / 9780470114872

XML Family of Specifications – A Practical Guide, Kennet B. Sall, ISBN 0-201-70359-9

http://www.mulberrytech.com/papers/schematron-Philly.pdf

https://cryptii.com/binary/base64

(41)

Tack för uppmärksamheten!

Karin Bredenberg

ra-fgs@riksarkivet.se

References

Related documents

• Är generella specifikationer som bara innehåller element för den information som är vanligast förekommande för respektive informationstyp.. FGS:erna

• I detta exempel utökas FGS:ens regler samt EAD3 reglerna med den egna anpassningens

• Två delredovisningar för uppdraget har lämnats in till regeringskansliet i enlighet med regleringsbreven för 2017 och 2018.. Dessa finns

För att skapa SIARD-filen är det ett fåtal uppgifter som användaren behöver ange manuellt: Det handlar till exempel om datum för uttaget, vem som skapat SIARD-filen, klient för

FGS:en för paketstruktur är avsedd att specificera paketstrukturen för ett digitalt paket och de metadata som krävs för överföring till ett e-arkiv.. Den är avsedd att

organisatorisk enhet samt person medan det egenutvecklade formatet används för att beskriva informationen om anställning samt arbetstagare.. Informationen från var och en av de

• Vid upphandling av nya system ska man ha med i kravställningen att systemet ska kunna importera respektive exportera information i enlighet med den egna lokala anpassningen

11.4 Om förarstol avsedd för säkerhetsbälte av minst fempunktstyp (sexpunktstyp rekommenderas) är monterad skall denna vara av FIA certifiering min 8855-1999 alt. min SFI