RMTool: Source Entity Description Language File Format

RMTool: Source Entity Description Language File Format


The source entity description language defines the keywords available for use by an engineer in the map file. The language also defines the encoding format for the source model file to be used in the computation.

The source entity description defines a tree-based naming mechanism to denote the physical and logical organizational information recorded about a source model entity. Each node in a naming tree defines a keyword that describes one aspect of the organizational information. The defined keywords need only be unique on a path of the tree. For example, the following shows a possible naming tree for function and variable entities within C source code stored in a Unix file system.

This tree permits the naming of function entities by specifying values for any combination of physical directory and file information, or logical function name information. For example, the phrase,

directory=vm file=pager.c function=writeToFile

names a function writeToFile, stored within the pager.c file in the vm directory. A C variable, pagePolicy, declared within the scope of the pager.c file that exists within the vm directory may be specified using the following phrase.

directory=vm file=pager.c variable=pagePolicy

The naming tree specified in the figure above also declares a keyword named variable as a child of the function node to permit the naming of variables declared within the scope of a function. If a pagePolicy variable was also declared within the writeToFile function, for instance, it could be named using the following phrase.

directory=vm file=pager.c function=writeToFile variable=pagePolicy

When a keyword is used on more than one path in the tree, as is the case with the variable keyword in the naming tree above, the naming path to use in interpreting a phrase is chosen based on a breadth-first search of the provided keywords. For instance, the phrase

variable=pagePolicy

denotes the following path.

directory -> file -> variable

On the other hand, the phrase function=writeToFile variable=pagePolicy

denotes the path shown below.

directory -> file -> function -> variable

The description of the source entity description language provided as input to the reflexion model tools consists of the fully qualified names of each node in the tree. The naming tree shown above, for instance, would be described to the reflexion model tools as follows.

   directory 
   directory.file 
   directory.file.function 
   directory.file.function.variable 
   directory.file.variable 

Back to RMTool: File Formats.

Last modified: June 28, 1996

Gail Murphy
murphy@cs.ubc.ca