OpenInteract Glossary

An action is a configuration directive that maps a URL to a handler. You setup actions within a package in the action.perl file, and default actions are defined in the server.perl file.
base installation
An OpenInteract base installation is where all versions of all installed packages live. When you create a website or apply a package, the original source for the package lives in the base installation. One base installation can support many separate websites, and you should only ever need to create the base installation once.
A handler is a piece of Perl code that ultimately returns a fragment of HTML, or more generally, text. The handler manages action security and manipulates objects (fetches, creates, saves, removes) and hands the data to the template for display.
Unit of distribution for a given functionality. This includes all of the necessary configuration, templates, Perl code, etc. You can install, upgrade and remove packages to or from your website. You configure a package using the action.perl and spops.perl files.
An Apache/mod_perl process that runs the code making up one or more websites. You configure the server using httpd.conf and httpd_modperl.conf files.
stash class
A stash class is Perl code that holds objects and other information for a website from request to request. Every website has its own stash class. (Not to be confused with Perl package symbol tables.)
A template is a piece of text that contains template processing directives interspersed with other text. Normally in OpenInteract, this will be Template Toolkit processing directives interspersed with HTML.
Loosely speaking, a package implements a tool. This is not exactly true, since a package can choose to implement more than one tool. In general, you will find that there is a one-to-one mapping between a package and a tool. A tool consists of a set of templates that manipulate a common set of objects.
An instantiation of the base OpenInteract framework plus a set of user-defined packages. You configure the website using the server.perl file.