Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementeer MIM attribuutsoort type validatie. #489

Open
melsk-r opened this issue Jun 4, 2024 · 7 comments
Open

Implementeer MIM attribuutsoort type validatie. #489

melsk-r opened this issue Jun 4, 2024 · 7 comments

Comments

@melsk-r
Copy link
Contributor

melsk-r commented Jun 4, 2024

Implementeer de MIM validatie dat op een attribuutsoort alleen de types die zijn toegestaan worden geaccepteerd.

Zie ook dit issue.

@ArjanLoeffen
Copy link
Contributor

ArjanLoeffen commented Jun 4, 2024

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?

@melsk-r
Copy link
Contributor Author

melsk-r commented Jun 5, 2024

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 <type-stereo> elementen bevatten want een 'Gestructureerd datatype' kan ook gebruikt worden door bijv. een 'Attribuutsoort'.

@melsk-r
Copy link
Contributor Author

melsk-r commented Jun 5, 2024

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.

@ArjanLoeffen
Copy link
Contributor

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.)

@melsk-r
Copy link
Contributor Author

melsk-r commented Jun 24, 2024

Wat mij betreft wel. Dat maakt het i.i.g. wel een stuk eenvoudiger specificeren.

@ArjanLoeffen
Copy link
Contributor

Er wordt gecheckt of het attribuut type een acceptabel UML type is met een bekend stereotype. Zo niet, dan is melding:

Attribute type is not a datatype. Expected any of "CODELIJST", "GESTRUCTUREERD DATATYPE", "ENUMERATIE", "INTERFACE", "REFERENTIELIJST", "PRIMITIEF DATATYPE", "KEUZE"

Hiermee denk ik dat we hebben voldaan aan deze MIM eis.

@melsk-r
Copy link
Contributor Author

melsk-r commented Jul 23, 2024

Kunnen we hiermee ook inregelen dat de volgende situaties worden getest?

  • dat aan een modelelement met het stereotype 'Gegevensgroup' het type 'Gegevensgroeptype' is toegekend;
  • dat aan een modelelement met het stereotype 'Referentie-element' een van de 'datatype' types is toegekend;
  • dat aan een modelelement met het stereotype 'Data-element' een van de 'datatype' types is toegekend.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants