EXPRESS Language
EXPRESS is the name of a formal lexical data specification language. It is used to describe the information requirement of a domain such as STEP Application Protocols, Generic Resources and some aspects of Implementation Methods. A description of the EXPRESS language is set out in Part 11 of STEP.
The EXPRESS language abstract structures of information in terms of data types that are not dissimilar to those found in typical programming languages such as PASCAL, Java, C and C++. In fact, EXPRESS borrows from other programming languages many of the features for data abstraction and, in particular, object-orientated ones. Hence, EXPRESS is often described as an object flavoured language. It is designed to be computer readable, which makes it resemble a programming language. However, it must be emphasized that EXPRESS is not a programming language per se because:
EXPRESS data types do not and are not intended to correspond to any computer memory architecture.
A specification written in EXPRESS is not intended for translation into executables.
EXPRESS has no constructs to specify memory management and I/O operations.
The principal elements of the EXPRESS language, as illustrated in Example 1, are:
Type.
Entity.
Schema.
Algorithms.
Rule.