Software beheerportaal

Dit document bevat een overzicht van de software die zorgt dat het beheerportaal werkt. De paragrafen bevatten componenten van het portal en per component is het volgende aangegeven:

Functionaliteit - beschrijving van wat de software doet.

Gebruik – Wie zijn je gebruikers. Hoe doen ze het nu en kunnen ze zelfstandig werken.

Beheerlocatie – locatie waar de software beheerd wordt en waar de documentatie staat, voor beheerder en gebruiker.

Componenten – beschrijving van de hoofdcomponenten waaruit de software bestaat, waaruit je kunt opmaken welke kennis je nodig hebt om deze component te beheren.

Frequentie – Hoe vaak wordt de module gebruikt? Hoeveel beheerwerk zit eraan per maand?

Beheerportaal zelf

Functionaliteit

Zoals de naam zegt is het een portaal om verschillende workflows te beheren. De opzet is analoog aan het gebruik van GitHub actions. Het bevat een mogelijkheid om workflows en workflow-stappen te definiëren. Voor het DSO en de algemene publicatiestraten zijn de volgende workflows ontwikkeld of nog te ontwikkelen.

Afbeelding met tekst, schermopname, Lettertype, document
Overzicht van workflows

Gebruik

Het beheerportaal is in eerste instantie voor de DSO-beheerders maar kan uitgebreid worden voor alle Geonovum-medewerkers.

Binnen Geonovum is een groot scala aan eigen toepassingen, workflows met GitHub-actions enzovoorts. Deze toepassingen zijjn afhankelijk van de deskundigheid van individuele medewerkers. Om deze afhankelijkheid te verminderen willen we dit zoveel mogelijk automatiseren en beschikbaar maken voor de gebruikers die het daadwerkelijk moeten uitvoeren.

Beheerlocatie

Voor het beheerportaal is een eigen beheerportaal-server ingericht. Het is de bedoeling om het beheerportaal in te richten met een app-service. Dit heeft als voordeel dat dit goed aansluit op Azure, wat door Geonovum gebruikt wordt voor identificatie en authenticatie.

Componenten

Het beheerportaal is opgebouwd in twee delen backend en frontend. De gebruikte programmeertaal is TypeScript.

Frequentie

Het beheerportaal wordt nu door diverse gebruikers gebruikt. De bedoeling is, dat het verder uitgerold kan worden als de inlog-procedure geregeld is.

Publicatiestraten

Er zijn drie publicatiestraten:

Afbeelding met tekst, schermopname, software, Webpagina
Uitgebreide informatie over het beheerportaal en de publicatiestraten vind je op https://geonovum.github.io/geen-ReSpec/

word2markdown

Functionaliteit

  • Input is een Word-document gekoppeld aan het sjabloon Respec.dotm.

  • De workflow converteert het Word-document naar ReSpec-markdown volgens de Geonovum ReSpec-template.

  • De workflow maakt een GitHub-repository en een pages-site aan.

Gebruik

Iedereen binnen Geonovum die een Word-document naar markdown wil omzetten kan het gebruiken. Deze conversie is bedoeld voor eenmalig gebruik: als je een Word-document hebt en je wilt dit daarna in ReSpec gaan beheren. Word2markdown is vooral bedoeld voor publicaties waar teams aan samenwerken.

ReSpec heeft extra informatie nodig om te weten hoe de uiteindelijke publicatie eruit moet zien en waar het opgeslagen moet worden. Deze informatie wordt door de gebruiker toegevoegd aan het document met behulp van een sjabloon ReSpec.dotm. Deze bevat een werkbalk waarin alle toegestane ReSpec-functionaliteit is vastgelegd. Denk daarbij aan speciale opties om bijvoorbeeld code-blokken te maken.

Beheerlocatie

De broncode voor het beheerportaal staat op de heheerportaal-server op /home/ubuntu/beheerportaal-repos/word2markdown. Het is de bedoeling dat deze op de app-service volledig gedeployed gaat worden vanuit GitHub.

Componenten

De workflow bevat de volgende componenten:

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • json om de workflow en de workflow-stappen te definiëren.

  • yaml om het action-script te definiëren.

  • vba wordt binnen het word-sjabloon Respec.dotm gebruikt. Een uitgebreide beschrijving van het sjabloon staat in Gebruikershandleiding word2respec.

  • markdown voor het uiteindelijke resultaat.

Frequentie

Er zijn nu twee methoden om de workflow te gebruiken, via een action-script en via het beheerportaal. De workflow op GitHub bevat nog een probleem met betrekking tot het toekennen van gebruikersrechten.

De workflow wordt nu door diverse gebruikers gebruikt, zowel op GitHub als op het beheerportaal. De bedoeling is om over te gaan op het beheerportaal als de inlog-procedure geregeld is.

word2werkversie

Functionaliteit

  • Input is een Word-document gekoppeld aan het sjabloon Respec.dotm.

  • De workflow converteert het Word-document rechtstreeks naar ReSpec-html.

  • De workflow maakt een GitHub-repository en een pages-site aan.

Gebruik

Iedereen binnen Geonovum die een Word-document naar Respec-html wil omzetten kan de workflow gebruiken. Het zet een Word-document om naar ReSpec-html. Bij de omzetting van Word naar Markdown gaat veel Word-functionaliteit verloren. Deze workflow zet alle Word-functionaliteit om naar html-functionaliteit. Samenwerking gebeurt bij deze workflow niet meer in GitHub, maar op de onderliggende word-documenten. Deze variant wordt vooral gebruikt als je een document met veel vormgeving wilt omzetten naar een html-publicatie en deze direct wilt kunnen bekijken. Het zal vooral worden gebruikt om vooraf de uiteindelijke publicatie te zien.

Beheerlocatie

De broncode voor het beheerportaal staat op /home/ubuntu/beheerportaal-repos/word2werkversie. Het is de bedoeling dat deze op de app-service volledig gedeployed gaat worden vanuit GitHub.

Componenten

De workflow bevat de volgende componenten:

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • json om de workflow en de workflow-stappen te definiëren.

  • yaml om het action-script te definiëren.

  • vba wordt binnen het word-sjabloon Respec.dotm gebruikt. Een uitgebreide beschrijving van het sjabloon staat in Gebruikershandleiding word2respec.

  • html en css voor het uiteindelijke resultaat.

Frequentie

Er zijn nu twee methoden om de workflow te gebruiken, via een action-script en via het beheerportaal. De workflow op GitHub bevat nog een probleem met betrekking tot het toekennen van gebruikersrechten.

De workflow wordt nu door diverse gebruikers gebruikt, zowel op GitHub als op het beheerportaal. De bedoeling is om over te gaan op het beheerportaal als de inlog-procedure geregeld is.

word2publicatie

Functionaliteit

  • Input is een Word-document gekoppeld aan het sjabloon Respec.dotm.

  • De workflow bevat een rechtstreekse conversie van Word naar 'snapshot-html'. Dit is de versie die door het snapshot-script in ReSpec wordt gegenereerd, maar dan door een afzonderlijke transformatie.

  • De workflow maakt een GitHub-repository aan.

  • De repository wordt met behulp van een pull-request gesynchroniseerd met test.docs.geostandaarden.nl of docs.geostandaarden.nl.

Gebruik

Als het document klaar is voor publicatie wordt het definitief op de publicatieserver gezet. Daarvoor is deze workflow.

Beheerlocatie

De broncode voor het beheerportaal staat op /home/ubuntu/beheerportaal-repos/word2publicatie. Het is de bedoeling dat deze op de app-service volledig gedeployed gaat worden vanuit GitHub.

Componenten

De workflow bevat de volgende componenten:

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • json om de workflow en de workflow-stappen te definiëren.

  • yaml om het action-script te definiëren.

  • vba wordt binnen het word-sjabloon Respec.dotm gebruikt. Een uitgebreide beschrijving van het sjabloon staat in Gebruikershandleiding word2respec.

  • html en css voor het uiteindelijke resultaat.

Frequentie

Er zijn nu twee methoden om de workflow te gebruiken, via een action-script en via het beheerportaal. De workflow wordt nu zelden gebruikt omdat de locatie op docs.geostandaarden.nl zelden de officiële ReSpec-url is. In veel gevallen moeten verwijzingen naar url’s handmatig aangepast worden.

Overzicht

DSO-overzicht

Functionaliteit

  • Input is een opdracht-pakket dat naar de LVBB wordt geupload.

  • De workflow converteert de bestanden naar twee overzichten: besluit.html en overzicht.html. Bestand besluit.html toont de besluittekst met alle onderliggende ow-objecten als popup. Overzicht toont alle relaties tussen op- en ow-objecten.

  • Output is een zip-bestand van beide bestanden en benodigde css- en mediabestanden.

Afbeelding met tekst, schermopname, software, Webpagina
Voorbeeldbesluit Net op zee IJmuiden

Gebruik

In de tijd dat we voorbeeldbestanden maakten, was het belangrijk dat collega’s konden zien wat er in de ondoorzichtige xml-bestanden stond. Deze workflow is minder relevant geworden nu er minder of geen voorbeeldbestanden worden gemaakt. Voor het uitvoeren van basischecks is het wel handig om de transformatie om te bouwen, zodat het overzichten maakt van download-pakketjes. Deze overzichten kunnen fouten in verwijzingen achterhalen en zichtbaar maken.

Beheerlocatie

De broncode voor het beheerportaal staat op /home/ubuntu/beheerportaal-repos/DSO_overzicht. Het is de bedoeling dat deze op de app-service volledig gedeployed gaat worden vanuit GitHub. De transformatie is ook beschikbaar op repository https://github.com/Geonovum/DSO_overzicht. Bij upload van een opdracht-pakketje wordt een action-script gestart.

Componenten

De workflow bevat de volgende componenten:

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • html en css voor het uiteindelijke resultaat.

Frequentie

De huidige workflow op basis van opdracht-sets wordt niet meer gebruikt. Op basis van downloadpakketjes zou dit voor de validatiecheck een handig hulpmiddel zijn om te controleren of op- en ow-objecten onderling goed verwijzen.

Presentatiemodel

Naast de waardelijsten is het presentatiemodel in beheer bij Geonovum. Er is een relatie tussen beide beheertaken omdat symbolisatie lijn, punt en vlak een eigenschap van een waarde is. Het web-formulier ‘Muteren waardelijsten’ helpt bij het toekennen van symboolcodes aan een waarde.

Afbeelding met tekst, schermopname, software, nummer
De weergave in de viewer wordt bepaald door de symboolcode in het web-formulier ‘Muteren waardelijsten’

Muteren

Deze workflow is (nog) niet uitgewerkt. In de praktijk is het presentatiemodel statisch. De bestanden staan in repository https://github.com/Geonovum/DSO_symbolenbibliotheek/tree/main. Het presentatiemodel bestaat uit de bestanden in map sld.

De methodiek voor het vastleggen van type lijn, punt, vlak en kleur is generiek van aard. De kans is groot dat handmatige aanpassingen afwijken van de methodiek. Daarom is het van belang dat wijzigingen geautomatiseerd doorgevoerd worden. In het verleden is er een fout in het presentatiemodel geslopen die heel moeilijk te repareren was.

Publiceren

Functionaliteit

  • Input is een zip-bestand met aangepaste sld-bestanden.

  • De workflow bevat een transformatie applicatie.xsl dat twee bestanden genereert: symbolisatie.xml en voorwaarden.xml. Het web-formulier ‘Muteren waardelijsten’ gebruikt deze bestanden om suggesties te doen voor de beschikbaarheid van symboolcodes bij het toevoegen en wijzigen van waarden.

  • De workflow bevat twee transformaties symbolisatie.xsl en waardelijsten.xsl om de inhoud van de sld’s te visualiseren op basis van de laatste versie van de waardelijsten.

  • De bestanden worden geplaatst op repository DSO_symbolenbibliotheek.

Gebruik

  • Beheerders kunnen wijzigingen in de sld’s doorvoeren in het web-formulier ‘Muteren waardelijsten’ door de bestanden symbolisatie.xml en voorwaarden.xml te vervangen.

  • Beheerders kunnen visualisaties maken van de inhoud van de sld’s op basis van de laatste versie van de waardelijsten.

Beheerlocatie

Bestanden voor het beheerportaal staan op /home/ubuntu/beheerportaal-repos/DSO_symbolenbibliotheek. Het is de bedoeling dat deze op de app-service volledig gedeployed gaat worden vanuit GitHub.

Componenten

De workflow bevat de volgende componenten:

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • json om de workflow en de workflow-stappen te definiëren.

Frequentie

Afgesproken is om publicaties van het presentatiemodel niet publiek toegankelijk te maken. Hierdoor wordt voorkomen dat gebruikers kiezen op grond van de gewenste vorm in plaats van de inhoudelijke betekenis. Beheerders kunnen na wijziging van de waardelijsten nieuwe actuele overzichten genereren.

Waardelijsten

De workflow voor het muteren, exporteren en publiceren van waardelijsten moeten in volgorde worden uitgevoerd. De output van de ene deel-workflow is de input van de andere deel-workflow.

Vooraf worden de mutaties ingevoerd in het web-formulier 'Waardelijsten muteren' en toegevoegd aan bestand mutaties.xml. Dit bestand bevat alle mutaties die periodiek worden goedgekeurd en doorgevoerd en is uiteindelijk de input voor de workflows.

Het web-formulier staat nu nog op de Synology-NAS, maar wordt uiteindelijk ingeboouwd in het beheerportaal. Gebruikte technieken in het web-formulier zijn JQuery/AJAX in combinatie met PHP.

Afbeelding met tekst, schermopname, software, Computerpictogram
Opbouw van het web-formulier

Muteren

Functionaliteit

  • Input is bestand mutaties.xml.

  • Mutaties.xml wordt doorgevoerd op de bestanden in repository https://github.com/Geonovum/DSO_waardelijsten/tree/main/archief.

  • De workflow maakt twee bestanden: waardelijsten.xml en informatie.txt in bestand output.zip. Waardelijsten.xml bevat de nieuwe versie en informatie.txt bevat de release notes.

Gebruik

  • De workflow is alleen voor DSO-beheerders. Op het beheerportaal moet het identificatie- en autorisatiebeheer nog geregeld worden. Dit gaat uiteindelijk gebeuren met Azure.

  • We hebben de transformaties ook op GitHub action-scripts, maar dit leverde veel problemen met verlopen keys op. Sinds versie 4.2.1 is de gebruikelijke werkwijze met behulp van het beheerportaal. De beheerders hebben toegang.

Beheerlocatie

Bestanden voor het beheerportaal staan op /home/ubuntu/beheerportaal-repos/DSO_waardelijsten. Het is de bedoeling dat deze op de app-service volledig gedeployed gaat worden vanuit GitHub.

Componenten

De workflow bevat de volgende componenten:

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • json om de workflow en de workflow-stappen te definiëren.

Frequentie

De waardelijsten worden periodiek (maandelijks) gemuteerd.

Exporteren

De manier waarop data in de stelselcatalogus wordt opgeslagen, is uiterst complex. Het exportbestand bevat niet alleen de laatste versie ven de waardelijsten maar alle versies van de waardelijsten. Daardoor groeit de omvang van het exportbestand. Op verzoek van de stelselcatalogus blijft dit zo ondanks de omvang, omdat ze in geval van een crash eenvoudig opnieuw de waardelijsten volledig kunnen inlezen.

Functionaliteit

  • Input is bestand output.zip uit de workflow Mutatie in paragraaf 6.1. Het zip-bestand bevat twee bestanden waardelijsten.xml en informatie.txt.

  • De workflow maakt een tijdelijk bestand export.xml en een definitief bestand export.json. Het bevat alle waardelijsten die in de stelselcatalogus worden weergegeven.

  • Twee versies van de export worden op de harvest-locatie op https://register.geostandaarden.nl/waardelijst/imow/ geplaatst.

Afbeelding met tekst, schermopname, software, Computerpictogram
Overzicht van de harvest-locatie

Gebruik

  • De workflow is alleen voor DSO-beheerders. Op het beheerportaal moet het identificatie- en autorisatiebeheer nog geregeld worden. Dit gaat uiteindelijk gebeuren met Azure.

  • We hebben de transformaties ook op GitHub action-scripts, maar dit leverde veel problemen met verlopen keys op. Sinds versie 4.2.1 is de gebruikelijke werkwijze met behulp van het beheerportaal. De beheerders hebben toegang.

  • De stelselcatalogus controleert elke twee uur of er een nieuwe versie van de waardelijsten staat. Let erop dat er altijd een bestand export.json staat. De stelselcatalogus krijgt een foutmelding als deze ontbreekt.

Beheerlocatie

Bestanden voor het beheerportaal staan op /home/ubuntu/beheerportaal-repos/DSO_waardelijsten. Het is de bedoeling dat deze op de app-service volledig gedeployed gaat worden vanuit GitHub.

Componenten

De workflow bevat de volgende componenten:

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • json om de workflow en de workflow-stappen te definiëren. Daarnaast wordt json gebruikt als uitwisselingsformaat met de stelselcatalogus.

Frequentie

De waardelijsten worden periodiek (maandelijks) geëxporteerd.

Publiceren

Functionaliteit

  • Input is bestand output.zip uit de workflow Mutatie in paragraaf 6.1. Het zip-bestand bevat twee bestanden waardelijsten.xml en informatie.txt.

  • De workflow maakt drie verschillende versies van de waardelijsten aan ten behoeve van import door diverse softwareleveranciers. Het gaat om de bestandsformaten xml, json en xlsx. Daarnaast wordt een download-pakket klaargezet als zip-bestand.

  • De workflow plaatst de output-bestanden in de repository https://github.com/Geonovum/TPOD-waardelijsten. Nu wordt het nog handmatig klaargezet als service-product op de website.

Gebruik

  • De workflow is alleen voor DSO-beheerders. Op het beheerportaal moet het identificatie- en autorisatiebeheer nog geregeld worden. Dit gaat uiteindelijk gebeuren met Azure.

  • We hebben de transformaties ook op GitHub action-scripts, maar dit leverde veel problemen met verlopen keys op. Sinds versie 4.2.1 is de gebruikelijke werkwijze met behulp van het beheerportaal. De beheerders hebben toegang.

  • De bestanden worden als service-product op de Geonovum-website geplaatst. Dit gebeurt nu nog handmatig, maar dit kan ook als automatische deploy.

Beheerlocatie

Bestanden voor het beheerportaal staan op /home/ubuntu/beheerportaal-repos/DSO_waardelijsten. Het is de bedoeling dat deze op de app-service volledig gedeployed gaat worden vanuit GitHub.

Componenten

De workflow bevat de volgende componenten:

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • json om de workflow en de workflow-stappen te definiëren. Daarnaast wordt json gebruikt als uitwisselingsformaat met de stelselcatalogus.

Frequentie

De waardelijsten worden periodiek (maandelijks) gepubliceerd.

Toepassingsprofiel

Opslaan

Functionaliteit

  • Input is een word-bestand, gebaseerd op sjabloon ‘TPOD sjabloon.dotm’. Dit sjabloon voegt alle benodigde metadata toe aan het word-bestand.

  • De workflow splitst het word-bestand in tekstfragmenten en maakt een bestand manifest.xml waarin de opbouw van het word-bestand is vastgelegd.

  • De workflow plaatst de output-bestanden in de repository https://github.com/Geonovum/tpod-beheer/tree/main/archief.

Gebruik

  • De workflow is alleen voor DSO-beheerders. Op het beheerportaal moet het identificatie- en autorisatiebeheer nog geregeld worden. Dit gaat uiteindelijk gebeuren met Azure.

  • Voorheen was het zo dat wijzigingen in alle toepassingsprofielen doorgevoerd werden. Dit leidde tot inconsistenties. De opzet is nu dat wijzigingen in een basistekst worden bijgehouden waarna ze worden geëxporteerd naar alle overige toepassingsprofielen. Dit laatste wordt uitgevoerd door de workflow ‘Samenvoegen’ in paragraaf 7.2.

Beheerlocatie

De werkwijze met splitsen en samenvoegen van toepassingsprofielen is op dit moment niet ingeregeld met workflows. Ook deze workflows zullen toegevoegd worden aan het beheerportaal. De transformaties voor het splitsen en samenvoegen staan op repository https://github.com/Geonovum/tpod-beheer. Hier staat ook een uitgebreide beschrijving.

Componenten

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • json om de workflow en de workflow-stappen te definiëren. Daarnaast wordt json gebruikt als uitwisselingsformaat met de stelselcatalogus.

Frequentie

Deze workflow is vooral van toepassing bij:

  • een grote wijziging voor alle toepassingsprofielen,

  • een toepassingsprofiel voor een nieuw instrument.

De huidige aanpassingen worden meestal gedaan in het onderliggende word-document, in beheer bij Nienke. Hierop wordt de rhino-transformatie toegepast.

Samenvoegen

Voor de invoer staat op de Synology-NAS een web-formulier. Na invullen levert dit een bestand manifest.xml op dat de structuur van de nieuwe versie van een toepassingsprofiel of een volledig nieuw toepassingsprofiel vastlegt. Het web-formulier ‘Toepassingsprofiel samenstellen’ wordt onderdeel van het beheerportaal.

Afbeelding met tekst, schermopname, software, Computerpictogram
Web-formulier voor het samenstellen van een nieuw toepassingsprofiel

Functionaliteit

  • Input is bestand manifest.xml. Dit is het resultaat van web-formulier ‘Toepassingsprofiel samenstellen’.

  • De workflow voegt de tekstfragmenten in repository https://github.com/Geonovum/tpod-beheer/tree/main/archief samen op basis van manifest.xml. Het resultaat is een word-bestand van het toepassingsprofiel.

Gebruik

  • De workflow is alleen voor DSO-beheerders. Op het beheerportaal moet het identificatie- en autorisatiebeheer nog geregeld worden. Dit gaat uiteindelijk gebeuren met Azure.

  • Voorheen was het zo dat wijzigingen in alle toepassingsprofielen doorgevoerd werden. Dit leidde tot inconsistenties. De opzet is nu dat wijzigingen in een basistekst worden bijgehouden waarna ze worden geëxporteerd naar alle overige toepassingsprofielen. Dit laatste wordt uitgevoerd door de workflow ‘Samenvoegen’ in paragraaf 7.2.

  • Het is nog wel nodig om in het samengevoegde document te controleren of er foute verwijzingen zijn opgetreden. Dit kan gebeuren als de tekst waarnaar wordt verwezen niet in het document is opgenomen.

Beheerlocatie

De werkwijze met splitsen en samenvoegen van toepassingsprofielen is op dit moment niet ingeregeld met workflows. Ook deze workflows zullen toegevoegd worden aan het beheerportaal. De transformaties voor het splitsen en samenvoegen staan op repository https://github.com/Geonovum/tpod-beheer. Hier staat ook een uitgebreide beschrijving.

Componenten

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • json om de workflow en de workflow-stappen te definiëren. Daarnaast wordt json gebruikt als uitwisselingsformaat met de stelselcatalogus.

Frequentie

Deze workflow is vooral van toepassing bij:

  • een grote wijziging voor alle toepassingsprofielen,

  • een toepassingsprofiel voor een nieuw instrument.

De huidige aanpassingen worden meestal gedaan in het onderliggende word-document, in beheer bij Nienke. Hierop wordt de rhino-transformatie toegepast.

Publiceren

Toepassingsprofielen kunnen we niet met ReSpec publiceren omdat de koppenstructuur afwijkt. We hebben in een toepassingsprofiel op het hoogste niveau een indeling in modulen met A, B, C, … De workflow heeft daarom de naam ‘rhino’ gekregen, wat staat voor ‘ReSpec-html in name only’. Daarnaast wordt er extra SEO-informatie toegevoegd.

Afbeelding met tekst, schermopname, software, Computerpictogram
De SEO-informatie zoals dat in het toepassingsprofiel Projectbesluit staat

Functionaliteit

  • Input is een Word-document gekoppeld aan het sjabloon ‘TPOD publicatie.dotm’. Let erop: voor het maken van een toepassingsprofiel wordt sjabloon ‘TPOD sjabloon.dotm’ gebruikt.

  • De workflow bevat een rechtstreekse conversie van Word naar html.

  • De workflow maakt een GitHub-repository aan.

  • De repository wordt met behulp van een pull-request gesynchroniseerd met test.docs.geostandaarden.nl of docs.geostandaarden.nl.

Gebruik

Als het document klaar is voor publicatie wordt het definitief op de publicatieserver gezet. Daarvoor is deze workflow.

Beheerlocatie

De broncode voor het beheerportaal staat op /home/ubuntu/beheerportaal-repos/tpod-publicatie. Het is de bedoeling dat deze op de app-service volledig gedeployed gaat worden vanuit GitHub.

Componenten

De workflow bevat de volgende componenten:

  • ant wordt gebruikt om de verschillende processen aan te sturen. Denk daarbij aan het maken van (tijdelijke) mappen en het starten van de transformaties.

  • xslt voor het uitvoeren van de transformaties. Dit is xslt 2.0 met behulp van de Saxon-processor. Let erop dat elk jaar de licentie vernieuwd moet worden. De benodigde libraries en de licentie staan in map lib.

  • json om de workflow en de workflow-stappen te definiëren.

  • vba wordt binnen de word-sjablonen ‘TPOD sjabloon.dotm’ en ‘TPOD publicatie.dotm’ gebruikt.

  • html en css voor het uiteindelijke resultaat.

Frequentie

De rhino-transformatie wordt regelmatig gebruikt. De workflow is noodzakelijk bij iedere update van de toepassingsprofielen.