You create a CORBA valuetype using a class with the <<CORBAValue>> stereotype. You can further define the valuetype using the following design features:
Inheritance between valuetypes has to be designed as a generalization between two valuetype classes
The interface supported by a value type is the one linked to the valuetype class with a generalization
Members of a valuetype are linked with a composition to the valuetype
You can declare an interface inside a valuetype using an inner link
Boolean extended attribute Istruncatable allows you to specify if the valuetype is truncatable or not
A value type factory operation is represented using an operation with the <<CORBAValueFactory>> stereotype
valuetype DateAndTime : Time supports PrettyPrint { public DateAndTime::Date the date; factory init(in short hr, in short min); string get_date(); };