Hierarchical contexts defined interaction with the user and available
options. User context defines what you are allowed to do.
Problem context represents science which you want to do (approach, methodology,
object of calculations). Problem does not have any results associated
with it and constitutes a high level description of type of computations
which need to be performed. The lowest context, application, represents
the elementary step in the actual computational run. For multi-step
calculations, several applications (software packages) will run
in succession. Thus application context defines what software is being run
and what comes in and gets out. Session represents a particular run.
There may only be a single application within a session, and a single
set of input and output files/scripts. But session may also involve
a series of consecutive application. In this case, for applications
2...n-1, input comes
from a previous application in a chain,
and output is consumed by the next application in the chain.
Of course, the corresponding
pairs have to
have not only compatible information but also format. For this reason
format converting filter applications may be needed to join applications
in the chain.