The SEDRIS Data Representation Model
APPENDIX A - Classes Pseudo Code Function |
---|
An instance of this DRM class specifies the behaviour of a function that does not correspond to a <Predefined Function>.
No Example supplied.
The decision to support <Pseudo Code Function> was based on three primary concerns. First, we felt that it would be nearly impossible to capture every possible function that would be used to define the behaviour of <Control_Link> instances. Second, <Expression> instances lack the expressive power to define functions that require looping, branching, etc. Finally, given the first two, it is recognized that many functions that are relatively simple when viewed as pseudo code or code fragments, would become overly complicated when converted into an expression tree. It is important to keep in mind, that while any valid <Expression> instances could be converted into executable code or structures that could be directly used by a consuming system, most systems will not use them that way. Currently, the majority of consuming systems would require that the expression be recoded into the consuming system. For complex functions, pseudo code may be easier to convert.
EDCS_Attribute_Value_Type | value_type; | (notes) |
---|
SE_String | name; | (notes) |
---|---|---|
SE_String | pseudo_code; | (notes) |
The <Expression> components of a <Function>, if any, represent the arguments of the function being represented, so a <Function> has <Expression> components if that <Function> takes arguments. The <Expression> components are ordered so as to unambiguously specify which <Expression> is being supplied for each argument of the given <Function>. The exact interpretation of each argument is defined by the specific function.
The value_type of a <Function> instance returns the type of value produced when the <Function> instance is evaluated for its arguments.
The name field specifies the name of the function being represented.
The pseudo_code field specifies the psuedo code describing the behaviour of the function represented by the given <Pseudo Code Function> instance.
|