aspectWebML.concernComposition
Package concernComposition


OverviewImage

The concernComposition package abstracts over different composition mechanisms, i.e., asymmetric and symmetric ones.


Class Summary
ConcernModule The ConcernModule concept has been defined to subsume the notion of aspect and base and therefore is specialized with appropriate meta-classes. The meta-class Aspect is specialized from ConcernModule and introduced to the AsymmetricConcernComposition package. Moreover, the WebML meta-class from the WebML language, which represents a WebML model inherits from ConcernModule as well. For the asymmetric composition mechanism a ConcernModule of type WebML then serves as the base.
ConcernCompositionRule A ConcernCompositionRule defines how the various concern elements are to be composed. The general concept of concern composition rule is specialized into sub-classes supporting different composition mechanisms, i.e., the AsymmetricCompositionRule and the SymmetricCompositionRule.
CompositionPlan The CompositionPlan specifies how to integrate a set of ConcernModules according to a set of ConcernCompositionRules. The execution of a composition plan results in a composed model i.e., a WebML Model.
ConcernCompositionRuleSequence The ConcernCompositionRuleSequence specifies an order for a set of ConcernCompositionRules.

Constraints:
  1. rulesORsubSequence: self.rules -> notEmpty() xor self.subSequence -> notEmpty()
  2. containsOnlyRootSymmetricCompositionRules: self.rules -> select(e|e.oclIsTypeOf(symmetricConcernComposition::SymmetricCompositionRule)).oclAsType(symmetricConcernComposition::SymmetricCompositionRule) -> forAll(e1|e1.compElem -> forAll(e2|e2.oclIsTypeOf(webML::WebML)))
ConcernModuleSequence The ConcernModuleSequence specifies an order for a set of ConcernModules.

Constraints:
  1. firstModuleIsWebMLModel: self.modules -> first().oclIsTypeOf(webML::WebML)
ModuleRepository The ModuleRepository serves as a Repository for ConcernModules and ConcernModuleSequences. Singleton.
RuleRepository The RuleRepository serves as a Repository for ConcernCompositionRules and ConcernCompositionRuleSequences. Singleton.
aspectWebMLModel The aspectWebMLModel represents the root element of each aspectWebML project.

Enumeration Summary
EffectKind The effects ConcernCompositionRules can have.


Copyright Andrea Schauerhuber, Cornelia Tomasek (Vienna University of Technology, 2007)
Note: This documentation is partly based upon WebRatio's WebML User Guide (for further information on WebRatio see http://www.webratio.com/), 'Designing Data-Intensive Web Applications' [S.Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, M. Matera, 2003] (for further information see http://www.webml.org/webml/page2.do?ctx1=EN) and 'Model-driven Development of Context-Aware Web Applications' [S. Ceri, F. Daniel, M. Matera, F. M. Facca. ACM Transactions on Internet Technology, 2007, 7(1)]