FYI.
Cheers… Sébastien.
Dr. Sébastien Gérard
Head of MDD for DRES
research project
CEA LIST, Laboratoire d’Ingénierie
dirigée par les modèles pour les Systèmes Embarqués (LISE)
Boîte courrier 94, GIF SUR YVETTE
CEDEX, F-91191 France
Phone/fax : +33 1 69 08 58
24 / 83 95
Leader of the Eclipse
Component Papyrus (The UML2 Graphical Modeler): www.papyrusuml.org
http://www.eclipse.org/modeling/mdt/?project=papyrus
Before printing, think
about the environment
De : Maged Elaasar
[mailto:melaasar@xxxxxxxxxx]
Envoyé : jeudi 11 février
2010 19:26
À : uml2-rtf@xxxxxxx
Objet : A thought: profile
Applicatios as CSS sheets
Hi all,
just wanted to pass this thought on to the group (it could be far off from
reality):
Can profile applications be designed like CSS
sheets?
Profile applications are currently like CSS sheets in the following ways:
- The model references a profile application, similar to how an XML doc
references a CSS sheet.
- Unapplying a profile application is done by removing the reference to it
without having to destroy it, similarly unapplying a CSS sheet is done by
removing the reference to it.
- The profile application (through stereotype applications that reference
certain elements), provide values to stereotype properties. Similarly, a CSS
sheet (through rules with element id as a selector) provide values to
properties of a new schema.
However, CSS sheets are different from profiles in the following ways:
- CSS sheet do not have to depend on a given doc, if they don't provide rules
that use element ids as selectors, which allows them to apply to any model
- CSS sheets can provide rules with type, hierarchical, or conditional
selectors giving more flexibilty and efficiency in applying values.
- CSS rules can provide valus to new properties in the original schema as well
as to those in a new schema (the extension schema)
- CSS sheets allow for defining "inheritable" attributes and provide
values for them in a defined cascading order making it efficient to apply
values to those attributes.
- CSS sheets also allow elements in a document to reference the rules of a CSS
directly as their "class". An element that references a given rule
(as a class) inherits values assigned by that rule (subject to the cascading
rules)
One notable difference:
- Profiles group properties into stereotypes (kind of property bags, where CSS
sheet provide values either to existing schema attributes, or "global
attributes" (which could be bags as well?) from another schema.
Using this approach, you design a profile like any metamodel, then using a
profile application (style sheet) you apply values using rules...some of which could
have sepific element based selectors or query based one.
Thanks,
Maged Elaasar, PhD Candidate
Senior Software Engineer, Rational Modeling Tools
IBM Representative@OMG, CAS Research Staff Member
IBM Canada, Ottawa Lab, +1 613 270 4651