Type:org/oomodels/WIML/1.0

From OOModels
< Type:org‎ | oomodels‎ | WIML
Revision as of 12:41, 29 March 2011 by AndreasLeue (talk | contribs)
Jump to navigationJump to search
Classification
MIME Type text/plain
FileExtension wiml
Domain Domain:it/development/modelling
Category Type:org/oomodels/wiki/Version
Namespace (more)

OOModels main namespace

create new pages

Description[edit]

This is version 1.0 of Type:org/oomodels/WIML


Class Syntax[edit]

<wiml>
* ClassName Stereotype
  <= Arg1
  <= Arg2=String
  <- Arg3
  <- Arg4=String
  <  Arg5
  <  Arg6=String
  > BaseClass
  ^ ModelImport
  ^^ ExternalImport
  Single line class description
  + Extension1Name
    - Property11Name = Property11Value
    - Property12Name = Property12Value
  + Extension2Name
    - Property21Name = Property21Value
    - Property22Name = Property22Value
** Attribute1Name Type Stereotype
   Single line attribute description
   + Extension11Name
     - Property111Name = Property111Value
     - Property112Name = Property112Value
   + Extension12Name
     - Property121Name = Property121Value
     - Property122Name = Property122Value
** Attribute2Name Type Stereotype
   Single line attribute description
   + Extension21Name
     - Property211Name = Property211Value
     - Property212Name = Property212Value
   + Extension22Name
     - Property221Name = Property221Value
     - Property222Name = Property222Value
** Association3Name Type(0..*) Stereotype
   Single line association description
   + Extension31Name
     - Property311Name = Property311Value
     - Property312Name = Property312Value
   + Extension32Name
     - Property321Name = Property321Value
     - Property322Name = Property322Value
   +< Extension33Name
     - Property331Name = Property331Value
     - Property332Name = Property332Value
   +< Extension34Name
     - Property341Name = Property341Value
     - Property342Name = Property342Value
   +> Extension35Name
     - Property351Name = Property351Value
     - Property352Name = Property352Value
   +> Extension36Name
     - Property361Name = Property361Value
     - Property362Name = Property362Value
** Association4Name Type(*) Stereotype
   Single line association description
** Association4Name Type(1..+) Stereotype
   Single line association description
** Association4Name Type(+) Stereotype
   Single line association description
** Association4Name Type(1) Stereotype
   Single line association description
!! Operation5Name ReturnType(Argument51Name:Argument51Type,Argument52Name:Argument52Type) Stereotype
   Single line operation description
   + Extension51Name
     - Property511Name = Property511Value
     - Property512Name = Property512Value
   + Extension52Name
     - Property521Name = Property521Value
     - Property522Name = Property522Value
!! Operation6Name ReturnType(Argument61Name:Argument61Type,Argument62Name:Argument62Type) Stereotype
   Single line operation description
   + Extension61Name
     - Property611Name = Property611Value
     - Property612Name = Property612Value
   + Extension62Name
     - Property621Name = Property621Value
     - Property622Name = Property622Value
</wiml>

The above code (except the "..." parts) is rendered as follows. Please note: all types (Type, Stereotype, Base) are rendered automatically as links. If the typename contains no "/", it is assumed it is a primitive model type defined in Artefact:Model/org/oomodels/primitives. If it does contain a "/", it is linked to the respective subpage in Artefact:Model.

BaseClass
ClassName≦Arg1≧≦Arg2=String≧≤Arg3≥≤Arg4=String≥<Arg5><Arg6=String>
«Stereotype»
Single line class description
...
ModelImport
ExternalImport
...
Extension1Name Property11NameProperty11Value
Property12NameProperty12Value
Extension2Name Property21NameProperty21Value
Property22NameProperty22Value
Attribute1NameType«Stereotype»
...
Extension11Name Property111NameProperty111Value
Property112NameProperty112Value
Extension12Name Property121NameProperty121Value
Property122NameProperty122Value
Single line attribute description
Attribute2NameType«Stereotype»
...
Extension21Name Property211NameProperty211Value
Property212NameProperty212Value
Extension22Name Property221NameProperty221Value
Property222NameProperty222Value
Single line attribute description
Association3Name──0..*──► Type«Stereotype»
...
Extension31Name Property311NameProperty311Value
Property312NameProperty312Value
Extension32Name Property321NameProperty321Value
Property322NameProperty322Value
Extension33Name (End 1) Property331NameProperty331Value
Property332NameProperty332Value
Extension34Name (End 1) Property341NameProperty341Value
Property342NameProperty342Value
Extension35Name (End 2) Property351NameProperty351Value
Property352NameProperty352Value
Extension36Name (End 2) Property361NameProperty361Value
Property362NameProperty362Value
Single line association description
Association4Name──*──► Type«Stereotype»
Single line association description
Association4Name──1..+──► Type«Stereotype»
Single line association description
Association4Name──+──► Type«Stereotype»
Single line association description
Association4Name──1──► Type«Stereotype»
Single line association description
Operation5NameReturnType (Argument51Name: Argument51Type, Argument52Name: Argument52Type) «Stereotype»
...
Extension51Name Property511NameProperty511Value
Property512NameProperty512Value
Extension52Name Property521NameProperty521Value
Property522NameProperty522Value
Single line operation description
Operation6NameReturnType (Argument61Name: Argument61Type, Argument62Name: Argument62Type) «Stereotype»
...
Extension61Name Property611NameProperty611Value
Property612NameProperty612Value
Extension62Name Property621NameProperty621Value
Property622NameProperty622Value
Single line operation description


State Machine Syntax[edit]

<wiml>
# Transaction
~ state1,state2,state3
** Attribute1 String
** Attribute2 String
!! transition1 void()
   ~~ state1
   + XMLogicImplementation
     - OperationBody = ~ ...\n ==>> state2;
!! transition2 void()
   ~~ state2
   + XMLogicImplementation
     - OperationBody = ~ ...\n ==>> state1;
</wiml>
Transaction
state1state2state3
Attribute1String«»
Attribute2String«»
state1──► transition1void () «»
...
XMLogicImplementation OperationBodyn =  = state2
state2──► transition2void () «»
...
XMLogicImplementation OperationBodyn =  = state1


Process Syntax[edit]

<wiml>
* Step1 org/ooem/stereotypes/Step
** Initial Constellation11(1..1)
** Final1 Constellation12(1..1)
** Final2 Constellation13(1..1)
</wiml>
Step1
«Step»
Initial──1..1──► Constellation11«»
Final1──1..1──► Constellation12«»
Final2──1..1──► Constellation13«»


<wiml>
* Constellation1 org/ooem/stereotypes/Constellation
** Attribute11 Class11[InState11]
** Attribute12 Class12[InState12]
</wiml>
Constellation1
«Constellation»
Attribute11Class11
[InState11]
«»
Attribute12Class12
[InState12]
«»


Browse[edit]