Download presentation
Presentation is loading. Please wait.
Published byWilliam Lawrence Modified over 8 years ago
1
Part 25 E2 EXPRESS/UML Walkthrough Seattle STEP October 2004
2
Agenda 1.Walkthrough of EXPRESS 2 to UML 1.5 mappings 2.Walkthrough of UML 1.5 Profile/Stereotypes for representing EXPRESS 2 3.Relationship to UML/OWL mappings 4.Demonstration of early implementations 5.Issue discussion 6.Next actions/plans for CD TS ballot
3
Part 25 Edition 2 Content 1.Extend existing mapping to support EXPRESS 2 and same use case –treat UML Class as slightly more abstract C++ or Java class declaration a one-way mapping for software development –UML Classes not tagged as from EXPRESS 2.Add New mapping to support using EXPRESS definition using UML (aka UML Profile for EXPRESS) –UML Classes are tagged as EXPRESS –Two-way mapping now possible –Add OCL where EXPRESS equivalence is clear –Equivalent to EXPRESS-G but in UML
4
1. Extend current Mapping to EXPRESS 2 New Concepts in EXPRESS 2 –Extensible SELECT and ENUMERATION –Rename and redeclare attribute –GENERIC_ENTITY on SELECT –TOTALOVER –Separate SUBTYPE_CONSTRAINT –ABSTRACT ENTITY
5
Extensible SELECT Each SELECT, whether extensible or not, is mapped to a UML Class –For each SELECT that is extensible, the complete set of select items must be computed and the “selection_of” association set –That fact that the SELECT was extensible is lost in the mapping –The fact that one SELECT is BASED_ON another is lost
6
Extensible Enumeration Each Enumeration, whether extensible or not, is mapped to a UML Enumeration –For each Enumeration that is extensible, the complete set of enumeration literals must be computed and set –That fact that the Enumeration was extensible is lost in the mapping –The fact that one Enumeration is BASED_ON another is lost
7
Rename redeclared attribute UML 1.5 does not allow the renaming of inherited attributes Renaming is simulated by –mapping the renamed attribute into a derived attribute with the new name –setting the expression for its value to simply assign the value of the inherited attribute
8
GENERIC_ENTITY on SELECT This is really a constraint on other selects based on the select where it is defined This is not mapped to UML
9
SUBTYPE_CONSTRAINT and TOTAL_OVER SUBTYPE_CONSTRAINT is mapped to UML in the same way as SUPERTYPE is mapped In both cases, OCL is added to the UML for these constraints where it is simple –Deciding what the OCL should be is work to- be-done
10
ABSTRACT ENTITY The attributes of an abstract entity can have generic type domains Example ENTITY general_approval ABSTRACT; approved_items : BAG OF GENERIC_ENTITY; status : approval_status; END_ENTITY;
11
ABSTRACT ENTITY (2) P25 E1 –ABSTRACT maps to isAbstract = TRUE flag on UML Class (Name in Italics) –EXPRESS attributes map to UML Attributes for simple types, defined types to UML Associations for entity type, select type P25 E2? –Could only map instantiable attributes
12
2. UML Profile for EXPRESS Two profiling UML concepts –UML Stereotype –UML Tagged Value UML Stereotype
13
Structures Schema maps to UML Package with > stereotype No change to USE/REFERENCE mapping No change to Entity Type mapping except add > stereotype No change to the Defined Type (not Constructed) except add > stereotype No change to Enumeration Type mapping except > stereotype
14
Structures (2) Change to Select Type mapping –map to UML Class as before adding > stereotype –Change link to select items from association named “selection_of” to unstereotyped UML Generalization Could also add stereotype but not proposing to do so as that fact can be derived Why? Because, this seems closer to the idea of “union” of domains. One rationale for previous mapping was “it creates multiple inheritance in many places” but with > code generation can treat this differently
15
Structures (3) No change to simple attribute mapping –Can’t see need to stereotype attributes too
16
Structures (4) On aggregations, two approaches to consider –Use stereotypes –Treat as constraints on UML Association Ends
17
Aggregation by stereotype Minor change to SET or UNIQUE LIST mapping –Add stereotype to UML Association and > Change to BAG and LIST not UNIQUE –In order to align these better with SET, map to UML Association and stereotype the association as > and
18
Aggregation by Constraint Model aggregations, including nested, as a UML association Constraint on association end encodes the LIST, SET, BAG, ARRAY and nesting
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.