Naming Convention for Object/Instance Data ------------------------------------------ Please note: In the Shlaer-Mellor parlance, an "Object" is loosely equivalent to a C++ "Class", so please be aware of the possible ambiguities when discussing this with people who are not Shlaer-Mellored. In general there are two categories of data, class-based data and instance-based data. Class-based data is data that is declared as "static" data members in the C++ class declaration. There is only one copy of this data for all of the instances of the class. An example of Class-based data is the Finite State Machine for the Class. There is only one copy of this data for the whole class. Instance based data is data that exists for each instance of a class. For example, for each instance of an Active Object, there is a "Current_State" attribute. ------------------------------------------ Each OOA Object has a number (N) of attributes. _. For instance-based data the naming convention is: _-. ------------------------------------------ Proposal: Use non-case-sensitive processing. That is, all strings are folded to upper case for comparison purposes. ------------------------------------------ Examples: Domain: Physical System Simulation Subsystem: Locomotion Domain/Subsystem Key Letters: PSSL OOA Object: WHEEL Instance_Number: 1 Attribute_Name: DIAMETER Attribute_Type: FLOAT The "variable name" for this instance would be: "PSSL_WHEEL-1.DIAMETER" ------------------------------------------ File Structure: A "database" definition file for the data that will be stored by a simulation module might be defined using the following pattern: .,, Or -.,, where ::= (FLOAT | INT | ???) --> what are the TCA allowable types? ::= (RR | RW) This expands to the following: