In the latest CVS of 2.1, I think we have two overlapping 
concepts: the global parameters and the input modules.
Perhaps we could merge the global parameters somehow into
the input modules and then remove the global parameters
as a separate concept again.

Current State
-------------

Currently, the global parameters are declared in the
map:pipelines section of a sitemap and the scope
is the map:pipeline sections.
So, if you want to refer to a global parameter, for
example named "skin", you have to use
{skin}, or {../skin} etc. depending on the depth of
your statement in the map:pipeline section.

Disadvantages:
- If you refer to a global parameter, you have to
  precisly specify the path (= count the ../)
- global parameters are not inherited/available to 
  sub-sitemaps

Advantage:
- Configuration directly in the sitemap


The input modules are completly defined in the cocoon.xconf,
they can be used inside every sitemap by first choosing
the input module and then the key, like {request:parametername}.

Advantage:
- Simple use
- Single configured values are available in all sitemaps

Disadvantage:
- Configuration is not in the sitemap, but in the cocoon.xconf


Proposed Solution
-----------------
Make one input module sitemap configurable, like the 
authentication manager. This means a (global) input module is
defined in the cocoon.xconf, but can be additionally configured
in the sitemap.
A subsitemap inherits this configuration from it's parent sitemap
and can add own key/value pairs, so this would look like this:

<map:pipelines>
  <map:component-configurations>
    <global-input-module>
      <skin>some-value</skin>
      ...
    </global-input-module>
  </map:component-configurations>
</map:pipelines>

So, the key {global:skin} is available in this sitemap and in
all sub-sitemaps.

Comments? Suggestions?

Carsten

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to