MBG - Metamodel BerichtstructuurGegevens

VNG Realisatie Standaard
In Gebruik versie

Deze versie:
https://vng-realisatie.github.io/publicatie/cim/mbg/1.0.0
Laatst gepubliceerde versie:
https://vng-realisatie.github.io/publicatie/cim/mbg
Laatste werkversie:
https://vng-realisatie.github.io/MBG-Werkomgeving/
Vorige versie:
https://vng-realisatie.github.io/publicatie/cim/mbg/0.9.0
Redacteurs:
Robert Melskens (VNG Realisatie)
Johan Boer (VNG Realisatie)
Auteur:
Robert Melskens (VNG Realisatie)
Doe mee:
GitHub VNG-Realisatie/MBG-Werkomgeving
Dien een melding in
Revisiehistorie
Pull requests

Dit document is ook beschikbaar in dit niet-normatieve formaat: pdf


Samenvatting

Samenvatting

Metamodel voor het beschrijven van Berichtgegevens (MBG), versie 1.0.

Met MBG, het Metamodel voor BerichtstructuurGegevens, wordt een metamodel beschreven waarmee berichten kunnen worden gemodelleerd in de vorm van Berichtstructuurmodellen. Het beschrijft de metaklassen, metastructuur en metagegevens als grondslag voor alle onderdelen van een bericht. Doel hiervan is het vastleggen van de methode van het modelleren van berichten zodat dit op een eenduidige gebeurd en de gemeenschappelijke tooling deze modellen ook kan verwerken. Vooralsnog wordt ingezet op het definiëren van een metamodel voor het beschrijven van OAS specificaties voor REST API’s maar het is tevens bedoeld als basis voor verbetering en doorontwikkeling van dit metamodel.

Status van dit document

Dit document is 'In Gebruik'.

1. Colofon en Voorwoord

1.1 Colofon

Aan de totstandkoming van deze versie van dit metamodel hebben de volgende inhoudelijke experts op het gebied van informatiemodellering meegewerkt:

Naam Organisatie Rol en achtergrond
Robert Melskens VNG Imvertor Gebruikersgroep. Imvertor ontwikkelaar.
MIM expertgroep.
Johan Boer VNG MIM expertgroep. Adviseur standaarden.

1.2 Voorwoord

Bij de VNG en Kennisnet worden de Conceptuele InformatieModellen (CIM) die op basis van het MIM worden vervaardigd en die een beeld geven van de informatiebehoefte binnen een domein op conceptueel niveau omgezet naar Uitwisselings Gegevensmodellen (UGM). Een UGM is een vertaling van een CIM naar een technische structuur. Een UGM biedt echter onvoldoende informatie voor het genereren van berichtspecificaties (in yaml of xml) en daarom wordt een Bericht Structuur Model (BSM) vervaardigd waarbinnen het UGM gebruikt wordt om de inhoud van de berichten te definiëren.

Teneinde het gebruik van BSM’s ook buiten de VNG en Kennisnet mogelijk te maken is besloten de structuur van de BSM’s formeel te beschrijven. Onderliggend document is daarvan het resultaat. Het dient als basis voor verbeteringen en uitbreidingen waaraan binnen de Imvertor Gebruikersgroep gewerkt zal worden.

2. Inleiding

Het onderliggende document bevat het Metamodel voor BerichtstructuurGegevens (MBG), voor het beschrijven van Berichtstructuurmodellen. VNG Realisatie heeft er voor gekozen dit metamodel als een extensie op het MUG (Metamodel UitwisselingsGegevens) te definiëren. In theorie is het ook mogelijk om het MBG als een extensie op het MIM te definiëren. In beide gevallen vormen ze tezamen de basis voor een Bericht Structuur Model (BSM). Het metamodel beschrijft de modellering zoals toegepast bij VNG Realisatie en Kennisnet bij het modelleren van API-specificaties. Het dient als basis voor de doorontwikkeling daarvan binnen de Imvertor community zodat het ook voor andere organisaties en op mogelijke andersoortige specificaties toepasbaar wordt. Het model bevat duidelijke afspraken over het vastleggen van berichtgegevensspecificaties.

Dit document is opgesteld met kennis aanwezig bij VNG Realisatie.

2.1 Toepassingsgebied

Het metamodel biedt de modelleringstaal waarmee het bericht-technische deel van een BSM gemaakt, gelezen en begrepen kan worden. Het doel hiervan is: * de leesbaarheid en eenduidigheid van BSM’s te vergroten; * een basis te leggen voor het aanbrengen van verbeteringen en uitbreidingen van dit metamodel en de gerelateerde BSM’s; * tooling te kunnen (door)ontwikkelen en (her)gebruiken voor resp. door alle partijen die kiezen voor dit metamodel; * en in het verlengde hiervan, om op een meer geautomatiseerde werkwijze sneller en beter voorspelbaar uitwisselingsstandaarden op te kunnen stellen.

Voor BSM’s die op basis van dit metamodel zijn beschreven geldt: * ze zijn eenduidig te interpreteren en goed te vergelijken; * er kan documentatie mee worden opgesteld of gegenereerd welke geschikt is voor publicatie; * er kunnen specificaties mee worden gegenereerd die direct geschikt zijn om bijv. als OAS voor een API-standaard in te zetten.

2.2 Doelgroep

Dit document is primair bestemd voor berichtontwerpers die BSM’s maken, mensen die model-driven verder werken op basis van informatiemodellen die zijn vervaardigd op basis van [MIM]. Kennis van informatiemodelleringen middels [UML] is een vereiste. Dit metamodel richt zich in het bijzonder op de informatievoorziening binnen het overheidsdomein, al is het ook in bredere context inzetbaar.

Daarnaast is dit document ook bruikbaar voor ontwikkelaars van tooling die de, op basis van de met dit metamodel vervaardigde, BSM’s als input nemen.

2.3 Leeswijzer

Het metamodel beschrijven we in 3 hoofdstukken en enkele bijlages.

Lees de Inleiding verder voor inzicht in wat we onder een BSM en onder een metamodel verstaan, hoe deze modellen zich verhouden tot UML en de vier lagen metamodel architectuur van de Object Management Group [OMG],

Het hoofdstuk Metamodel Algemeen bevat de beschrijving van alle bouwstenen c.q. de modelelementen van het MBG metamodel, in de vorm van definities en specificaties. De betekenis en toelichting van de modelelementen van het metamodel vormt het materiaal waarmee een uitputtende modelspecificatie kan worden opgesteld.

Het hoofdstuk Metamodel in UML beschrijft hoe de implementatie van het MBG in [UML] er uit ziet. In dit hoofdstuk wordt beschreven hoe het MBG metamodel zich verhoudt tot het UML metamodel, welke uitbreidingen c.q. verbijzonderingen van het UML metamodel zijn aangebracht.

Het hoofdstuk Afspraken & Regels gaat in op een aantal afspraken en regels die van toepassing zijn op een BSM. In de bijlage Diagrammen vind je een aantal diagrammen die betrekking hebben op het MBG metamodel. Bijlage Metamodel UitwisselingsGegevens (MUG) beschrijft het MUG metamodel, een metamodel dat nagenoeg 1 op 1 te mappen is op het MIM en alleen qua naamgeving van de modelelementen en qua metagegevens afwijkt van het MIM metamodel. Om die reden hebben we dit niet in een apart document beschreven. Tenslotte vind je in de bijlagen Specifieke MBG metagegevens voor Imvertor en Specifieke MUG metagegevens voor Imvertor nog de specifiek voor Imvertor gedefinieerde metagegevens.

2.4 Gebruikswijzer

Met de bouwstenen oftewel de modelelementen die in dit metamodel beschreven zijn is het bericht-technische deel van een BSM te maken. Om zo'n BSM te maken volstaat het veelal om het hoofdstuk Metamodel Algemeen en bijlage Specifieke MBG metagegevens voor Imvertor door te nemen. Voor het maken van een UGM kun je terugvallen op de bijlagen Metamodel UitwisselingsGegevens (MUG) en Specifieke MUG metagegevens voor Imvertor.

De andere hoofdstukken kan je behandelen als naslagwerk, voor als er tijdens het modelleren vragen ontstaan. Neem vervolgens je favoriete modelleertool en ga aan de slag. Voor Enterprise Architect zijn er hulpmiddelen gemaakt waarmee de modelelementen aangemaakt kunnen worden door erop te klikken en bijvoorbeeld naar een diagram te slepen. Ook kan je daarmee valideren of je model correct het MBG volgt (wat automatisch gaat als je de hulpmiddelen gebruikt). Tot slot is het mogelijk om naar BSM’s te kijken van organisaties die al een op het MBG gebaseerd BSM hebben gepubliceerd.

2.5 Wat is een BSM

Een BSM is een gegevensmodel waarin alle componenten van een bericht worden gemodelleerd, de bericht-technische objecten maar ook objecten die gaan over de inhoud van een domein. Het gaat dus om informatie over datgene wat uitgewisseld wordt maar ook om hoe het wordt uitgewisseld. De scope van een BSM is dus breder dan dat van het Metamodel voor Berichtgegevens (MBG).

In een BSM worden zoals gezegd ook objecten gemodelleerd die gaan over de inhoud van een domein. Van alle objecten wordt vastgelegd welke kenmerken/eigenschappen deze hebben, of deze kenmerken/eigenschappen in het beschouwde domein verplicht of optioneel zijn, hoe de objecten aan elkaar gerelateerd zijn, enzovoorts. Voor de vastlegging van deze objecten, kenmerken en eigenschappen wordt geen gebruik gemaakt van het MBG metamodel maar van het MUG metamodel. Wel is er in het MBG metamodel voorzien in een relatie met het MUG metamodel.  

2.6 Typering van modellen en scope van deze standaard

Bij het modelleren van een domein zijn er een aantal beschouwingsniveaus, variërend van een zo getrouw mogelijke beschrijving van de betekenis en bedoeling van de woorden en termen die mensen gebruiken als ze het ergens over hebben tot een specificatie van de wijze van registratie en uitwisseling van data. In het [MIM] vind je een uitgebreide beschrijving van deze niveau’s.

Een BSM is een extensie op het logisch informatie- of gegevensmodel (niveau 3) en bevind zich ook op niveau 3. Het modelleert de bericht-technische componenten benodigd voor de uitwisseling van de met het logisch informatie- of gegevensmodel gedefinieerde informatie en koppelt deze daaraan. Waar de objecten, kenmerken en eigenschappen in een logisch informatie- of gegevensmodel techniek onafhankelijk zijn geldt dat voor de componenten in een BSM slechts deels. De componenten in een BSM kunnen nog op allerlei manieren geserialiseerd worden maar tegelijkertijd wordt er bij de modellering van de bericht-technische componenten al voorgesorteerd op de wijze waarop de specificatie zal worden gegenereerd, bijv. OAS. De bericht-technische componenten hebben dus elk een tegenhanger in de specificaties. Het component ‘Padtype’ bijvoorbeeld is specifiek in het leven geroepen voor het definiëren van een OAS specificatie. En hoewel niet uitgesloten mag worden dat dit component ook bij andersoortige specificaties een rol heeft of gaat krijgen, had het bij het modelleren van StUF berichten nooit een functie. Ook de enumeratie voor de naam van de ‘EntiteitRelatie’ hangt natuurlijk erg sterk samen met REST API’s.

Een BSM kan, zoals hierboven reeds geschetst, geserialiseerd worden in verschillende soorten technische datamodellen en schema's (zoals XML, JSON of specifieke invullingen hiervan). Deze serialisaties zijn wat we in MBG niveau 4 noemen. De focus van het MBG ligt niet op dit niveau 4 en valt dan ook buiten scope. Wel staat het MBG een model-gedreven werkwijze voor waarbij de modellen van niveau 4 gegenereerd kunnen worden vanuit niveau 3. De aangegeven niveaus zijn vooral bedoeld om de scope van MBG duidelijk aan geven, te weten niveau 3.

2.7 Wat is het metamodel voor Berichtstructuurmodellering

Een metamodel is een model van een model. Het definieert een verzameling van modelleerconstructies in de vorm van bouwstenen, oftewel modelelementen zoals een Berichttype, Entiteitrelatie en Padtype, met bijbehorende betekenis en met bijbehorende afspraken omtrent hoe deze toe te passen. Hiermee kan vervolgens een informatiemodel of in dit geval specifiek een BSM gemaakt worden. Het metamodel is daarmee de modelleertaal waarin een informatiemodel is uitgedrukt. Deze metataal beschrijft als het ware de grammatica en de syntax van de modelleertaal.

Vaak zie je dat het metamodel niet expliciet beschreven is en dat het metamodel een onderdeel van de domeinkennis is geworden. Bij domein overstijgende harmonisatie wordt het dan moeilijk om modellen met elkaar te vergelijken en op basis daarvan gegevens uit te wisselen. Bij een BSM is dat aspect echter van minder belang. Belangrijker is dat er duidelijkheid is over de betekenis van de modelelementen en de toepassing daarvan zodat het definiëren van een BSM eenvoudiger wordt en deze ook eenvoudiger door andere organisaties kan worden toegepast. Het is ook een voorwaarde voor de doorontwikkeling van dit metamodel, bijv. voor andere berichtspecificatietalen.

Met de in een metamodel opgenomen set van modelleerconstructies worden informatiemodellen gemaakt. Door het schrijven van modelleertalen (zoals [UML]) in een metataal (zoals MOF) wordt gegarandeerd dat alle toepassingen van die talen op een standaard manier zijn opgebouwd en daardoor alom te begrijpen zijn. De metataal beschrijft als het ware de grammatica van de modelleertaal. Het metamodel in dit document is uitgewerkt voor modellering met UML.

2.8 Uitdrukken in UML

Zowel het metamodel als informatiemodellen zoals het BSM kunnen worden uitgedrukt in [UML]. Aangezien het belangrijk is dat de lezer begrijpt wat we onder een informatiemodel en een metamodel verstaan verwijzen we naar paragraaf 1.8 van het [MIM]. Daarin worden de modellen tevens in de juiste context geplaatst aan de hand van de vier lagen metamodel architectuur van de Object Management Group [OMG].

Verwar de daarin besproken vier lagen metamodel architectuur overigens niet met de in paragraaf 1.6 geschetste typering van modellen. Die typering van 4 lagen wijkt fundamenteel af van de in het [MIM] beschreven typering van 4 lagen (M0 t/m M3). De in paragraaf 1.6 geschetste lagen zijn geen instantie van de daarboven gelegen laag waar dat in het OMG model wel het geval is.

Het onderliggende Metamodel BerichtstructuurGegevens (MBG) is een voorbeeld van een model op de M2 laag. Een BSM is een instantie van het MBG en bevindt zich dan ook op de M1 laag.

2.9 Beheer

Het beheer van dit metamodel vindt plaats door ….

2.10 Normreferenties

# Naam Referentie
1. Unified Modeling Language (UML) [UML]
2. OMG Unified Modeling Language TM versie 2.5 [OMG]
Noot: Versienummer normreferenties

3. Metamodel Algemeen

Dit hoofdstuk beschrijft het metamodel in diagramvorm en in tekst.

Het metamodel beschrijft de modelelementen die worden gebruikt bij het maken van een BSM. Voorbeelden van modelelementen zijn: Berichttype, Entiteitrelatie en Padtype, maar denk ook datatypen of aan metagegevens. In de paragrafen hierna worden alle modelelementen beschreven en toegelicht.

Uitgangspunten voor het metamodel

Toelichting metaclass Alle modelelementen zijn een metaklasse in het metamodel. Hiermee wordt aangegeven dat het niet een klasse betreft in een informatiemodel, zoals de klasse Getfractie, maar dat het om de classificatie gaat dat de Getfractie een Getberichttype is, oftewel dat de klasse Getfractie van de metaklasse Getberichttype is. Vandaar de term metaclass.

De metaklassen worden ook gebruikt om aan te geven hoe deze zich verhouden tot de metaklassen van UML en W3C, in de volgende hoofdstukken.

Bij het maken van een BSM modelleer je in feite gewoon met de modelelementen, en geef je aan dat een ‘Getfractie’ een Getberichttype is en ‘/fracties’ een Padtype.

Hierna volgen eerst diagrammen met de modelelementen, als overzicht. In de paragrafen erna wordt de betekenis van elk van deze modelelementen beschreven, met een definitie en een toelichting en een voorbeeld. Tot slot volgt een paragraaf met metadata die bijgehouden wordt, of kan worden, bij een modelelement.

3.1 Structuur metamodel

Deze paragraaf bevat een overzicht van het Metamodel voor BerichtGegevens, kortweg MBG, en geeft alle modelelementen weer. De beschrijving van de modelelementen staat in de volgende paragraaf.

De modelelementen zijn verdeeld over een tweetal diagrammen, die elk een eigen view op een deel van het metamodel tonen. Elk view toont een aantal van de modelelementen, inclusief hun onderlinge samenhang.

Alle views samen vormen het metamodel als geheel: * KERN, met de belangrijkste modelelementen in onderlinge samenhang; * GROEPERING modelelementen.

Elk modelelement heeft een MBG metaclass met een naam. Hieraan is elk modelelement te herkennen in alle diagrammen en in de tekst en in elke specificatietaal die een uitdrukking is van dit metamodel.

Bij de modelelementen zijn in deze diagrammen geen beschrijvende kenmerken opgenomen, de metagegevens zoals naam, definitie enzovoorts. In de diagrammen in de bijlage zijn deze wel opgenomen.  

3.1.1 Kern

View 1: De kern van een BSM. Deze bestaat uit de volgende modelelementen:

MBG metaclass
Getberichttype
Postberichttype
Putberichttype
Patchberichttype
Deleteberichttype
Padtype
Entiteitrelatie
Padrelatie
Generalisatie
Interface

De betekenis van deze modelelementen en de beschrijvingen ervan staat in Objecten en Relaties.

In diagramvorm:

Figuur 1 Diagram: Kern - Modelelementen zonder Metagegevens

De verbindingen tussen de modelelementen geven aan welke combinaties kunnen voorkomen op metamodelniveau, oftewel welke modelelementen in een informatiemodel met elkaar gecombineerd kunnen worden. Bijvoorbeeld:

  • Een Patchberichttype kan verbonden worden met een Padrelatie en deze Padrelatie kan weer verbonden worden met een Padtype. Dit geeft aan dat een Padrelatie een modelelement is dat een Patchberichttype met een Padtype verbindt. Een Patchberichttype kan dus niet rechtstreeks verbonden worden met een Padtype.
  • Een Deleteberichttype kan via een generalisatie verbonden worden met een Interface.

3.1.2 Groepering

View 2: Groepering. Deze bestaat uit de volgende modelelementen:

MBG metaclass
Koppelvlak
Domein
Bericht

De betekenis van deze modelelementen en de beschrijvingen ervan staan in Packages.

In diagramvorm:

Figuur 2 Diagram: Groepering

3.2 Objecten

Diagram: Kern

3.2.1 Berichttypes

Het MBG metamodel kent een aantal berichttypes. Al deze berichttypes zijn afgeleid van de superclass Berichttype en overerven dus de metagegevens van die superclass. De class Berichttype is abstract en zal daarom zelf nooit in een BSM voorkomen. Alle berichten moeten één en niet meer dan éen relatie van het type ‘Padrelatie’ en mogen één en niet meer dan éen relatie van het type ‘Generalisatie’ hebben.

Elk hieronder toegelicht Berichttype is een abstractie van de werkelijkheid, nl. de berichtspecificatie. In die werkelijkheid heeft de keuze voor een berichttype gevolgen voor de wijze waarop dit bericht in de specificatie moet worden gedefinieerd. Die gevolgen hebben slechts ten dele invloed op de wijze waarop het bericht gemodelleerd moet worden in een BSM. Hieronder wordt per bericht aangegeven wat die gevolgen zijn.

3.2.1.1 Getberichttype

Toelichting:

Classes van dit type hebben verplicht 2 relaties van het type EntiteitRelatie hebben, één relatie met de naam 'request' en één met de naam 'response'. Alleen bij de eerste is het toegestaan een leeg Entiteittype aan de EntiteitRelatie te koppelen.

3.2.1.2 Postberichttype

Toelichting:

Classes van dit type hebben verplicht 2 relaties van het type EntiteitRelatie, één relatie met de naam ‘requestbody’ en één met de naam 'response'. Een Entiteittype dat m.b.v. de eerste verbonden wordt met het Postberichttype bevat altijd minimaal 1 property. Een Entiteittype dat m.b.v. de tweede verbonden wordt met het Postberichttype mag leeg blijven.

3.2.1.3 Putberichttype

Toelichting:

Classes van dit type hebben verplicht 2 relaties van het type EntiteitRelatie, één met de naam ‘requestbody’ en één met de naam 'response'. Een Entiteittype dat m.b.v. de eerste verbonden wordt met het Postberichttype bevat altijd minimaal 1 property. Een Entiteittype dat m.b.v. de tweede verbonden wordt met het Postberichttype mag leeg blijven.

3.2.1.4 Patchberichttype

Toelichting:

Classes van dit type hebben verplicht 2 relaties van het type EntiteitRelatie, één met de naam ‘requestbody’ en één met de naam 'response'. Een Entiteittype dat m.b.v. de eerste verbonden wordt met het Postberichttype bevat altijd minimaal 1 property. Een Entiteittype dat m.b.v. de tweede verbonden wordt met het Postberichttype mag leeg blijven.

3.2.1.5 Deleteberichttype

Toelichting:

Classes van dit type hebben verplicht 2 relaties van het type EntiteitRelatie, één relatie met de naam 'request' en één met de naam 'response'. Alleen bij de tweede is het toegestaan een leeg Entiteittype aan de EntiteitRelatie te koppelen.

3.2.2 Padtype

Toelichting:

Tezamen met een Server Object url (het deel van de url dat definieert waar de API wordt gehost) vormt het path een uniek adres. De naam van een Padtype start altijd met een slash (/) en mag templates bevatten. Dit zijn strings voorafgegaan door een slash (/), startend met een open accolade ({) en eindigend met een sluit accolade (}). Binnen een model mogen niet meerdere Padtypes voorkomen met dezelfde naam. Meerdere berichten mogen gebruik maken van hetzelfde Padtype zolang deze maar niet van hetzelfde Berichttype zijn.

Classes van dit type hebben 1 verplichte relatie van het type 'Padrelatie'.

3.2.3 Interface

Toelichting:

Een interface definieert eigenschappen (metagegevens, attribuutsoorten en/of relaties) die een groep van berichttypes gemeen hebben. Een interface kan d.m.v. een generalisatie relatie gekoppeld worden aan een specifiek berichttype waarmee deze de eigenschappen van die interface overerft.

3.3 Relaties

Verbanden met betekenis, die gelegd zijn tussen modelelementen van het type Berichttype naar het type Entiteittype of van het type Berichttype naar het type Padtype.

Diagram: Kern

3.3.1 Generalisatie

Toelichting:

De generalisatie relatie geeft aan dat bepaalde eigenschappen van een interface (metagegevens) ook gelden voor de gerelateerde berichttypen.  

3.3.2 EntiteitRelatie

Toelichting:

Berichttypes danken hun bestaan aan een specifieke resource, de resource waarop de methode, die de berichttype vertegenwoordigd, moet worden uitgevoerd. Het modelleren van de relatie tussen het Berichttype en het Entiteittype dat de resource vertegenwoordigd gebeurd met de metaklasse EntiteitRelatie. Een Berichttype kan, afhankelijk van het type, 1 of 2 EntiteitRelaties hebben. Een EntiteitRelatie kan maar met 1 Berichttype en 1 Entiteittype verbonden zijn maar een Entiteittype kan wel meerdere EntiteitRelaties hebben. De naam van deze relatie kan alleen ‘request’, ‘requestbody’ of ‘response’ zijn.

3.3.3 PadRelatie

Toelichting:

Elk Berichttype moet aan een relatief path worden gekoppeld. Het modelleren van de relatie tussen een Berichttype en het PadType gebeurd m.b.v. de metaklasse PadRelatie. Elk berichttype kan maar aan 1 PadType worden gekoppeld maar meerdere Berichttypes kunnen wel hetzelfde PadType hebben. Deze relatie heeft altijd de naam ‘pad’.

3.4 Packages

Diagram: Groepering

Het MBG metamodel kent een aantal packages. Al deze packages zijn afgeleid van de superclass Package. De class Package is abstract en zal daarom zelf nooit in een BSM voorkomen.

De verschillende modelelementen van het type package zijn:

In een Koppelvlak package komen Bericht packes voor en kunnen Domein packages opgenomen worden.

In een Bericht package mogen de volgende MBG-elementen worden opgenomen:

en alle modelelementen van het Metamodel Uitwisselings Gegevens (MUG).

In een Domein package mogen alleen modelelementen van het Metamodel Uitwisselings Gegevens (MUG) worden opgenomen.

In beide gevallen is de volgorde daarbij niet van belang.

De drie package-typen worden hieronder uitgelegd.

3.4.1 Koppelvlak

Toelichting: Het Koppelvlak is een package, te weten het hoofdpackage van het koppelvlak, waaronder alle subpackages die een koppelvlak beschrijven, zoals Domein en Bericht, vallen. Het koppelvlak wordt verder beschreven met metadata, zoals de serialisatie waarin het koppelvlak moet worden uitgedrukt (‘json’ of ‘hal+json’) en de naam van het koppelvlak.  

3.4.2 Domein

Een koppelvlak kan optioneel een aantal Domein packages hebben als subpackage, waarbij aangegeven wordt dat deze de modellering van de gegevens van het domein bevatten.

Toelichting: Een Domein package bevat die modelelementen die met het koppelvlak uitgewisseld worden, zoals het Entiteittype ‘Persoon’ en het Entiteittype ‘Adres’ en impliciet ook relaties als ‘gehuwdMet’. In ieder geval alleen modelelementen uit het Metamodel Uitwisselings Gegevens (MUG). Deze modelelementen kunnen 1 op 1 overgenomen zijn van een Uitwisselingsgegevensmodel (UGM) maar kunnen ook bewerkingen daarvan zijn.

3.4.3 Bericht

Een koppelvlak bevat een of meer Bericht packages als subpackage.

Toelichting: Berichten worden doorgaans geclusterd op basis van een in een UGM gemodelleerd Entiteittype. Alle berichten die dezelfde Entiteittype als top level delen kunnen bij elkaar in één Bericht package worden geplaatst. Met ‘dezelfde Entiteittype’ bedoelen we hier niet ‘dezelfde instantie van een entiteittype klasse’. In een bericht mogen dus meerdere entiteittype klassen van dezelfde Entiteittype worden opgenomen zolang de naam maar uniek blijft binnen het koppelvlak.

Een Bericht package bevat i.i.g. de voor de berichten benodigde modelelementen van een set van gerelateerde berichten maar kan ook alle modelelementen bevatten die in een ‘Domein’ package mogen worden opgenomen.

3.5 Specificatie metagegevens

Bij de modelelementen in een koppelvlak kunnen metagegevens, zoals 'naam' of 'berichtcode' van een modelelement, worden bijgehouden. Dit zijn geen eigenschappen van een object en worden daarom niet als bijvoorbeeld een EntiteitRelatie van een Berichttype gemodelleerd.

In de volgende paragrafen worden de metagegevens in tekst beschreven. Bij elk metagegeven is de definitie opgenomen, een toelichting en de toepassing ervan bij modelelementen en soms een voorbeeld.

3.5.1 Specificatie metagegevens Packages

We onderkennen een aantal specifieke metagegevens op het niveau van de packages. Deze staan beschreven in deze paragaaf.

3.5.1.1 Metagegeven: Naam

Toelichting: Korte identificerende naam van een Koppelvlak package of definitie van een Domein of Bericht package zodat duidelijk is waartoe het dient en/of wat voor inhoud het heeft of kan worden opgenomen.

Bijvoorbeeld: Enumeraties.

Toepassing: Alle packages (verplicht)

3.5.1.2 Metagegeven: beheerder-email

Toelichting:

Het e-Mailadres dat in de berichtenspecificatie en/of de documentatie daarvan kan worden opgenomen zodat voor de gebruikers van de specificatie duidelijk is hoe ze middels e-Mail contact op kunnen nemen met de beherende persoon of organisatie.

Toepassing: Koppelvlak (optioneel)  

3.5.1.3 Metagegeven: Koppelvlak-naam

Toelichting: Bedoelt om kernachtig de functie/domein van het koppelvlak dat gemodelleerd wordt aan te geven.

Bijvoorbeeld: ‘Open Raads- en StatenInformatie’ of ‘Regels bij activiteiten’.

Toepassing: Koppelvlak (verplicht)

3.5.1.4 Metagegeven: project_url

Toelichting: De url van de repository waarin de al dan niet met het koppelvlakmodel te genereren of gegenereerde specificatie en documentatie wordt opgeslagen. Dit kan bijv. een GitHub repository zijn maar ook een GitLab of andersoortige repository.

Bijvoorbeeld: https://github.com/VNG-Realisatie/ODS-Open-Raadsinformatie

Toepassing: Koppelvlak (optioneel)

3.5.1.5 Metagegeven: release

Toelichting: De datum wordt uitgedrukt in het volgende formaat ‘jjjjmmdd’.

Bijvoorbeeld: 20230404

Toepassing: Koppelvlak (verplicht)  

3.5.1.6 Metagegeven: Version

Toelichting: Het versienummer wordt uitgedrukt in het volgende formaat ‘x.x.x’.

Bijvoorbeeld: 1.2.0

Toepassing: Koppelvlak (verplicht)  

3.5.1.7 Metagegeven: Serialisatie

Toelichting: BSM’s op basis van het MBG worden opgesteld teneinde omgezet te worden naar een technische specificatie. De vorm waarin de technische specificatie wordt uitgedrukt is de serialisatie. Voor REST OAS API’s gaat het om de serialisatietypes, ‘json’ en ‘hal+json’. In principe zijn ook andere serialisaties mogelijk zoals ‘xml’. Dit metagegeven definieert de gewenste serialisatievorm.

Toepassing: Koppelvlak (optioneel)

3.5.2 Specificatie metagegevens modelelementen

De specifieke metagegevens op het niveau van de modelelementen waarmee een BSM wordt samengesteld staan beschreven in deze paragaaf.

Zo is er de naam van het modelelement, bijvoorbeeld het Getberichttype met als naam ‘Getagendapunt’ en een bijbehorende berichtcode, bijvoorbeeld Gr01.

Welke metagegevens verplicht zijn per modelelement en welke niet staat beschreven in het diagram in Metagegevens per modelelement. Dit diagram is een onderdeel van deze specificatie.

Elk modelelement kent een eigen set van metagegevens, die bepaalde aspecten van het modelelement specificeren. Metagegevens kunnen dus verplicht of optioneel zijn. Zo is een berichtcode altijd verplicht voor de berichttype modelelementen.

3.5.2.1 Metagegeven: Naam

Toelichting: Een korte beschrijving die het modelelement benoemt. In de berichttype modelelementen en ‘Interface’ heeft dit metagegeven alleen een functie bij het kunnen interpreteren van het model. De in de modelelementen ‘EntiteitRelatie’ en ‘Padtype’ gedefinieerde waardes voor dit metagegeven ‘Naam’ komen terug in de berichtspecificatie’. Bij de modelelementen ‘EntiteitRelatie’ en ‘PadRelatie’ wordt de naam gekozen uit een beperkte set van waarden. In het geval van de laatste heeft het zelfs altijd slechts 1 mogelijke waarde, te weten ‘pad’.

Binnen een BSM mogen niet meerdere Berichttype, Padtype, Domein en Bericht modelelementen met dezelfde naam voorkomen.

Bijvoorbeeld: ‘/stemmingen/{stemmingsidentificatie}’ is de naam van het modelelement ‘Padtype’ en ‘Getactiviteit’ is de naam van het modelelement ‘Getberichttype’.

Toepassing: alle modelelementen behalve Generalisatie (verplicht).

3.5.2.2 Metagegeven: berichtcode

Toelichting: De code bestaat uit een limitatieve lijst van waarden en typeert een bericht. Aan de hand van deze code worden door Imvertor aan properties/kenmerken toegekend aan een bericht in een berichtspecificatie standaard.

Toepassing: Alle van Berichttype afgeleide modelelementen (verplicht).

3.5.2.3 Metagegeven: tag

Toelichting: Dit metagegeven heeft een ordenende functie. De wijze van ordenen is niet voorgeschreven maar over het algemeen krijgen berichten die een (deel van een pad) met elkaar gemeen hebben dezelfde waarde voor dit metagegeven.

Toepassing: Alle van Berichttype afgeleide modelelementen (optioneel).

3.5.2.4 Metagegeven: servicename

Toelichting: Unieke identificatie van een operation in een OAS berichtspecificatie. Een operation is een combinatie van een path en een HTTP method. Binnen een OAS berichtspecificatie is het niet toegestaan om een path en een HTTP method meerdere keren met elkaar te combineren.

Bijvoorbeeld: ‘getUserById’.

Toepassing: Alle van Berichttype afgeleide modelelementen (verplicht).

3.5.2.5 Metagegeven: custom_path_facet

Toelichting: Het deel van het path dat niet uit het berichtenmodel kan worden afgeleid. Om het path toch te kunnen verifiëren tegen het model wordt daar eerst de custom_path_facet uit verwijderd. Deze tv mag ‘/’ (slashes) bevatten maar niet aan het begin en eind.

Bijvoorbeeld: ‘actuelestatus’ en ‘nawgegevens’ in ‘/zaken/{id}/actuelestatus’ resp. ‘/ingeschrevennatuurlijkpersonen/{burgerservicenummer}/nawgegevens’.

Toepassing: Padtype (optioneel).

3.5.2.6 Metagegeven: Positie

Toelichting: De positie van de construct binnen producten waarin deze opeenvolging een rol speelt. Dit metagegeven had in het verleden een functie maar is inmiddels obsolete.

Toepassing: Entiteitrelatie (optioneel).  

3.5.3 Specificatie metagegevens modelelement bindingen

Bindingen geven aan hoe modelelementen met elkaar verbonden kunnen en mogen worden.

Voorbeeld: de binding tussen een Berichttype en een Padtype, om aan te geven dat een Berichttype aan een pad moet worden gekoppeld. Een voorbeeld van wat niet mag is de verbinding van een Padtype aan een EntiteitRelatie.

Deze metagegevens zijn alleen nodig voor de binding van modelelementen aan elkaar en zijn vrijwel altijd een onderdeel van een modelleertaal (waarmee een BSM gemaakt kan worden).

De bindingen zijn ook in diagram vorm te lezen aan het begin van dit hoofdstuk, in Diagrammen van modelelementen.

3.5.3.1 Metagegeven: heeft padrelatie

Verkorte schrijfwijze: PadRelatie

Toelichting: Een Berichttype heeft een relatie naar een Padtype.

Toepassing: Alle Berichttype modelelementen en Padtype.

3.5.3.2 Metagegeven: heeft entiteitrelatie

Verkorte schrijfwijze: EntiteitRelatie

Toelichting: Een Berichttype heeft een relatie naar een Entiteittype, de top level entiteit.

Toepassing: Alle Entiteittype modelelementen uit het MUG en alle Berichttype modelelementen.  

3.5.3.3 Metagegeven: verwijst naar supertype

Verkorte schrijfwijze: supertype

Toelichting: Een subtype verwijst met een generalisatie naar een supertype en subtype verwijst met een generalisatie naar een supertype.

Toepassing: Alle Berichttype en Interface modelelementen.

3.6 Toegestane waarden voor (bepaalde) metagegevens

3.6.1 Waardebereik metagegevens

Een aantal metagegevens hebben als datatype CharacterString. Aanvullend geldt: * Voor datums dat deze het volgende patroon volgen: jjjjmmdd

Voor de volgende metagegevens geldt een specifiek waardebereik.

Metagegeven Waardenbereik
berichtcode Gr01, Gr02, Gc01, Po01, Pu01, Pa01, De01
Grouping resource, collection
Naam (bij EntiteitRelatie) resource, request, requestbody
Naam (bij PadRelatie) Pad
Is afgeleid (bij Koppelvlak) Ja, Nee
Is afgeleid (bij andere elementen) Ja, Nee, Zie package
Serialisatie json, hal+json
Supplier-project UGM
toelichting opnemen vanaf SIM, UGM, BSM

3.6.2 Defaultwaarden voor metagegevens modelelementen

Er zijn metagegevens die een defaultwaarde hebben. Het is echter niet nodig om deze defaultwaarde expliciet aan te geven in het informatiemodel. De default staat hier aangegeven. Alleen wanneer er afgeweken wordt van deze default wordt dit in een BSM aangegeven.

Metagegeven Defaultwaarde
Is afgeleid (bij Koppelvlak) Ja
Is afgeleid (bij andere elementen) Ja
Serialisatie hal+json
toelichting opnemen vanaf SIM

Opmerking met betrekking tot de kardinaliteit van relaties: deze staat niet in de tabel. Deze kennen geen defaultwaarde. De kardinaliteit aan de doel kant moet altijd worden aangegeven. De kardinaliteit aan de bron/eigenaar kant van een relatie is optioneel om in te vullen, wanneer er niets is ingevuld dan wordt er niets over de kardinaliteit gezegd en kent deze geen default waarde (in de praktijk betekent dit dat een kardinaliteit aan de bron kant als 0..* geïmplementeerd wordt).

4. Metamodel in UML

4.1 Structuur metamodel in UML

Dit hoofdstuk beschrijft hoe je een BSM kan maken in UML, oftewel hoe de modelelementen uit het hoofdstuk Algemeen worden uitgedrukt in UML.

De eerste paragraaf bevat diagrammen, in UML. Elk diagram geeft een aantal modelelementen weer.

Uitgangspunten voor het metamodel in UML zijn:

Elk modelelement heeft een MIM metaclass. Deze wordt in UML in een BSM gemodelleerd als een extensie van een Metaclass van UML 2.5 en een bijbehorende stereotype.

VOORBEELD

Het MBG modelelement Padtype wordt gemodelleerd als een UML-Class met stereotype «Padtype».

MIM metaclass Stereotype Metaclass UML 2.5 In EA
Padtype «Padtype» (UML) Class Class

De meest linkse kolom bevat het MBG modelelement, zoals bedoeld in het hoofdstuk Metamodel Algemeen. De 2e en 3e kolom bevatten de uitdrukking van het MBG in UML, versie 2.5. De 2e en 5e kolom bevatten de uitdrukking van het MIM in Sparx Enterprise Architect. Deze gebruikt Class (i.p.v. UML-Class). Deze UML tool is (uiteraard) geen onderdeel van de MBG specificatie. Het is zeker niet verplicht om deze te gebruiken, u kunt uw eigen tool gebruiken. Deze kolom staat erbij om illustratief aan te geven dat het soms nodig kan zijn om, afhankelijk van de tool, net iets specifieker aan te geven hoe het MBG in de tool exact uitgedrukt wordt.

Alle modelelementen hebben een UML-metaclass (UML 2.5) als basis, deze is aangegeven als ‘blauw gekleurde’ metaclass.

4.1.1 Kern

Figuur 3 Diagram: Kern zonder Metagegevens
MIM metaclass Stereotype Metaclass UML 2.5 In EA
Getberichttype «Getberichttype» (UML) Class Class
Postberichttype «Postberichttype» (UML) Class Class
Putberichttype «Putberichttype» (UML) Class Class
Patchberichttype «Patchberichttype» (UML) Class Class
Deleteberichttype «Deleteberichttype» (UML) Class Class
EntiteitRelatie «EntiteitRelatie» (UML) Association Association
PadRelatie «PadRelatie» (UML) Association Association
Padtype «Padtype» (UML) Class Class
Generalisatie «Generalisatie» (UML) Association Association
Interface «Interface» (UML) Class Class

4.1.2 Groepering

Figuur 4 Diagram: Groepering
MIM metaclass Stereotype Metaclass UML 2.5 In EA
Koppelvlak «Koppelvlak» (UML) Package Package
Domein «Domein» (UML) Package Package
Bericht «Bericht» (UML) Package Package

4.2 Nadere specificatie metagegevens in UML

Deze paragraaf is een aanvulling op de paragraaf 'Specificatie metagegevens' in het hoofdstuk Metamodel Algemeen.

Noot

4.2.1 Modellering metagegevens voor objecten en attributen in UML

4.2.1.1 Specificatie voor «Berichttype»

Alle classes die overerven van de Berichttype class worden naar de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven.
Heeft altijd de waarde ‘request’, ‘requestbody’ of ‘response’
name van de metaclass Named element Name
Definitie 0..1 Algemeen metagegeven. Body van de metaclass Comment Notes
heeft entiteitrelatie 1..2 Binding aan een EntiteitRelatie. owned element = UML-Relationship association
heeft padrelatie 1 Binding aan een PadRelatie. owned element = UML-Relationship association
berichtcode 1 Uniek id voor het typeren van berichten. Tagged value
tag 0..1 Voorziening ter groepering van endpoints. Tagged value
servicename 0..1 Technisch operationid Tagged value
verwijst naar supertype 0..1 Binding aan een generalisatie (naar een Interface). owned element = UML-Relationship association
4.2.1.2 Specificatie voor «Getberichttype»

De Getberichttype classes wordt naast de aspecten in de voorgaande tabel ook nog naar de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Grouping 0..1 Indicatie waarmee wordt aangegeven of de response meerdere resultaten kan teruggeven (collection) of slechts 1 resultaat (resource). Tagged value
Page 0..1 Indicatie waarmee wordt aangegeven of de response geschikt moet zijn voor hal+json pagination. Natuurlijk alleen van toepassing als de serialisatie ook hal+json is. Tagged value
Sort 0..1 Indicatie waarmee wordt aangegeven of de request parameter 'Sort' moet worden opgenomen in het bericht. Tagged value
4.2.1.3 Specificatie voor «Padtype»

De Padtype classes worden naar de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
heeft padrelatie 1 Binding aan een PadRelatie. owned element = UML-Relationship association
custom_path_facet 0..1 Het deel van de messagepath dat niet uit het model afgeleid kan worden. Tagged value
4.2.1.4 Specificatie voor «Interface»

Interface classes worden naar de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name

4.2.2 Specificatie metagegevens voor relaties

4.2.2.1 Specificatie voor «EntiteitRelatie»

De EntiteitRelatie associaties worden naar de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Positie 0..1 Indien het voor de serialisatie van belang is kan hiermee de positie van het modelelement in de serialisatie gestuurd worden. Tagged value
4.2.2.2 Specificatie voor «PadRelatie»

Voor PadRelatie associaties worden naar de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven.
Heeft altijd de waarde ‘pad’.
name van de metaclass Named element Name
4.2.2.3 Specificatie voor «Generalisatie» tussen berichttypes en interfaces

De generalisaties worden naar het volgende aspect gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Subtype 1 De generalisatie relatie kent twee kanten, de bron kant (source) van de relatie en de doel kant (target) van de relatie. De bron kant van deze generalisatie relatie specificeert een berichttype die een subtype/specialisatie is van het via deze generalisatie relatie aangegeven supertype (zie verwijst naar supertype). Kortweg, het subtype is een specialisatie van het supertype. Het berichttype dat het subtype is van deze generalisatie is verbonden met deze generalisatie. /source: related Element bij Relationship Element Source
verwijst naar supertype 1 Binding van deze generalisatie aan een interface. De generalisatie relatie kent twee kanten, de bron kant (source) van de relatie en de doel kant (target) van de relatie. De doel kant van deze generalisatie relatie specificeert een interface die het supertype de generalisatie is van het via deze generalisatie aangegeven subtype. Kortweg, het supertype is een generalisatie van het subtype. /target: related Element bij Relationship Element = UML-Class Target

4.2.3 Specificatie metagegevens voor packages

4.2.3.1 Specificatie voor «Koppelvlak»

Koppelvlak packages worden naar de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Definitie 0..1 Algemeen metagegeven. Body van de metaclass Comment Notes
beheerder-email 0..1 Het e-Mailadres van de persoon of organisatie die het koppelvlak beheert. Tagged value
Koppelvlak-naam 0..1 Volledige naam van het koppelvlak Tagged value
project_url 0..1 Url van de bij het koppelvlak horende project repository Tagged value
release 1 Datum waarop begonnen is met het realiseren van de betreffende versie van het koppelvlak. Tagged value
Version 1 Het versienummer waaronder het koppelvlak zal worden gepubliceerd. UML-Property Version
Serialisatie 1 Definieert de vorm waarnaar het koppelvlak geserialiseerd moet worden. Tagged value
4.2.3.2 Specificatie voor «Domein»

Domein packages worden naar de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
4.2.3.3 Specificatie voor «Bericht»

Bericht packages worden naar de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name

4.3 UML Tooling

4.3.1 MBG-toolbox

Er is door de MBG beheerder een metamodel profiel gemaakt voor Sparx Enterprise Architect, dat gebruikt kan worden bij het modelleren van een informatiemodel. Dit profiel kan je inladen en daarna kan je kiezen uit de metamodel elementen. Het profiel is faciliterend en zorgt dat (de meeste) modelelementen van een BSM automatisch voldoen aan dit metamodel. Dit profiel is te vinden op MBG profiel - toolbox voor EA.

4.3.2 Extensie op MBG-toolbox

Het is niet vereist om dit profiel te gebruiken en het is ook toegestaan om het profiel naar de behoefte van de eigen organisatie uit te breiden. Het is echter niet toegestaan het profiel te wijzigen, dan wordt niet meer aan MBG voldaan. De reden hiervoor is dat een dergelijk aanpassing niet beheerd kan worden door de MBG-beheerder en er ambiguïteit zal ontstaan bij de interpretatie van het model.

4.3.3 Imvertor

Er is een tool Imvertor, die kan controleren of een BSM voldoet aan dit metamodel en zo niet, wat de reden daarvan is. Deze tool is open source en is te vinden op https://armatiek.nl/imvertor-web.html.

5. Afspraken & Regels

In deze paragraaf gaan we in op een aantal afspraken en regels die van toepassing zijn op een BSM.

5.1 Afspraken rondom naamgeving en definities

Naamgevingsconventies zijn belangrijk om te specificeren. Onderstaande beschrijft enkele punten die op het niveau van dit metamodel zijn afgesproken. De verdere invulling van de naamgevingsconventies is aan de opsteller van een BSM zelf (zie ook bijlage).

5.1.1 Uniciteit van namen van modelelementen

  • Berichttype classes hebben een unieke naam binnen een BSM.
  • Padtype classes hebben een unieke naam binnen een BSM.

5.1.2 Uniekheid van waarden van tagged values

  • De tagged values servicename hebben een unieke naam binnen een BSM

6. Bijlagen

6.1 Diagrammen

6.1.1 Overzicht toegepaste UML metaclasses

Figuur 5 Overzicht toegepaste UML metaclasses

6.1.2 Modelelementen en metagegevens als diagram

Deze bijlage bevat alle modelelementen en metagegevens in één diagram.

Kern

Figuur 6 Modelelementen en metagegevens
  Packages
Figuur 7 Packages

6.2 Metamodel UitwisselingsGegevensmodel (MUG)

Het Bericht StructuurModel (BSM) is in feite een extensie op het UitwisselingsGegevensModel (UGM) dat gebaseerd is op het Metamodel UitwisselingsGegevensmodel (MUG). Het BSM definieert het vehikel waarmee gegevens of een uit te voeren actie naar een endpoint wordt gecommuniceerd en het UGM voorziet in de gegevens die verstuurd dan wel ontvangen worden. Een BSM kan dan ook alle constructs
van een UGM bevatten behalve 'Basismodel'. Daarvoor wordt in een BSM immers 'Koppelvlak' gebruikt.

Een UGM is in de basis een vertaling van een Conceptueel Informatie Model (CIM) naar een ander metamodel. De structuur van een UGM kan in principe gelijk zijn aan die van een CIM maar dat is over het algemeen niet het geval. Waar een CIM een beeld geeft van de informatiebehoefte binnen een domein op conceptueel niveau is het UGM een vertaling daarvan naar een technische structuur.

De in een CIM gebruikte stereotypes kunnen nagenoeg 1 op 1 gemapt worden met de in een UGM gebruikte stereotypes. Om die reden zou een BSM in theorie ook als extensie op een op het MIM gebaseerd CIM kunnen worden gedefinieerd, al ontbreken er dan op de objecten en attributen nog wel diverse tagged values.

In de volgende paragraaf vind je de mapping tussen de stereotypes van het MIM en die van het MUG. In de daarop volgende paragraaf worden per MUG stereotype de op de gerelateerde stereotype in het MIM ontbrekende maar voor het BSM bruikbare of zelfs noodzakelijke tagged values opgesomd.

6.2.1 Mapping MIM op MUG stereotypes

De volgende tabel bevat een mapping tussen de MIM stereotypes en de MUG stereotypes. Stereotypes die wel in het MIM aanwezig zijn maar niet in het MUG zijn opgenomen hebben geen functie bij de berichtdefinitie.

MIM stereotype MUG stereotype
Informatiemodel Basismodel
Gestructureerd Complex datatype
Data element Data element
Domein Domein
Attribuutsoort Element
Objecttype Entiteittype
Enumeratiewaarde Enum
Enumeratie Enumeration
Extern Extern
Externe koppeling Externe koppeling
Gegevensgroep Gegevensgroep
Gegevensgroeptype Groep
Primitief datatype Primitief datatype
Relatiesoort Relatie
Relatierol -
Relatieklasse Relatie-entiteit
Referentie element Tabel Element
Referentielijst Tabel-entiteit
Keuze Union
- Union element
View View
Codelijst Tabel-entiteit
- Intern
Generalisatie -

6.2.2 Metagegevens

De MUG stereotypes in de voorgaande paragraaf kennen een aantal metagegevens. In deze paragraaf worden deze per stereotype beschreven. Metagegevens die zijn toegevoegd t.o.v. het MIM 1.1.1 zijn rood gemaakt behalve daar:

  • waar het eigenlijk een naamswijziging betreft en de relatie met het metagegeven in het MIM erg voor de hand ligt;
  • waar het stereotype waarvan het deel uitmaakt niet kan worden gemapt op een stereotype in het MIM.

Daarnaast zijn de namen van de metagegevens die wel voorkomen op de MIM stereotypes maar niet bij de gerelateerde MUG stereotypes cursief in de eerste kolom van dezelfde tabellen opgenomen. De andere kolommen zijn niet daar niet gevuld.

6.2.2.1 Metagegevens voor «Basismodel»

Basismodel packages hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct zoals gespecificeerd in de catalogus van de desbetreffende (basis)registratie of informatiemodel. Body van de metaclass Comment. Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Informatie-model type - - - -
Informatie-domein - - - -
MIM versie - - - -
MIM extensie - - - -
MIM taal - - - -
Relatie-modellerings-type - - - -
heeft Constraint - - - -
Basis-URI - - - -
Afkorting 0..1 Afkorting van dit model. Deze afkorting wordt o.a. gebruikt waar informatie over het model wordt gepubliceerd. Tagged value
Release 1..1 Datum (in het format yyyymmdd) waarop begonnen is met het realiseren van de betreffende versie van het UGM. De releasedatum wordt mede gebruikt om het Basismodel uniek te identificeren in Imvertor. Tagged value
Versie ID 0..1 De identificatie van de versie/revisie van dit model in het gehanteerde versiebeheersysteem. Tagged value
Web locatie 0..1 Url van de locatie waar het model te vinden is. Tagged value
Niveau 0..1 Het niveau is een waarde uit een beperkte set:
"algemeen" betekent dat het model een fundament is van een ander model en moet worden opgenomen. Het modelleert generieke constructies die deel uitmaken van de echte wereld. Dit omvat meestal abstracte object typen. Het kan andere constructen bevatten.
"specifiek" betekent dat het model een bepaald domein beschrijft of een samenhangend deel ervan.
Tagged value
6.2.2.2 Metagegevens voor «Complex datatype»

Complex datatype classes hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. De naam van het domein package. name van de metaclass Namedelement Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Patroon - - - -
Formeel patroon - - - -
bevat data element 0..* Binding aan een data element, 2 of meer tenzij via generalisatie verkregen. attribute
heeft Constraint - - - -
Positie 0..1 De positie van de construct binnen producten waarin deze opeenvolging een rol speelt. Tagged value
6.2.2.3 Metagegevens voor «Data element»

Data elementen hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. name van de metaclass Namedelement Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Lengte 0..1 De maximale lengte die een attribuut kan hebben. Tagged value
Patroon 0..1 Beschrijving van het gegevenspatroon van een element. Dit kan de basis zijn voor een reguliere expressie. Tagged value
Formeel patroon 0..1 Formele notatie in de vorm van een reguliere expressie van het gegevenspatroon van een element. Tagged value
Kardinaliteit 1 Algemeen metagegeven. lowerValue en upperValue van de metaclass MultiplicityElement Multiplicity
Minimum waarde (inclusief) 0..1 De minimale waarde (inclusief) dat een attribuut moet hebben. Tagged value
Minimum waarde (exclusief) - - - -
Maximum waarde (inclusief)> 0..1 De maximale waarde (inclusief) dat een attribuut mag hebben. Tagged value
Maximum waarde (exclusief) - - - -
heeft datatype 1 Binding aan een datatype. datatype = UML-datatype type = datatype
heeft Constraint - - - -
Regels 0..1 Beschrijving van de niet in andere tagged values vast te leggen regels waaraan het element moet voldoen. Tagged value
Example 0..1 Voorbeeld waarde. Tagged value
Minimum lengte 0..1 De minimale lengte die een attribuut moet hebben. Tagged value
Positie 0..1 De positie van de construct binnen producten waarin deze opeenvolging een rol speelt. Tagged value
6.2.2.4 Metagegevens voor «Domein»

Domein packages hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. De naam van het domein package. name van de metaclass Namedelement Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct zoals gespecificeerd in de catalogus van de desbetreffende (basis)registratie of informatiemodel. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
heeft Constraint - - - -
Basis-URI - - - -
Afkorting 0..1 Afkorting van dit model. Deze afkorting wordt o.a. gebruikt waar informatie over het model wordt gepubliceerd. Tagged value
Release 1 Datum (in het format yyyymmdd) waarop begonnen is met het realiseren van de betreffende versie van het Domein. Deze moet gelijk zijn aan of van recenter datum zijn dan de taggedvalue met dezelfde naam op «Basismodel». De releasedatum wordt mede gebruikt om het Domein uniek te identificeren in Imvertor. Tagged value
Versie ID 0..1 De identificatie van de versie/revisie van dit model in het gehanteerde versiebeheersysteem. Tagged value
Web locatie 0..1 Url van de locatie waar het domein te vinden is. Tagged value
6.2.2.5 Metagegevens voor «Element»

Elementen hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Lengte 0..1 De maximale lengte die een attribuut kan hebben. Tagged value
Patroon 0..1 Beschrijving van het gegevenspatroon van een element. Dit kan de basis zijn voor een reguliere expressie. Tagged value
Formeel patroon 0..1 Formele notatie in de vorm van een reguliere expressie van het gegevenspatroon van een element. Tagged value
Heeft tijdlijn geldigheid - - - -
Indicatie materiële historie 0..1 Voorziening waarmee aangegeven kan worden of materiële historie van toepassing is op de constructie. Tagged value
Heeft tijdlijn registratie - - - -
Indicatie formele historie 0..1 Voorziening waarmee aangegeven kan worden of formele historie van toepassing is op de constructie. Tagged value
Kardinaliteit 1 Algemeen metagegeven lowerValue en upperValue van de metaclass Multiplicity Element Multiplicity
Indicatie authentiek 0..1 Aanduiding of het een authentiek gegeven (element) betreft. Tagged value
Indicatie classificerend - - - -
Mogelijk geen waarde 0..1 Indicatie waarmee wordt aangegeven dat het gegeven ook geen waarde kan hebben. Tagged value
Identificerend 0..1 Algemeen metagegeven isID bij de metaclass Property isID
Minimum waarde (inclusief) 0..1 De minimale waarde (inclusief) dat een attribuut moet hebben. Tagged value
Minimum waarde exclusief - - - -
Maximum waarde (inclusief) 0..1 De maximale waarde (inclusief) dat een attribuut mag hebben. Tagged value
Maximum waarde exclusief - - - -
Eenheid - - - -
heeft datatype 1 Binding aan een datatype. datatype = UML-datatype type = datatype
heeft Constraint - - - -
Indicatie afleidbaar - - - -
Regels 0..1 Beschrijving van de niet in andere tagged values vast te leggen regels waaraan het element moet voldoen. Tagged value
Indicatie in onderzoek 0..1 De indicatie of te bevragen is dat er twijfel is of is geweest aan de juistheid van de attribuutwaarde en dat een onderzoek wordt of is uitgevoerd naar de juistheid van de attribuutwaarde. Tagged value
Minimum lengte 0..1 De minimale lengte die een attribuut moet hebben. Tagged value
Example 0..1 Voorbeeldwaarde van een property. Tagged value
Positie 0..1 De positie van de construct binnen producten waarin deze opeenvolging een rol speelt. Tagged value
6.2.2.6 Metagegevens voor «Entiteittype»

Entiteittype classes hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst 0..1 - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Unieke aanduiding 1 De identificerende kenmerken van een entiteit die een instantie van het entiteittype uniek identificeren. Deze kenmerken worden in UML gemodelleerd als element en/of relatie dus dit metagegeven hoeft niet apart te worden gespecificeerd bij een entiteittype, het is afleidbaar. Voor entiteittypen die deel uitmaken van een (basis)registratie betreft dit de wijze waarop daarin voorkomende entiteiten (van dit type) uniek in de registratie worden aangeduid. UML isID isId bij element, --- of --- stereotype «isId» bij target role relatie --- of --- een combinatie van deze twee, elk hiervan meer keren toepasbaar
Datum opname - - - -
Populatie - - - -
Kwaliteit - - - -
Indicatie abstract object - - - -
heeft element 0..* Binding aan een element. owned element = UML-property attribute
heeft groep 0..* Binding aan een gegevensgroep. owned element = UML-property attribute
heeft relatie 0..* Binding aan een relatie of relatie-entiteit. owned element = UML-Relationship association
heeft externe koppeling 0..* Binding aan een externe koppeling. owned element = UML-Relationship association
verwijst naar supertype 0..* Binding aan een generalisatie (naar een ander objecttype). owned element = UML-Relationship association
heeft Constraint - - - -
Endpoint beschikbaar 0..1 Voorziening waarmee kan worden aangegeven dat er voor een entiteit al dan niet een resource endpoint beschikbaar is. Tagged value
Naam in meervoud 0..1 Voorziening om een entiteit een meervoudsnaam te kunnen geven. Deze wordt gebruikt als propertynaam van een entiteit in een yaml bestand. Tagged value
6.2.2.7 Metagegevens voor «Enum»

Enums hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Code 0..1 De in een registratie aan de enumeratiewaarde toegekend unieke code. Alias van de metaclass Element Import Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
heeft Constraint - - - -
Positie 0..1 De positie van de construct binnen producten waarin deze opeenvolging een rol speelt. Tagged value
6.2.2.8 Metagegevens voor «Enumeration»

Enumeration classes hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
bevat enumeratiewaarde - - - -
bevat enum 1..* Binding aan een enum owned element = UML-EnumerationLiteral EnumerationLiteral
heeft Constraint - - - -
6.2.2.9 Metagegevens voor «Extern»

Extern packages hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. De naam van het domein package. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct zoals gespecificeerd in de catalogus van de desbetreffende (basis)registratie of informatiemodel. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Locatie - - - -
heeft Constraint - - - -
Basis-URI - - - -
Beheerder 0..1 Naam van de beheerder van het model. Tagged value
Data locatie 0..1 De locatie waar informatie over de gegevens van een construct te vinden zijn. Wanneer het een external of view package betreft: De verwijzing naar de locatie van het bijbehorende informatiemodel waar dit package een representatie van is. In alle andere gevallen moet het een waardenlijst betreffen. Het gaat dan om de verwijzing naar de plek waar de waarden beschikbaar worden gesteld. De verwijzing heeft de vorm van een URI conform een gekozen URI strategie. Tagged value
Release 0..1 Datum (in het format yyyymmdd) waarop begonnen is met het realiseren van de betreffende versie van het Externe package. Deze moet gelijk zijn aan of van recenter datum zijn dan de taggedvalue met dezelfde naam op «Basismodel». De releasedatum wordt mede gebruikt om het Externe package uniek te identificeren in Imvertor. Tagged value
Versie ID 0..1 De identificatie van de versie/revisie van dit model-element in het gehanteerde versiebeheersysteem. Tagged value
Web locatie 0..1 Url van de locatie waar het externe package te vinden is. Tagged value
6.2.2.10 Metagegevens voor «Externe koppeling»

Externe koppeling packages hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Unidirectioneel 1 Algemeen metagegeven. Direction van de betreffende assiciation (van source naar target)
Relatie eigenaar 1 Algemeen metagegeven. /source: related Element bij Relationship Element Source
Relatie doel 1 Algemeen metagegeven. /target: related Element bij Relationship Element Target
Aggregatietype 1 Algemeen metagegeven. AggregationKind bij metaclass Property Aggregation van de source role met waarde composite of shanew
Kardinaliteit 1 Algemeen metagegeven lowerValue en upperValue van de metaclass MultiplicityElement M_ultiplicity van de target role_
Kardinaliteit relatie bron 1 Algemeen metagegeven lowerValue en upperValue van de metaclass MultiplicityElement /source Multiplicity van de source role
Indicatie materiële historie 0..1 Voorziening waarmee aangegeven kan worden of materiële historie van toepassing is op de constructie. Tagged value
Indicatie formele historie 0..1 Voorziening waarmee aangegeven kan worden of formele historie van toepassing is op de constructie. Tagged value
Indicatie authentiek 0..1 Aanduiding of het een authentiek gegeven betreft. Tagged value
Indicatie afleidbaar - - - -
Mogelijk geen waarde - - - -
verwijst naar _relatiedoel 0..* Binding aan een entiteittype /target: related Element bij Relationship Element = UML-Class association target = Class
heeft Constraint - - - -
6.2.2.11 Metagegevens voor «Gegevensgroep»

Gegevensgroep classes hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Kardinaliteit 1 Algemeen metagegeven lowerValue en upperValue van de --metaclass Multiplicity Element Multiplicity
Indicatie authentiek 0..1 Aanduiding of het een authentiek gegeven (attribuutsoort) betreft. Tagged value
heeft groep 1 Binding aan een gegevensgroeptype owned element = UML-Class type = Class
heeft Constraint - - - -
Eenheid - - - -
Indicatie in onderzoek 0..1 De indicatie of te bevragen is dat er twijfel is of is geweest aan de juistheid van de attribuutwaarde en dat een onderzoek wordt of is uitgevoerd naar de juistheid van de attribuutwaarde. Tagged value
Mogelijk geen waarde 0..1 Indicatie waarmee wordt aangegeven dat het gegeven ook geen waarde kan hebben. Tagged value
Indicatie formele historie 0..1 Voorziening waarmee aangegeven kan worden of formele historie van toepassing is op de constructie. Tagged value
Indicatie materiële historie 0..1 Voorziening waarmee aangegeven kan worden of materiële historie van toepassing is op de constructie. Tagged value
6.2.2.12 Metagegevens voor «Groep»

Groepen hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Indicatie authentiek 0..1 Aanduiding of het een authentiek gegeven betreft. Tagged value
heeft Constraint - - - -
Groepnaam 0..1 Voorziening om een groep aangepaste naam te kunnen geven. Tagged value
Mogelijk geen waarde 0..1 Indicatie waarmee wordt aangegeven dat het gegeven ook geen waarde kan hebben. Tagged value
Regels 0..1 Beschrijving van de niet in andere tagged values vast te leggen regels waaraan het construct moet voldoen. Tagged value
6.2.2.13 Metagegevens voor «Intern»

Interne packages hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Definitie 0..1 De beschrijving van de betekenis van de construct zoals gespecificeerd in de catalogus van de desbetreffende (basis)registratie of informatiemodel. Body van de metaclass Comment. Notes
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Release 1..1 Datum (in het format yyyymmdd) waarop begonnen is met het realiseren van de betreffende versie van het Interne package. De releasedatum wordt mede gebruikt om het Interne package uniek te identificeren in Imvertor. Tagged value
6.2.2.14 Metagegevens voor «Primitief datatype»

Primitieve datatypes hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Lengte 0..1 De maximale lengte die een attribuut kan hebben. Tagged value
Patroon 0..1 Beschrijving van het gegevenspatroon van een element. Dit kan de basis zijn voor een reguliere expressie. Tagged value
Formeel patroon 0..1 Formele notatie in de vorm van een reguliere expressie van het gegevenspatroon van een element. Tagged value
heeft Constraint - - - -
Maximum waarde (inclusief) 0..1 De maximale waarde (inclusief) dat een attribuut mag hebben. Tagged value
Minimum lengte 0..1 De minimale lengte die een attribuut moet hebben. Tagged value
Minimum waarde (inclusief) 0..1 De minimale waarde (inclusief) dat een attribuut moet hebben Tagged value
6.2.2.15 Metagegevens voor «Relatie»

De Relatie associaties hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Identificerend 0..1 Algemeen metagegeven isID bij de metaclass Property isId
Unidirectioneel 1 Algemeen metagegeven. Direction van de betreffende association (van source naar target)
Relatie eigenaar 1 Algemeen metagegeven. /source: related Element bij Relationship Element Source
Relatie doel 1 Algemeen metagegeven. /target: related Element bij Relationship Element Target
Aggregatietype 1 Algemeen metagegeven. AggregationKind bij metaclass Property Aggregation van de source role met waarde composite of shanew
Kardinaliteit 1 Algemeen metagegeven. lowerValue en upperValue van de metaclass MultiplicityElement /target Multiplicity van de target role
Kardinaliteit relatie bron 1 Algemeen metagegeven. lowerValue en upperValue van de metaclass MultiplicityElement /source Multiplicity van de source role
heeft tijdlijn geldigheid - - - -
Indicatie materiële historie 0..1 Voorziening waarmee aangegeven kan worden of materiële historie van toepassing is op de constructie. Tagged value
heeft tijdlijn registratie - - - -
Indicatie formele historie 0..1 Voorziening waarmee aangegeven kan worden of formele historie van toepassing is op de constructie. Tagged value
Indicatie authentiek 0..1 Aanduiding of het een authentiek gegeven (attribuutsoort) betreft. Tagged value
Indicatie afleidbaar 1 Algemeen metagegeven. isDerived bij UML metaclass Assocation isDerived
Mogelijk geen waarde 0..1 Indicatie waarmee wordt aangegeven dat het gegeven ook geen waarde kan hebben. Tagged value
verwijst naar relatiedoel 0..* Binding aan een objecttype. /target: related Element bij Relationship Element = UML-Class association target = Class
heeft Constraint - - - -
Regels 0..1 Beschrijving van de niet in andere tagged values vast te leggen regels waaraan het element moet voldoen. Tagged value
Indicatie in onderzoek 0..1 De indicatie of te bevragen is dat er twijfel is of is geweest aan de juistheid van de attribuutwaarde en dat een onderzoek wordt of is uitgevoerd naar de juistheid van de attribuutwaarde. Tagged value
Target role in meervoud 0..1 Voorziening om de target role een meervoudsnaam te kunnen geven. Deze wordt gebruikt als propertynaam van een relatie in een yaml bestand. Tagged value
Positie 0..1 De positie van de construct binnen producten waarin deze opeenvolging een rol speelt. Tagged value
6.2.2.16 Metagegevens voor «Relatie-entiteit»

De Relatie-entiteit classes hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Herkomst definitie - - - -
Unidirectioneel 1 Algemeen metagegeven. Direction van de betreffende assiciation (van source naar target)
Relatie eigenaar 1 Algemeen metagegeven. /source: related Element bij Relationship Element Source
Relatie doel 1 Algemeen metagegeven. /target: related Element bij Relationship Element Target
Aggregatietype 1 Algemeen metagegeven. AggregationKind bij metaclass Property Aggregation van de source role met waarde composite of shanew.
Kardinaliteit 1 Algemeen metagegeven. lowerValue en upperValue van de metaclass MultiplicityElement /target Multiplicity van de target role.
Kardinaliteit relatie bron 1 Algemeen metagegeven. lowerValue en upperValue van de metaclass MultiplicityElement /source Multiplicity van de source role
Indicatie materiële historie 0..1 Voorziening waarmee aangegeven kan worden of materiële historie van toepassing is op de constructie. Tagged value
Indicatie formele historie 0..1 Voorziening waarmee aangegeven kan worden of formele historie van toepassing is op de constructie. Tagged value
Indicatie authentiek 0..1 Aanduiding of het een authentiek gegeven (attribuutsoort) betreft. Tagged value
Indicatie afleidbaar 1 Algemeen metagegeven. isDerived bij UML metaclass Assocation isDerived
Mogelijk geen waarde 0..1 Indicatie waarmee wordt aangegeven dat het gegeven ook geen waarde kan hebben. Tagged value
heeft attribute 0..* Binding aan een attribuutsoort owned element = UML-property attribute
verwijst naar relatiedoel 0..* Binding aan een objecttype. /target: related Element bij Relationship Element = UML-Class association target = Class
heeft gegevensgroep 0..* Binding aan een gegevensgroep owned element = UML-property attribute
6.2.2.17 Metagegevens voor «Tabel Element»

Tabel elementen hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Lengte 0..1 De maximale lengte die een attribuut kan hebben. Tagged value
Patroon 0..1 Beschrijving van het gegevenspatroon van een element. Dit kan de basis zijn voor een reguliere expressie. Tagged value
Formeel patroon 0..1 Formele notatie in de vorm van een reguliere expressie van het gegevenspatroon van een element. Tagged value
Kardinaliteit 1 Algemeen metagegeven lowerValue en upperValue van de --metaclass Multiplicity Element Multiplicity
Identificerend 0..1 Algemeen metagegeven isID bij de metaclass Property isID
Minimumwaarde inclusief - - - -
Minimumwaarde exclusief - - - -
Maximumwaarde inclusief - - - -
Maximumwaarde exclusief - - - -
Eenheid - - - -
heeft datatype 1 Binding aan een datatype. datatype = UML-datatype type = datatype
Minimum lengte 0..1 De minimale lengte die een attribuut moet hebben. Tagged value
Positie 0..1 De positie van de construct binnen producten waarin deze opeenvolging een rol speelt. Tagged value
6.2.2.18 Metagegevens voor «Tabel-entiteit»

Tabel-entiteit classes hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Locatie - - - -
bevat tabel element 1..* Binding aan een tabel element. owned element = UML-property attribute
verwijst naar supertype 0..* Binding aan een generalisatie (naar een andere referentie lijst). owned element = UML-Relationship association
heeft Constraint - - - -
Web locatie 0..1 Url van de locatie waar de tabel is opgeslagen of geraadpleegd kan worden. Tagged value
6.2.2.19 Metagegevens voor «Union»

Union datatypes hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Is gedefinieerd in - - - -
Begrip - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
heeft datatypekeuze 0..* Binding van een datatype, in UML via een additionale UML-property met stereotype keuze owned element = UML-property en deze heeft en datatype type
heeft attribuutkeuze 0..* Binding aan een attribuutsoort. owned element = UML-Property attribute
heeft relatiedoelkeuze 0..* Binding aan een relatiesoort. owned element = UML-Relationship association
heeft Constraint - - - -
6.2.2.20 Metagegevens voor «Union element»

Union datatypes hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Naam 1 Algemeen metagegeven name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Definitie 0..1 De beschrijving van de betekenis van de construct. Body van de metaclass Comment Notes
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Patroon 0..1 Beschrijving van het gegevenspatroon van een element. Dit kan de basis zijn voor een reguliere expressie. Tagged value
Formeel patroon 0..1 Formele notatie in de vorm van een reguliere expressie van het gegevenspatroon van een element. Tagged value
Positie 0..1 De positie van de construct binnen producten waarin deze opeenvolging een rol speelt. Tagged value
6.2.2.21 Metagegevens voor «View»

View packages hebben de volgende aspecten gespecificeerd:

Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
URI - - - -
Naam 1 Algemeen metagegeven. Deze is, indien mogelijk, analoog aan de naamgeving in het externe schema waar de view over gaat, eventueel met een prefix. name van de metaclass Named element Name
Alias 0..1 Algemeen metagegeven. UML-Property Alias
Herkomst - - - -
Definitie 0..1 De beschrijving van de betekenis van de construct zoals gespecificeerd in de catalogus van de desbetreffende (basis)registratie of informatiemodel. Body van de metaclass Comment Notes
Herkomst definitie - - - -
Toelichting 0..1 Aanvullende beschrijving van het construct met de bedoeling dat te verduidelijken. Tagged value
Datum opname - - - -
Locatie - - - -
heeft Constraint - - - -
Basis-URI - - - -
Afkorting 0..1 Afkorting van dit model. Deze afkorting wordt o.a. gebruikt waar informatie over het model wordt gepubliceerd. Tagged value
Data locatie 1 De locatie waar informatie over de gegevens van een construct te vinden zijn. Wanneer het een external of view package betreft: De verwijzing naar de locatie van het bijbehorende informatiemodel waar dit package een representatie van is. In alle andere gevallen moet het een waardenlijst betreffen. Het gaat dan om de verwijzing naar de plek waar de waarden beschikbaar worden gesteld. De verwijzing heeft de vorm van een URI conform een gekozen URI strategie. Tagged value
Versie ID*/span> 0..1 De identificatie van de versie/revisie van dit model in het gehanteerde versiebeheersysteem. Tagged value
Release 1 Datum (in het format yyyymmdd) waarop begonnen is met het realiseren van de betreffende versie van de View. Deze moet gelijk zijn aan of van recenter datum zijn dan de taggedvalue met dezelfde naam op «Basismodel». De releasedatum wordt mede gebruikt om de View uniek te identificeren in Imvertor. Tagged value
Web locatie 0..1 Url van de locatie waar de view te vinden is. Tagged value

6.2.3 MUG-toolbox

Er is door de MUG beheerder een metamodel profiel gemaakt voor Sparx Enterprise Architect, dat gebruikt kan worden bij het modelleren van een Uitwisselings GegevensModel (UGM) en dus ook bij het modelleren van de UGM modelelementen in een BSM. Dit profiel kan je inladen en daarna kan je kiezen uit de metamodel elementen. Het profiel is faciliterend en zorgt dat (de meeste) UGM modelelementen automatisch voldoen aan dit metamodel. Dit profiel is te vinden op MUG profiel - toolbox voor EA.

6.3 Specifieke MBG metagegevens voor Imvertor

In dit hoofdstuk worden specifiek voor Imvertor gedefinieerde metagegevens beschreven. Deze worden daartoe toegevoegd aan het MBG profiel voor Enterprise Architect.

6.3.1 Specificatie metagegevens

6.3.1.1 Metagegeven: Supplier-name

Toelichting:

Een BSM kan worden afgeleid van maximaal één UGM model. Dit metadatagegeven bevat de naam van dat UGM model. Als dit metagegeven niet wordt gedefinieerd of als het geen waarde heeft dan moet het metagegeven ‘Is afgeleid’ de waarde ‘Nee’ hebben. Als dit metagegeven van een waarde is voorzien moeten de metagegevens ‘Supplier-project’ en ‘Supplier-release’ ook van een waarde worden voorzien. Gezamenlijk moeten deze een met Imvertor verwerkt model identificeren.

Toepassing: Koppelvlak (optioneel)

6.3.1.2 Metagegeven: Supplier-project

Toelichting:

Een BSM kan worden afgeleid van maximaal één UGM model. Dit metadatagegeven krijgt daarom normaliter de waarde ‘UGM’. Als dit metagegeven niet wordt gedefinieerd of als het geen waarde heeft dan moet het metagegeven ‘Is afgeleid’ de waarde ‘Nee’ hebben. Als dit metagegeven van een waarde is voorzien moeten de metagegevens ‘Supplier-name’ en ‘Supplier-release’ ook van een waarde worden voorzien. Gezamenlijk moeten deze een met Imvertor verwerkt model identificeren.

Toepassing: Koppelvlak (optioneel)

6.3.1.3 Metagegeven: Supplier-release

Toelichting:

Een BSM kan worden afgeleid van maximaal één UGM model. Dit metadatagegeven krijgt daarom normaliter de waarde van het metagegeven ‘release’ van dat ‘UGM’ model.De datum wordt uitgedrukt in het volgende formaat ‘jjjjmmdd’. Als dit metagegeven niet wordt gedefinieerd of als het geen waarde heeft dan moet het metagegeven ‘Is afgeleid’ de waarde ‘Nee’ hebben.

Als dit metagegeven van een waarde is voorzien moeten de metagegevens ‘Supplier-name’ en ‘Supplier-project’ ook van een waarde worden voorzien. Gezamenlijk moeten deze een met Imvertor verwerkt model identificeren.

Bijvoorbeeld: 20230404

Toepassing: Koppelvlak (optioneel)

6.3.1.4 Metagegeven: Is afgeleid

Toelichting op 1:

Een Berichtstructuurmodel kan van één UGM worden afgeleid. Indien dit niet het geval is dan heeft dit metagegeven de waarde ‘Nee’. Indien dit de waarde ‘Ja’ heeft, leeg is of niet aanwezig is dan dienen de metagegevens ‘Supplier-name’, ‘Supplier-project’ en ‘Supplier-release’ een waarde te hebben.

Toepassing: Koppelvlak (optioneel)

Toelichting op 2:

De MBG modelelementen worden zelf nooit afgeleid van elementen uit een UGM. Dit metagegeven heeft daarom altijd de waarde ‘Nee’.

Toepassing: alle modelelementen uitgezonderd Koppelvlak en Interface (verplicht).

6.3.1.5 Metagegeven: toelichting opnemen vanaf

Toelichting:

Een BSM kan worden afgeleid van een UGM en via dat UGM van een SIM. Beide modelniveau’s evenals een BSM zelf bevatten documentatie. Bij het genereren van specificaties kunnen de documentatie properties gevuld worden met de documentatie vanuit alle drie de modellen. Dit metagegeven bepaald welke niveaus daarin meegenomen worden.

Bij de waarde ‘SIM’ wordt de documentatie betrokken van alle modelniveau’s. Als alleen modellen op het niveau van UGM en BSM moeten worden meegenomen bij het genereren van documentatie krijgt dit metagegeven de waarde ‘UGM’ en als alleen documentatie in het BSM moet worden meegenomen de waarde ‘BSM’.

Als dit metagegeven niet wordt gedefinieerd of als het leeg is dan wordt er vanuit gegaan dat het de waarde ‘SIM’ heeft.

Toepassing: Koppelvlak (optioneel)

6.3.2 Nadere specificatie metagegevens in UML

6.3.2.1 Specificatie voor «Berichttype»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 1 Geeft aan of de constructie al dan niet is afgeleid van een construct in een ‘supplier model’. Tagged value
6.3.2.2 Specificatie voor «Padtype»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 1 Geeft aan of de constructie al dan niet is afgeleid van een construct in een ‘supplier model’. Tagged value
6.3.2.3 Specificatie voor « EntiteitRelatie »
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 1 Geeft aan of de constructie al dan niet is afgeleid van een construct in een ‘supplier model’. Tagged value
6.3.2.4 Specificatie voor «PadRelatie»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 1 Geeft aan of de constructie al dan niet is afgeleid van een construct in een ‘supplier model’. Tagged value
6.3.2.5 Specificatie voor «Koppelvlak»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Supplier-name 0..1 Naam van het model waar het BSM model van is afgeleid. Tagged value
Supplier-project 0..1 Projecttype van het model waar het BSM model van is afgeleid. Tagged value
Supplier-release 0..1 Waarde van het metadatgegeven ‘release’ van het model waar het BSM model van is afgeleid. Tagged value
toelichting opnemen vanaf 0..1 Het hoogste modelniveau op basis waarvan de documentatie wordt gegenereerd. Tagged value
Is afgeleid 0..1 Geeft aan of de constructie al dan niet is afgeleid van een construct in een ‘supplier model’. Tagged value

6.4 Specifieke MUG metagegevens voor Imvertor

In dit hoofdstuk worden specifiek voor Imvertor gedefinieerde metagegevens beschreven. Deze worden daartoe toegevoegd aan het MUG profiel voor Enterprise Architect.

6.4.1 Specificatie metagegevens

6.4.1.1 Imvertor

Toelichting:

De waarde 'model' voor dit metagegeven maakt het mogelijk om een model te verwerken met Imvertor. Het is tevens de enige waarde voor dit metagegeven en ook de default waarde.

Toepassing: Basismodel (optioneel)

6.4.1.2 Metagegeven: Supplier-name

Toelichting:

Een UGM kan worden afgeleid van maximaal één SIM model. Dit metadatagegeven bevat de naam van dat SIM model. Als dit metagegeven niet wordt gedefinieerd of als het geen waarde heeft dan moet het metagegeven ‘Is afgeleid’ de waarde ‘Nee’ hebben.

Als dit metagegeven van een waarde is voorzien moeten de metagegevens ‘Supplier-project’ en ‘Supplier-release’ ook van een waarde worden voorzien. Gezamenlijk moeten deze een met Imvertor verwerkt model identificeren.

Toepassing: Basismodel (optioneel)

6.4.1.3 Metagegeven: Supplier-project

Toelichting:

Een UGM kan worden afgeleid van maximaal één SIM model. Dit metadatagegeven krijgt daarom normaliter de waarde ‘SIM’. Als dit metagegeven niet wordt gedefinieerd of als het geen waarde heeft dan moet het metagegeven ‘Is afgeleid’ de waarde ‘Nee’ hebben.

Als dit metagegeven van een waarde is voorzien moeten de metagegevens ‘Supplier-name’ en ‘Supplier-release’ ook van een waarde worden voorzien. Gezamenlijk moeten deze een met Imvertor verwerkt model identificeren.

Toepassing: Basismodel (optioneel)

6.4.1.4 Metagegeven: Supplier-release

Toelichting:

Een UGM kan worden afgeleid van maximaal één SIM model. Dit metadatagegeven krijgt daarom normaliter de waarde van het metagegeven ‘release’ van dat ‘SIM’ model.De datum wordt uitgedrukt in het volgende formaat ‘jjjjmmdd’. Als dit metagegeven niet wordt gedefinieerd of als het geen waarde heeft dan moet het metagegeven ‘Is afgeleid’ de waarde ‘Nee’ hebben.

Als dit metagegeven van een waarde is voorzien moeten de metagegevens ‘Supplier-name’ en ‘Supplier-project’ ook van een waarde worden voorzien. Gezamenlijk moeten deze een met Imvertor verwerkt model identificeren.

Bijvoorbeeld: 20230404

Toepassing: Basismodel (optioneel)

6.4.1.5 Metagegeven: Is afgeleid

Toelichting:

Een UitwisselingsGegevensmodel kan van één SIM worden afgeleid. Indien dit niet het geval is dan heeft dit metagegeven de waarde ‘Nee’. Indien dit de waarde ‘Ja’ heeft, leeg is of niet aanwezig is dan dienen de metagegevens ‘Supplier-name’, ‘Supplier-project’ en ‘Supplier-release’ een waarde te hebben

Toepassing: alle modelelementen (optioneel).

6.4.1.6 Ref-release

Toelichting:

Waarde van het metadatagegeven ‘release’ van het model waarnaar wordt verwezen.

Toepassing: De datum wordt uitgedrukt in het volgende formaat ‘jjjjmmdd’.

Bijvoorbeeld: 20230404

Toepassing: Extern en View (optioneel)

6.4.1.7 Ref-version

Toelichting:

Het versienummer wordt uitgedrukt in het volgende formaat ‘x.x.x’.

Bijvoorbeeld: 1.2.0

Toepassing: Extern en View (optioneel)

6.4.1.8 Supplier-package-name

Toelichting:

Deze naam wordt opgegeven als deze niet gelijk is aan de naam van het package waar deze tagged value op geplaatst is.

Toepassing: View (optioneel)  

6.4.2 Metagegevens

6.4.2.1 Metagegevens voor «Basismodel»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Imvertor 0..1 De (default) waarde 'model' voor deze property geeft aan dat het pakket een volledig model is dat kan worden verwerkt door de Imvertor-software. Deze waarde is vereist door de Imvertor add-in op Enterprise Architect. Tagged value
Supplier-name 0..1 Naam van het model waar het UGM model van is afgeleid. Tagged value
Supplier-project 0..1 Projecttype van het model waar het UGM model van is afgeleid. Tagged value
Supplier-release 0..1 Waarde van het metadatagegeven ‘release’ van het model waar het UGM model van is afgeleid. Tagged value
Is afgeleid 0..1 Geeft aan of de constructie al dan niet is afgeleid van een construct in een ‘supplier model’. Tagged value
6.4.2.2 Metagegevens voor «Complex datatype»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.3 Metagegevens voor «Data element»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.4 Metagegevens voor «Element»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.5 Metagegevens voor «Entiteittype»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.6 Metagegevens voor «Enumeration»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.7 Metagegevens voor «Enum»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.8 Metagegevens voor «Extern»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Ref-release 0..1 Waarde van het metadatagegeven ‘release’ van het model waar het Extern package naar verwijst. Tagged value
Ref-version 0..1 Waarde van het metadatagegeven ‘Version’ van het model waar het Extern package naar verwijst. Tagged value
Is afgeleid 0..1 Geeft aan of de constructie al dan niet is afgeleid van een construct in een ‘supplier model’. Tagged value
6.4.2.9 Metagegevens voor «Gegevensgroep»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.10 Metagegevens voor «Groep»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.11 Metagegevens voor «Intern»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Geeft aan of de constructie al dan niet is afgeleid van een construct in een ‘supplier model’. Tagged value
6.4.2.12 Metagegevens voor «Primitief datatype»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.13 Metagegevens voor «Relatie»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Geeft aan of de constructie al dan niet is afgeleid van een construct in een ‘supplier model’. Tagged value
6.4.2.14 Metagegevens voor «Relatie-entiteit»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.15 Metagegevens voor «Tabel Element»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.16 Metagegevens voor «Tabel-entiteit»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.17 Metagegevens voor «Union»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.18 Metagegevens voor «Union element»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Is afgeleid 0..1 Deze constructie is al dan niet afgeleid van een construct in een "supplier model". Wanneer je niks opgeeft wordt afleiding vastgesteld op basis van het package waarin het voorkomt. Tagged value
6.4.2.19 Metagegevens voor «View»
Aspect Kardinaliteit Toelichting Metaclass UML 2.5 In EA
Ref-release 0..1 Waarde van het metadatagegeven ‘release’ van het model waar het View package naar verwijst. Tagged value
Ref-version 0..1 Waarde van het metadatagegeven ‘Version’ van het model waar het View package naar verwijst. Tagged value
Supplier-package-name 0..1 De naam van het model waar het View package naar verwijst. Deze naam wordt opgegeven als deze niet gelijk is aan de naam van het package waar deze tagged value op geplaatst is. Tagged value

7. Lijst met figuren

A. Index

A.1 Begrippen gedefinieerd door deze specificatie

A.2 Begrippen gedefinieerd door verwijzing

B. Referenties

B.1 Informatieve referenties

[MIM]
MIM - Metamodel Informatie Modellering. Geonovum. 17 Februari 2022. URL: https://docs.geostandaarden.nl/mim/def-st-mim-20220217/
[OMG]
Object Management Group Unified Modeling Language TM. Object Management Group (OMG). BG-FINAL. URL: https://www.omg.org/spec/UML/2.5
[UML]
Unified Modeling Language (UML).. URL: http://uml.org
VNG Realisatie Standaard - In Gebruik versie