MAGDA standaarden & richtlijnen

Slides:



Advertisements
Verwante presentaties
SQL deel 2: datamodel ontwerp
Advertisements

14 juni 2011 Infomoment georganiseerd door het Toelichting bij het aanvragen en afrekenen van creatie- en spreidingsdossiers door Machteld De Smedt (Vlaamse.
Coördinatiecel Vlaams e-government DIA 1 geGIS – Open Source GIS omgeving voor de Vlaamse overheden geGIS – generiek GIS Lieven Raes, adviseur communicatie.
Special Interest Group SIG EduStandaard ES Werkgroep Metadata WG MD maart 2013 Mogelijk gemaakt door:
Carenet End of Life => Migratie Ziekenhuizen
Registratie van de TDI-variabelen met de Registratiemodule van het Technisch Platform Versie Rue Juliette Wytsmanstraat 14 | 1050 Brussels |
Coördinatiecel Vlaams e-government Slide 1 Geo-webservices voor de uitwisseling van ruimtelijke uitvoeringsplannen (RUP’s) & BPA’s CRAB / VBKO update ketting.
E-RADEN Roadmap. AGENDA • Overzicht van nieuwe ontwikkelingen 2009 • Interfaces • Document Types : Meta-data • E-raden gratis ? • Perspectieven.
Metadata proces april 2009 train de trainers. Waar in het werkproces metadata Binnen de organisatie zal afgesproken moeten worden van welke data er metadata.
DHO Technische Architectuur
Digitaal Sociaal Huis 21 januari Agenda VanTot 12u13uBroodjes en koffie 13u13u45VERA : Operationele impact perceel 1 13u4514u15CORVE : Stand van.
Electronic Resource Management (ERM) Els Schaerlaekens Anet Gebruikersdag 15 juni 2011.
Dienstencatalogus 24 november Programma Wat is een productencatalogus Alle componenten op een rij – De generieke informatie – De specifieke informatie.
Edison en de toekomst INTERNET E-loket. Algemeen overzicht n Schooldirect n Schooldirect en de Edison-helpdesk n in Edison (Route400) n.
Vlaamse Patiënten Peiling Praktische aspecten 26 april 2013.
Weddeschalen & Weddebijslagen
voor financiële rapportages
Entiteit-Relatie Model
1 eGov binnen Beleidsdomein RWO Toekomstvisie. 2 Overzicht Informatief – Passief – Actief Toepassing geoloketten Toepassing URBAIN-2 / Digitale bouwaanvraag.
Kwaliteit en betrouwbaarheid van simulaties ir. Rudolf van Mierlo Efectis Nederland BV.
Coördinatiecel Vlaams e-government De VKBO als instrument voor het uitbouwen van een integrale dienstverlening voor ondernemingsgegevens in de overheidssector.
Standard Business Reporting Presentatie voor Financial Systems 6 juni 2012.
Metadata uitwisselschema project Ellen Mulder Digiframe
Phoenix Contact ILC150ETH F. Rubben, Ing.. Phoenix Contact ILC150ETH F. Rubben, Ing.
Over dingen die voorbijgaan Richard Philips Anet Gebruikersdag 15 juni 2011.
HANDLEIDING: REGISTREREN VAN VACCINATIES Q-KOORTS
PLDA – Connectiviteit Rudolf de Schipper Geoffroy Fauveaux 09/11/2004.
1 Het probleem RO Milieu Landbouw SocZekerheid Etc. LerenWerkenWonenPensioenEtc. Overheids- organisatie Burger ??? Regelgeving per domein Vraag op levensmoment.
DISCIMUS. DISCIMUS 1.0  De doelstelling van Discimus 1.0 is : de bouw van een centraal systeem :  dat in- en uitschrijvingen registreert vanaf inschrijvingsperiode.
Dia 1 Productencatalogus Samen beter informeren. dia 2 Wat is Productencatalogus? Uitwisselingssysteem voor overheidsinformatie.
Introductie 28/07/2014 Digitaal Archief Vlaanderen.
IMBIT, 18_04_2012.
DHO – Web Services Resultaten
Productencatalogus Samen beter informeren. Wat is de Productencatalogus? Uitwisselingssysteem voor overheidsinformatie.
Presentatie Studiemiddag Indexen en Nadere Toegangen Ralph Stuyver, Projectmanager 4 maart 2010.
Coördinatiecel Vlaams e-government 1 van 18 april 2006 CORVE / EDS-T VKBO Web Services Mark Draeck, VICC
Introductie/Agenda 1 Cor Verbaas 1.Business Analist. 2.Werkzaam bij AEP sinds juni Verantwoordelijk voor de business applicaties binnen AEP. 4.MFGPro.
MAGDA – Huidige VKBO Dienstenverlening
Dia 1 Productencatalogus: technische sessie Samen beter informeren.
Dia 1 Productencatalogus: Infosessie provinciale en lokale besturen 24/11/11.
Coördinatiecel Vlaams e-government Slide 1 Workshop e-idee Hartelijk welkom!
Coördinatiecel Vlaams e-government 16/09/2014 Studie Interbestuurlijk e-government... één jaar later Coördinatiecel Vlaams e-government (CORVE) Web:
Coördinatiecel Vlaams e-government Slide 1 Stellingen workshop digitale stedenbouwkundige vergunningen.
Minicollege Service Oriented Architecture
Dematerialisatie, toegang tot info en versturen van digitale rapporten Marie VERKAEREN Afdeling Milieupolitie en Bodems Departement Identificatie van verontreinigde.
De juridische context van de digitale factuur.
22 oktober 2014 NIEUWE STRUCTUUR VOOR REGISTRATIE ADRES M. Ruymen.
Gemeentelijke GIS-verplichtingen
ArchiValue: de APG-Case
Coördinatiecel Vlaams e-government 1 Interbestuurlijke producten en dienstencatalogus November 2009: concept en stand van zaken.
E-invoicing – Juridische spelregels Korneel Decroix/Wouter Claes Advocaten Algemene titel/welkomslide.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Ontmoeting softwareleveranciers scholen – donderdag 8 juni 2006 Domein instellingen en leerlingen Wijzigingen voor het schooljaar
Analyse 3 INFANL01-3 week 2 CMI Informatica.
Technische Architectuur. p. 2 Instellingen Q WS SSL Certificaat voor digitale handtekening Cert SSL client certificaat Web service Consumer SSL server.
Gegarandeerde Aflevering. p. 2  Referte : unieke identificatie van berichten, vragen en antwoorden Vraag / Antwoord : De afzender dient voor elke vraag.
Infosessie MAGDA interface voor entiteiten en rapportering Bruno De Vrieze (AIV) Wout Van der Auwermeulen en Luk Verschooren (HR T&D) 02/06/2016.
SharePoint Alles over metadata In de Private en Public cloud.
Infosessie MAGDA interface voor entiteiten en rapportering
Wijzigingen Omgevingsloket online Schakeldag 29 juni 2017
MAGDA in een notendop.
29 juni 2017 De Behandeldienst in Omgevingsloket online
Identication & Authentication
Documenten Sets In SharePoint.
End-to-end vercijfering
Technische Architectuur & Discimus
FINELTS Wijzigingen 2018 nieuwe XSD-schema's & schermen
Sierteelt, digitaal snel op weg
Documenten Sets In SharePoint.
DCAT-AP Vlaanderen voorlegging als standaard
Transcript van de presentatie:

MAGDA standaarden & richtlijnen April 3, 2017 MAGDA standaarden & richtlijnen Coördinatiecel Vlaams e-government (CORVE) Lieven Verreycken, SOA Consultant Architect (HB) Hans Arents, Senior Adviseur (CORVE) Web: http://www.vlaanderen.be/e-government/

Objectief van de werkgroep Informatie verstrekken voor afnemers, bronnen, leveranciers Forum voor vragen en overleg ivm toekomstige evolutie van de standaard Nuance standaard – richtlijn – best practice Standaard = MOET Richtlijn = BEST Eerste sessie: focus op informatie verstrekken Volgende sessies: af te spreken

Aanleiding Update van MAGDA documentatie xsd richtlijn 2.0 FTP richtlijnen (sftp) Migratie van url’s Vragen naar uitbreiding vanuit authentieke bronnen Nieuwe bronnen zoals Digitale Bouwaanvraag en LNE-VEA-EPB O&V Da Vinci Discimus

Agenda deze sessie Doel MAGDA Doelstelling van de MAGDA standaarden Voorstelling van de standaard In combinatie met hoe in de praktijk toegepast op MAGDA Vragen Voorstellen voor uitbreidingen

Doel van het programma MAGDA MAximale GegevensDeling tussen Administraties Éénmalig inzamelen, veelvuldig gebruiken Decretaal vastgelegd Gestandardiseerde diensten, onafhankelijk van de bron Aantonen dat SOA werkt in de praktijk Voorbeeldfunctie voor andere diensten – “advies” – richtlijnen functie Voorbeeld technieken MAGDA overgenomen door projecten met webservices Onderwijs & Vorming voor webservices voor Universiteiten en Hogescholen Openbare Werken … Nieuwe authentieke bronnen via MAGDA gateway zoals LED (Diploma)

MAGDA: basis begrippen Vereenvoudigd model en terminologie Afnemers: ook leveranciers “kapstok” voor verdere verfijning

Doelstelling standaarden Voordeel: winst in tijd en kost Eénzelfde manier van werken voor alle aansluitingen, ongeacht: ondernemings-, persoons-, … diensten MAGDA, LED, … diensten Richtlijn bij ontwerp Bij keuze -> geen onnodige discussie Starten van sjablonen en voorbeelden Re-use Nadeel: tragere evolutie in geval van wijzigende vereisten Soms leren leven met niet-optimale beslissingen uit verleden

Impact van wijziging op standaard Gebruik – dienst gemiddeld door 5,5 afnemers gebruikt Impact op alle afnemers die de diensten gebruiken

Afnemers en bronnen Afnemers: zowel federaal, regio als lokaal Diensten: business diensten naar federale bronnen die niet compliant zijn aan de VO standaarden, gateway diensten naar Vlaamse bronnen die wel al VO standaard diensten hebben, maar die niet rechtstreeks ontsloten worden voor privacy (4-ogen) vereisten. Bronnen: grote diversiteit aan bronnen

Bronnen en soorten diensten Standaard “soorten” diensten Met respectievelijke naamgeving

Functionele domeinen Voorbeeld toepassingen oa met “early adopters” italic : gepland Afnemers: verfijnen van beleidsdomeinen naar toepassingen binnen de beleidsdomeinen. Dit is geen exhaustieve lijst van de toepassingen. Diensten worden gegroepeerd in domeinen (policies per domein, security regels, groepering voor de afnemers voor terugvinden van diensten)

Standaard: functioneel domeinen Specifieke objecten per functioneel domein Ook in naamgeving dienst Fictief voorbeeld Inburger.GeefDossier BouwAanvraag.GeefDossier Voordeel Beheersbaar per functioneel domein Klassificatie en terugvinden van services

Naamgeving diensten Groot aantal diensten (niet de verschillende versies gelijst) Volgens een standaard naamgeving (operatie + object) – intussen een methode die door de meeste andere service providers in Vlaanderen is overgenomen. Italic: diensten “under construction”

Standaard: naamgeving diensten Domein.Functie(Aard)Doelobject(Bereik) Domein Deels in 1.1 diensten, overal toegepast sinds 1.2 Functie Geef, Zoek, Creeer, Registreer, Wijzig, … Doeloject Onderneming, Persoon, Inschrijving, … Aard Mutaties, Historiek Document “Naamgeving van MAGDA diensten.versie1”

Naamgeving Toegepast op / vertaald naar technische services Webservice 1 naam – 1 dienst – 1 operatie FTP Geen operatie

Naamgeving : redenen vd keuze FTP en webservices Naamgeving voor service vs operatie vs url vs context/naam? Welke operaties al dan niet te bundelen in één service? Incrementeel toevoegen van nieuwe diensten zonder impact op de bestaande webservice specificaties en versies Typische SOA aanpak Eenduidig voor toelatingen toegekend op niveau van de service

Naamgeving : redenen vd keuze Welke naamgeving niveau service vs niveau operatie vs url vs context/naam? Welke operaties al dan niet te bundelen in één service ? Entity Service: dienst Persoon, Onderneming bv? Operaties GeefPersoon, ZoekPersoonOpNaam, … Welke naam op de operatie? Welke naam op de url Welke naam in de context? Wat met geen Entity Services? Schrijf en lees diensten in afzonderlijke webservices ?

Naamgeving : redenen vd keuze Incrementeel toevoegen van nieuwe diensten zonder impact op de bestaande webservice specificaties en versies Incrementeel = eigen aan SOA = praktijk MAGDA Starten met GeefPersoon 1.0, ZoekPersoonOpNaam 1.0, … Wijzigingen op de GeefPersoon Nieuwe versie webservice? Van 1 operatie of alle operaties? Toelatingen Niveau van de webservice – operatie ?

Diensten Vlaamse bronnen VOP entiteit volgens mij alleen binnen Orafin

Geef – Publiceer Diensten Gebruik van éénzelfde object, of men nu via een Vraag-Antwoord of een Publiceer werkt

Standaard Objecten in vraag-antwoord services en publicaties zijn dezelfde Voordeel Consistentie voor de afnemer

Diensten met eenduidig begrippenkader Elke bron heeft eigen nomenclatuur. Voor de Vlaamse bronnen proberen zoveel mogelijk te standardiseren aan de bron. Voor federale bronnen standardisatie via de diensten laag. Vermijdt dat elke afnemer telkens andere begrippen moet gebruiken.

Standaard: eenduidig begrippenkader Voordeel naar documentatie Begrippenlijst per functioneel domein Duidelijke semantiek voor de afnemer Sterk afhankelijk van de authentieke bronnen Gegeven van authentieke bron mag niet gewijzigd worden (inhoud) Ondernemingsnummer: altijd 10 lang bij MAGDA, + voorloopnul Andere codes voor bv geslacht code kan verschillen van de authentieke bron Zolang deze 1 op 1 mappen met de bron, is er geen informatieverlies Eenzelfde begrip kan door authentieke bron verschillend geïmplementeerd zijn in verschillende services

Standaard Naamgeving wsdl – xsd – url Folder structuur van de specificatie Types en elementen: generiek en voor functionele domeinen Versiebeheer in de specificatie xsd modellering

Standaard xsd (voor FTP en webservice) wsdl (voor webservice) Verzoek-Repliek / Vraag-Antwoord Context – Inhoud – Uitzondering Context en Uitzonderingen identiek voor alle diensten Inhoud specifiek per dienst Dienst specifiek Inhoud Generieke domein objecten wsdl (voor webservice) url (voor webservice)

Verzoek

Sjabloon xsd Dienstnaam, namespace, schema locaties van de xsd’s aan voor xsd Alleen het VraagInhoudType dienst specifiek maken Refereren naar een domein specifiek objet

Repliek

wsdl sjabloon

wsdl sjabloon <wsdl:service name=“GeefA"> <wsdl:port name="webServiceHttpPort" binding="webServiceHttpBinding"> <soap:address location="https://magdadienst.vlaanderen.be/MagdaDienst-02.00/soap/WebService"/> </wsdl:port> </wsdl:service> <wsdl:portType name="webServicePortType"> <wsdl:operation name=“GeefA"> <wsdl:input name="GeefARequest" message="GeefARequest"/> <wsdl:output name="GeefAResponse" message="GeefAResponse"/> </wsdl:operation> </wsdl:portType> <wsdl:message name="GeefAResponse"> <wsdl:part name="Repliek" element="GeefAResponse"/> </wsdl:message>

Naamgeving elementen Message (input/output): Request - Response Top Element (input/output): Verzoek – Repliek Enige element dat globaal gedefinieerd wordt Alle andere elementen via Type definities

FTP variant FTP variant Meerdere vragen / antwoorden “Service” folder Vroeger 1000, nu onbeperkt “Service” folder

Domeinen : principe

Domeinen Generiek: voor alle berichten Basisregisters Persoon, Onderneming, … Sleutels van de basisregisters niet alle “ballast” van het volledige domein mee te nemen bij “include” vanaf 2.0 Business specifieke: include de basisregisters of andere business specifieke

Files en folders per domein Vanaf 1.2 soms, vanaf 2.0 altijd Domein.xsd: alle definities binnen deze folder DomeinComplex.xsd: alle complex types DomeinEnum.xsd: alle enumeraties DomeinSimple.xsd: alle simple types Vervangt Domein.xsd GeneriekDataTypes.xsd GeneriekDataCodes.xsd GeneriekDataKern.xsd

Domeinen: beheerders CORVE MAGDA Generiek Basisregisters Persoon, Onderneming, … Verschillende Business afdelingen ism CORVE Voor de eigen business specifieke Bijvoorbeeld LED voor Bewijs LED specifieke extensies voor de MAGDA gateways BewijsExtensie.xsd met BewijsPublicatieType

Versies Files en folders Folders voor de domeinen met versieaanduiding Bijvoorbeeld: Generiek-02.00 Voordeel: duidelijk correcte versie van het volledig domein meenemen Nadeel: alle include/import statements en namespaces versie specifiek File namen zonder versieaanduiding Namespace xmlns:generiek="http://generiek-02_00.vip.vlaanderen.be" Prefix zonder versieaanduiding Uitzondering: indien meerdere versie van 1 domein gebruikt in de service Namespace met versieaanduiding

Generiek: partijen in het bericht

Ontwerp beslissing Referte Alternatieven voor de Afzender: verplicht voor Ontvanger: onbekend bij versturen van het bericht. Alternatieven Verschillende partijen, met validatie logica in de xsd 1 PartijType, met validatie logica buiten de xsd

Validaties bij aansluiting op T&I Vooraleer “go” op productie Belangrijkste controles: Aantal representatieve testgevallen Correct gebruik van referte Vereist voor tracebility in productie Aantal optionele elementen Afzender en Ontvanger Naam: controle verdwijnt Verplicht veld Identificatie is vereist INSZ van gebruiker voor persoonsdiensten: verdwijnt ?

Richtlijnen schema – xsd modellering Taal (1) Industrie standaarden (5) Modulariteit (9) Structuur (1) Namespace (8) Versie (3) Andere (2) Document “CORVE_VIP_Richtlijnen_XML_Schema” Componenten (Elementen, Types, …) Naamgeving (13) Definitie (15) Ontwerp (11)

Algemeen Maak xsd niet te complex Te begrijpen door afnemers Aantal elementen vd sequence ComplexType: max 10 Indien meer: is men met nog 1 type bezig? Diepte van de boom: max 5 niveaus Indien meer: Verschillende objecten? Verschillende services?

Naamgeving (Element, Types, …) Nederlands (NAAM001) Vertalen van business specifieke concepten naar het Engels -> good luck Nadeel: ontsluiting naar federale en Europese afnemers Afkortingen (NAAM011) Alleen de “gekende” / “gangbare” afkortingen DmfA, KBO, percid

Enumeraties Origineel: alle enumeraties in CodeType / EnumType Voortschrijdend inzicht Enumeraties zijn volatiel Zelfs diegene waarvan men denkt dat ze stabiel zijn bv geslacht Wijziging enumeratie breekt het contract Conclusie: alleen enumeraties bij zekerheid NAAM005, NAAM006, ONTW007

Naamgeving (Element, Types, …) Upper Camel Case / Pascal Case (NAAM009) ISO 11179 (NAAM002) “Type” suffix voor types (NAAM007) <xs:complexType name=“PersoonType"> <xs:sequence> <xs:element name=“INSZ" type=“generiek:INSZType"> <xs:element name=“Geslacht" type=“GeslachtType“ minOccurs="0"> <xs:element name=“Geboorte" type=“GebeurtenisType"> <xs:element name=“Overlijden" type=“GebeurtenisType“ minOccurs="0"> </ xs:sequence> </ xs:complexType>

Collections Afzonderlijk element voor de collection Voordeel ipv unbounded rechtstreeks binnen het bovenliggende Type Voordeel Leesbaarheid Code generatie Parsing

Typering Steeds Types voor de elementen binnen ComplexType Complex of Simple Any Type: slechts uitzonderlijk toegelaten Aantal SimpleType voor strings Voordeel Leesbaarheid

Generiek Adres uit 1.2 Straat, gemeente NIS Straat code In principe verplicht Optioneel wegens uitzonderlijk niet ingevuld door bron  NIS Straat code Idem cfr supra NIS gemeente code CRAB straat code Adres Internationaal

Beschrijving - omschrijving Attribuut dat tekstuele beschrijving geeft van een ander element, meestal een code Geslacht Omschrijving Element Kan ook andere benaming zijn, bijvoorbeeld Diagnose voor Uitzondering

Types en operaties Op éénzelfde object Creatie: aantal constaints >> default Type Consultatie: mogelijk minder constraints (niet alles via Creatie service aangemaakt) >> InputType, AanmaakType Opzoeking: criteria met weinig constraints >> CriteriaType

Datums en tijd Tijdstip Type Creatie en modificatie datum van object Tijd en Datum Creatie en modificatie datum van object Periodes Begindatum en Einddatum 4 combinaties verplicht – optioneel in 2.0

Simple Types Getal: string met pattern <xs:simpleType name=“xxxType"> <xs:restriction base=“xs:string”> <xs:maxlength name=“3"> <xs:pattern value="[0-9]{1,3}"/> </xs:restriction > </ xs:simpleType>

Wijzigingen 2.0 tov 1.x Doelstellingen gateways redundante systemen voor hogere beschikbaarheid Contract van gateway en directe business dienst na gateway zijn gelijk

Wijzigingen 2.0 tov 1.x Referte Oorsprong van de fout 36 ipv 24 lang: mogelijk om een uuid te gebruiken Met 24 lang was er ook een codering met milliseconden + random, maar deze is niet noodzakelijk uniek met MAGDA load-balanced systemen voor 24:7 beschikbaarheid (minieme kans op collision). Oorsprong van de fout

Wijzigingen 2.0 tov 1.x Referte Oorsprong van de fout MAGDA of Bron: LED, … Codering van de fouten via 5 cijfers (99999) Geen unieke set van nummers over alle bronnen heen Wel herbruik van common codes MAGDA Bv geen gegevens gevonden

Standaarden protocols

Standaard formulier aansluiting vd afnemer Standard formulieren voor aanvraag Identificatie aanvrager Motivatie Machtigingen privacy gevoelige diensten Validatie in T&I omgeving Timing forecast

Richtlijnen documenten Wsdl – xsd – url Xml schema en componenten Bronnen – leveranciers – afnemers Versiebeheer: hoe lang parallelle versies ondersteunen Naamgeving van diensten FTP Ondersteuning afnemers in integratietraject: validatie bij aansluiting

Bedankt voor uw aandacht April 3, 2017 Nog vragen? Meer informatie over het Vlaamse e-government en de Coördinatiecel Vlaams e-government: http://www.vlaanderen.be/e-government/ 6 september 2011