This is a glossary of terms and their definitions for the Apache Forrest project. Some plugins also have a glossary, for example Dispatcher.
|Add content to this Glossary||
1. This glossary is incomplete, please help where you can by adding definitions to
existing items where needed. Also, add new Items to the glossary as
|Abbreviations in electronic mail||
1. Abbreviations and acronyms are often used as shorthand in email, e.g. AFAIK "As Far As I Know", IMO "In My Opinion".
|The Apache Software Foundation (ASF)||
1. The Apache Software Foundation is the home of Apache
The ASF is a non-profit charity, membership-based corporation.
|Cascading Style Sheets (CSS)||
1. A simple mechanism for adding style (e.g. fonts, colors, spacing) to Web
The aim of the "Dispatcher" concept is to provide a flexible framework for
creating site and page specific layout.
See the Dispatcher documentation and the Dispatcher Glossary for specific terminology.
A Generator is a Cocoon sitemap component.
Each pipeline begins with a Generator. Its job
is to generate XML content as SAX events and initialize the pipeline processing.
The default generator is the "File Generator" which reads an xml document
from the local file system or from any url.
|Internal document format||
Forrest's internal document format (defined by an XML-grammar).
This format is the common denominator for all things going into or coming
out of Forrest's core processing. All input-plugins will translate their
supported documents into this format, all output-plugins will create the
output by transforming this format into something else.
Currently Forrest uses "xdoc" document-v13-dtd
as its internal format (see definition of xdoc below).
We plan to later use a set of xhtml2 as the internal format.
The "linkmap" is an internal resource that transforms the
site.xml navigation and linking configuration
file into a table-of-contents. Every site has one at localhost:8888/linkmap.html
Locationmaps define the mapping from requests to locations,
which enables content and resources to be located at various
different sources. The advantage of this is that the URL seen
by the user need bear no relation to the location of the source
document, thus Forrest can separate the client URL space from
the source document URL space. Thus, using the locationmap
it is possible to pull together documents from many different
locations into a single uniform site. In addition, since the
user URL space is now unconnected to the source URL space it is
possible to move source documents without breaking any existing
user links. There are various core locationmaps in the main/webapp
directory, each plugin can utilise locationmaps, and projects can
manage their resources with a project-specific locationmap.
The Cocoon Sitemaps have one or more pipelines
which handle the processing of various pieces of xml content.
Each pipeline begins with a
Generator, continues with zero or more
Transformers, and ends with a
Aggregation enables building a hierarchy of pipelines.
A Forrest Plugin is a set of resources and configuration files that extend the functionality of Forrest.
Plugins are a way of extending Forrest to satisfy site-specific needs.
The core of Forrest handles certain processing via the
sitemaps in main/webapp/*.xmap files.
The main sitemap mounts a plugin sitemap from each declared plugin.
For example an input plugin might handle projectInfo source documents
to convert them into the internal document format
for further processing, while an output plugin would concern itself
with generating output PDF documents. Nice Separation of Concerns.
If no plugin is found to handle a certain document type, then processing falls back to the core.
1. A temporary Forrest package built from trunk during the release process to be tested and evaluated.
|Separation of Concerns (SoC)||
1. Different people, different skills, different purposes different code. Each can
concentrate on their separate, but well-integrated, area of concern.
A Serializer is a Cocoon sitemap component.
Each pipeline ends with a Serializer. Its job
is to transform SAX events into binary or character streams for final
client consumption. One example (the default) is the "HTML Serializer"
which serializes xml content to html. The Serializer can have parameters
to configure its behaviour, e.g. to specify the document type declaration.
Cocoon Sitemaps (usually a filename ending with *.xmap)
is the system to enable Apache Cocoon to know how to process
different types of input and output.
Note that many other environments use the term "sitemap" to refer to
"a map of the site" which is what site.xml can be considered to be.
The site.xml is the menu navigation and linking configuration file.
Don't get confused with sitemap defined above.
"Skins" are one method of providing alternatives for creating the
layout and look-and-feel of the set of documents.
Forrest provides one primary skin called pelt.
See the definition of Dispatcher
for another method.
Subversion, also known as SVN, is the version control system used by all Apache projects.
A Transformer is a Cocoon sitemap component.
Each pipeline has zero or more Transformers. Its job
is to transform SAX events into other SAX events.
The default transformer is the "XSLT Transformer" which uses an XSLT
stylesheet to transform xml content. The Transformer can have parameters
to configure its behaviour or pass data to the stylesheet.
1. "xdoc" is an xml documentation stucture that started life at some other ASF
projects. Apache Forrest adopted it and enhanced it to be similar to xhtml2. "xdoc" is
currently the internal xml structure
of Forrest (someday will be xhtml2). "xdocs" can be
used as an input source format.