> From: Konstantin Piroumian [mailto:[EMAIL PROTECTED]]
> 
> Hi, Cocooners!
> 
> A simple question: why in a sub sitemap we need to add <map:components
/> if
> we add anything to the list?

>From the sub sitemap:
  <map:generators default="file"/>

>From the sitemap.xsl:
      <xsl:with-param name="default-component"
select="/map:sitemap/map:components/map:generators/@default"/>


If you know better way how in XSLT get default component, you could
modify compiled sitemap engine so it does not requires <map:components
/> section.

Interpreted engine (IMHO) already should work without this section.
Evidence of this found in DefaultTreeBuilder:

if (type == null && selector instanceof ExtendedComponentSelector) {
    type = ((ExtendedComponentSelector)selector).getDefaultHint();
}

And because this engine going to be default in 2.1 series, I'm Ok just
to wait a bit, so issue will dissolve by itself as people move to
interpreted engine.

(Also I'm still not convinced that interpreted engine is faster then
compiled one ;)


> Isn't it possible to inherit components implicitly?

They are inherited. But you want to know the default.


> I ask this, because in response to multiple user requests for having
> something simple to start with in Cocoon and also for my colleagues
I'd like
> to create a very simple application template that can be easily used
for
> playing with Cocoon.
> 
> Sample's directory is this:
> /root  <-- suggest a better name for the root

"myapp"?


>     /xml
>     /xsl
>     /xsp
> 
> Without that declaration a Cocoon Newbie's sub-sitemap can look like
below
> (mounted to samples/):
> 
> <?xml version="1.0"?>
> <map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0";>

<map:components>
  <map:generators default="file"/>
  <map:transformers default="xslt"/>
  <map:readers default="resource"/>
  <map:serializers default="html"/>
  <map:selectors default="browser"/>
  <map:matchers default="wildcard"/>
 </map:components>

It's not *that* much more complex :)

 
>     <!-- Processing pipelines -->
>     <map:pipelines>
>         <map:pipeline>
> 
>             <!-- Process static content -->
>             <map:match pattern="*.xml">
>                 <map:generate src="xml/{1}.xml" />
>                 <map:transform src="xsl/style.xsl" />
>                 <map:serialize />
>             </map:match>
> 
>             <!-- Process dynamic content -->
>             <map:match pattern="*.xsp">
>                 <map:generate type="serverpages" src="xsp/{1}.xsp" />
>                 <map:transform src="xsl/style.xsl" />
>                 <map:serialize />
>             </map:match>
> 
>         </map:pipeline>
>     </map:pipelines>
> </map:sitemap>
> <!-- end of file -->
> 
> And the instructions would be like this:
>     - create an XML file, then place it in /xml directory
>     - create a stylesheet, then place it in /xsl directory
>     [- create an XSP page, place it into /xsp directory]
> 
> Enter the URL of your page:
> http://localhost:8080/cocoon/samples/root/page.xml
> 
> Quite easy and simple.
> 
> So, my questions are:
>     - how to remove <map:componenets />

See above.


>     - what is the best place for such a template/sample

samples directory?


>     - is it worth making a special target for building a minimal
Cocoon
> containing a very minimal set of features?

May be better documenting the process will help. It boils down to just
couple of steps:
1. build clean
2. rm all optional libs
3. build -D....

Vadim


> Regards,
>   Konstantin Piroumian
> _________________________________________
> Konstantin Piroumian
> Lead Developer
> ICQ#: 2297575
> ( Work Tel#:  +7 095 795 0520 * 1288
> + More ways to contact me
> i See more about me
> _________________________________________


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

Reply via email to