Open melsk-r opened 3 weeks ago
Volgens deze MIM uitspraak kan worden bepaald wat het meta-type is van een attribuutsoort. De test moet worden uitgebreid naar alle typen van alle UML attributen die een rol spelen in MIM. Dit zou centraal kunnen worden geregeld via configuratie. Voorbeeld:
<stereo id="stereotype-name-complextype" primary="yes">
<name lang="nl">Gestructureerd datatype</name>
<construct>datatype</construct>
<context>
<parent-stereo>stereotype-name-domain-package</parent-stereo>
<parent-stereo>stereotype-name-view-package</parent-stereo>
</context>
<types>
<type-stereo>stereotype-name-data-element</type-stereo>
</types>
</stereo>
<types>
is dan nieuw en wordt gechecked.
Correct?
Als je hiermee bedoelt dat een component van het stereotype 'stereotype-name-data-element' via het 'type' metagegeven kan refereren aan een 'Gestructureerd datatype' dan is dat inderdaad correct. <types>
kan in dat geval meerdere <stype-stereo>
elementen bevatten want een 'Gestructureerd datatype' kan ook gebruikt worden door bijv. een 'Attribuutsoort'.
Een andere optie is om juist aan te geven aan wat voor stereotypes een bepaald stereotype allemaal kan refereren via het 'type' metagegeven. Dan krijg je een structuur als:
<stereo id="stereotype-name-data-element" primary="yes">
<name lang="nl">Data element</name>
<construct>attribute</construct>
<types>
<type-stereo>stereotype-name-complextype</type-stereo>
<type-stereo>stereotype-name-simpletype</type-stereo>
</types>
</stereo>
De vraag is wat het handigste is.
Is het voldoende als bij de test wordt gecheckt op het type een datatype is? Check:
<stereo id="stereotype-name-complextype" primary="yes">
<name lang="nl">Gestructureerd datatype</name>
<construct>datatype</construct>
<context>
<parent-stereo>stereotype-name-domain-package</parent-stereo>
<parent-stereo>stereotype-name-view-package</parent-stereo>
</context>
</stereo>
Het is dus bekend of een stereotype betrekking heeft op een datatype. (Nb enumeraties zijn ook datatypen, en tevens bekend als enumeratie.)
Wat mij betreft wel. Dat maakt het i.i.g. wel een stuk eenvoudiger specificeren.
Implementeer de MIM validatie dat op een attribuutsoort alleen de types die zijn toegestaan worden geaccepteerd.
Zie ook dit issue.