Programming with RSF regularly brings up certain objects or concepts, some new and some familiar (to those who have used other frameworks such as Spring or JSF).
An (application-defined) RSF Action may be invoked by the framework in order to handle an action (POST) request.
Action Result Interpreter
The ActionResultInterpreter marks the last stage of action request processing, and an important site for application configuration. It inspects the result of the just-concluded Action and computes the next view to be shown.
The BeanExploder is a bean definition for a request-scope bean that "explodes" a bean prototype into a freely-addressed, lazily evaluated address space. The key to RSF's ORM philosophy, as well as the solution to the Spring "lost non-singleton" problem.
The BeanLine is a hypothetical line of dependency dividing code with a dependence on a framework from code without it.
BeanLocator is a one-method interface that abstracts the location of a bean by name from its container. It is the central interface enabling BeanReasonableness, by exposing an application's entire data model in a uniform address space.
A Binding is an association expressed in EL to a part of the request model. In RSF, the behaviour of an action submission is expressed as a set of encoded bindings held in the client form, which may cause data to be read or written when the request is received.
The ComponentTree or View is the main product of the component producer. It consists of a tree of UIComponent objects, which specifies the abstract properties of the view to be rendered in this cycle, devoid of dependence on the rendering technology. In an MVC architecture, the component tree would constitute the controller layer.
An Evolver is a specialised kind of Producer which accepts an already constructed RSF primitive component as a seed component to repackage in an elaborated form, associated with its own section of markup. Evolvers and similar Producers are the vehicles for creating reusable "widgets" in RSF.
An RSF flow is a chained collection of related requests, which combine rules for navigation together with a propagation of some state from the request bean map along the chain.
Levelization is the organization (in the mind of the designer) of a codebase into a strict hierarchy based on knowledge or dependence.
Oblets are OTP over TSH.
The Obstinate Map is a concept that every now and then seems necessary in order to adapt bean models with dissimilar underlying semantics (primarily those from e.g. Hibernate with lazy evaluation semantics). Now evolved into the BeanLocator system.
OLI (One Line Interface) programming is highly valued in RSF. Many even quite modern frameworks feature unnecessarily fat and poorly decomposed interfaces (of which Java Collections is a prime example), or yet worse, no interfaces at all! The natural endpoint of a lightweight and flexible architecture is a preponderance of interfaces which contain just a single method.
ParachuteRendering is a key concept of IKAT's component rendering model, where maximum use is made of contextual inspection of the view template before deciding on a rendering strategy.
A Pea is like a bean only smaller - it uses direct field access for properties rather than getters and setters.
Request Scope Application Context
RSF, in addition to being built out of application-scope Spring-configured beans, also allows the definition of request-scope beans in standard Spring-formatted files. These form the RequestScopeApplicationContext.
RSF EL (Expression Language)
RSF adopts an expression language in order to map locations in the client's bean model to and from a string representation.
The RequestSubmittedValueCache is a log of all values received from the user during a request cycle. RSF can replay this log to implement a lightweight and straightforward alternative to the long transaction functionality provided by some ORM solutions.
RSF scoped beans are complementary to its Flow beans, in that these are both schemes for letting normal request-scope beans be given longer lifetimes by copying them back and forth between requests (typically via an HTTP session). Unlike Flow beans, scoped beans are not tied to a particular series of requests, but will persist until programmatically destroyed or their backing storage expires, whichever happens soonest.
A seed component is a primitive RSF component used as an argument to an Evolver.
A ViewParameters object holds a deserialized representation of the location of the view for the current request. This is held in a view-neutral "bean tree".
The view template is a file (or collection of files) in the target XML dialect that is supplied to the IKAT renderer as its "model" for the output file it is to produce. These differ from the target dialect only through having one extra attribute, the rsf:id applied to any tags which require rewriting by the render process.