ConfigurationModel
The DSL comprises of a set of include statements to support include documentation stored in other files. The core setup structure is stored in ModelSetup
.
ConfigurationModel:
includes+=Include*
modelSetup=ModelSetup?
;
Include
The include mechanism is currently very simple. We may extend the simple inclusion of other definitions by a more elaborate mechanism.
Include:
'include' importedNamespace = QualifiedName
;
ModelSetup
Main rule for the configuration. name
specifies the name of the configuration, declarationModel
refers to the scientific model for which we want to create a configuration.
ModelSetup:
name=ID ':' declarationModel=[declaration::DeclarationModel|ID]
('features' features+=[declaration::Feature|ID] (',' features+=[declaration::Feature|ID])*)?
('parameters' (parameterGroups+=ParameterGroup)*)?
(modules+=ModuleConfiguration (modules+=ModuleConfiguration)*)?
;
The DSL allows to select features
and parameterGroups
on the global level and in modules.