Skip to content

ADOxx Development Language: ADL ​

After exporting a model as an ADL-file it is possible to edit the model with an text-editor. But not only editing an ADL-file is possible, one can also create model with the ADL syntax without a modelling toolkit. The structure of such an ADL-file is built as follows.

Structure of an ADL-file

#Version of the current ADL language

VERSION <4.0>

#<Model_Name>:<Library_Name>

BUSINESS PROCESS MODEL <sample 1.0> : <"Library">

VERSION <1.0>

#Modeltype

TYPE <Sample>

#Definition of the model information (<Author>; <Creation date>; <Date last changed>; <Last user>; <Keywords>;<Comment>;<Model type>; <State>;<Reviewed on; <Description>; <World area>; <Grid>; <Zoom>; <Viewable area><Current mode>; <Access state>; <Current page layout>; <Connector marks>; <Change counter>; <Font size>; <Context of version>).

ATTRIBUTE <Author> VALUE "memo"

   ATTRIBUTE \<Creation date\>

    VALUE "17.06.2014, 17:52"

...

#Define Instances

INSTANCE <Hello1> : <Hello>

#Attributes and their values of the instance

ATTRIBUTE <Position>

VALUE "NODE x:5.5cm y:5.5cm w:2.5cm h:2cm index:1"

...

#RELATION command defines a connector.

RELATION <any2any>

#From instance

FROM <Hello1> : <Hello>

#To instance

TO <Hello2> : <Hello>

#Define attributes with the command ATTRIBUTE.

ATTRIBUTE <Positions>

VALUE "EDGE 0 index:4"

After editing or creating an ADL file one can import it into the ADOxx Modelling Toolkit. The syntax of ADL (for importing models) is as follows

adl-file : [version] _ attrprofs models application-models modelgroups ._

version : VERSION identifier .

attrprofs : { attributeprofileinstance } | { attributeprofile-hierarchy } .

attributeprofileinstance : attributeprofile-definition { instanceattribute-setting } .

attributeprofile-definition : ATTRIBUTEPROFILE identifier ' :' identifier ' :' identifier [version]

attributeprofile-hierarchy : { ROOTATTRPROFDIR identifier ' :' identifier { attributeprofile } { attributeprofile-directory }} .

attributeprofile : attributeprofile-def2 { instanceattribute-setting } .

attributeprofile-def2 : ATTRIBUTEPROFILE identifier ' :' identifier [version] .

attributeprofile-directory : ATTRPROFDIR identifier ' :' number { attributeprofile } .

models : {we-model | bp-model } .

we-model : _ wem-definition_ {instanceattribute-setting } model .

bp-model : bpm-definition { instanceattribute-setting } model .

wem-definition : WORKING ENVIRONMENT MODEL identifier ' :' identifier |

                                            **WORKING ENVIRONMENT MODEL** _identifier_ ' **:**' _identifier_
                                            [_version_] **TYPE** _identifier_ .

bpm-definition : ** BUSINESS PROCESS MODEL** identifier ':' identifier |

                                            **BUSINESS PROCESS MODEL** _identifier_ ':' _identifier_
                                            [_version_] **TYPE** _identifier_ .

model : { instance } { relation } .

instance : instance-definition { instanceattribute-setting } .

instance-definition : INSTANCE identifier ' :' identifier .

relation : relation-definition { instanceattribute-setting } .

relation-definition : RELATION identifier FROM identifier ' :' identifier TOidentifier ':' identifier .

instanceattribute-setting : ATTRIBUTE identifier VALUE attrval .

application-models : { application-model-definition model-attachments } .

application-model-definition : APPLICATION MODEL identifier ' :' identifier .

model-attachments : { BUSINESS PROCESS MODEL identifier [version] TYPE identifier } WORKING ENVIRONMENT MODEL identifier [version] TYPE identifier

                                            { **BUSINESS PROCESS MODEL** _identifier_ [_version_]
                                            **TYPE** _identifier_ } |

                                            **BUSINESS PROCESS MODEL** _identifier_ [_version_]
                                            **TYPE** _identifier  _
                                            { **BUSINESS PROCESS MODEL** _identifier_ [_version_]
                                            **TYPE** _identifier_ } .

modelgroups : { ROOTMODELGROUP identifier ' :' identifier { reference } { hierarchy }} .

reference : BUSINESS PROCESS MODEL identifier TYPE identifier | WORKING ENVIRONMENT MODEL identifier TYPE _identifier _

hierarchy : MODELGROUP identifier ' :' number { reference } .

identifier : ' <' any_characters_but_newline ' >' .

attrval : number |

                                            ' **"**' _any\_characters_ ' **"**' |

                                            _recordval_ .

recordval : { RECORD { ATTRIBUTE identifier VALUE val } END } .

val : number |

                                            ' **"**' _any\_characters_ ' **"**' .