You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Markus Alin <ma...@swissrisk.com> on 2003/06/12 11:08:46 UTC

xsl:import question

Hi!!

I'm using a computational stylesheet with alot of trigonometry templates
which I include into whatever style sheet which needs it with the
<xsl:import> tag. I ofcourse want the computational stylesheet to be
available all over the application and I don't want to keep duplicate
copies of it. The only way i found to achieve this was to work with
relative directory paths. It currently looks like:

<xsl:import href="../../../../../resources/stylesheets/trignm.xsl"/>

This ofcource makes the system very static and is from my point of view
a violation against the whole sitemap philosophy. Are there any plans to
change this or are there any alternative ways to achieve the same
thing??

/Thnxs Markus



===============================================
Markus Alin         tel: +41 1 455 70 03
Swissrisk AG        fax: +41 1 455 70 01
Räffelstrasse 32    mailto:markus@swissrisk.com
8045 Zürich         www.swissrisk.com
===============================================



---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-users-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-users-help@xml.apache.org


Re: xsl:import question

Posted by Joerg Heinicke <jo...@gmx.de>.
Hello Markus,

no guarantee that it works, but what about the following:

<xsl:import href="cocoon:/trignm.xsl"/>

Now you must add a pipeline to your sitemap:

<map:match pattern="trignm.xsl">
   <map:read src="path/to/xsl/trignm.xsl" mime-type="text/xml"/>
</map:match>

With this solution you have added a further mapping layer: You can 
change the location of your trignm.xsl without changing the import 
statements in every refering stylesheet.

If you have different sub sitemaps, you can add the above pipeline to 
the root sitemap and change the import path to "cocoon://trignm.xsl" 
(double slash).

Another possibility is to use the context:// protocol which refers to 
the servlet context. Now you were working on the file system: 
"context://resources/stylesheets/trignm.xsl".

Find more about the cocoon protocols at 
http://cocoon.apache.org/2.0/userdocs/concepts/sitemap.html (in the 
middle of the page).

Joerg

Markus Alin wrote:
> Hi!!
> 
> I'm using a computational stylesheet with alot of trigonometry templates
> which I include into whatever style sheet which needs it with the
> <xsl:import> tag. I ofcourse want the computational stylesheet to be
> available all over the application and I don't want to keep duplicate
> copies of it. The only way i found to achieve this was to work with
> relative directory paths. It currently looks like:
> 
> <xsl:import href="../../../../../resources/stylesheets/trignm.xsl"/>
> 
> This ofcource makes the system very static and is from my point of view
> a violation against the whole sitemap philosophy. Are there any plans to
> change this or are there any alternative ways to achieve the same
> thing??
> 
> /Thnxs Markus


---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-users-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-users-help@xml.apache.org


Re: xsl:import question

Posted by Richard in Public <ed...@blueyonder.co.uk>.
Hi Markus

I haven't tried any of this, but it occured to me that you could improve
things somewhat by mounting a 'trig-sub-sitemap', or perhaps even a
library sub-sitemap.

(I cannot remember whether it would be sufficient to do this in your
main sitemap only (i.e. the one in the cocoon root directory) or whether
you would need to mount it in each 'local' sitemap)

Steps would be something like this:

1.  Create directory (e.g. c:/cocoon/lib/trig)
2.  Add to relevant sitemap (try main sitemap first) 

<map:match pattern="cocoon-library/**"> 
  <map:mount uri-prefix="cocoon-library" check-reload="yes"
src="c:/cocoon/lib/sitemap.xmap"/>
</map:match>

3.  Mount each library to the main library sitemap

Another way of putting this is to make the trig stylesheets available as
a separate coocoon site, which all of your projects can draw on.

I know this is a bit of a fuzzy description, but that's how my mind is
right now.  Hope this helps!

Richard



On Thu, 2003-06-12 at 10:08, Markus Alin wrote:
> Hi!!
> 
> I'm using a computational stylesheet with alot of trigonometry templates
> which I include into whatever style sheet which needs it with the
> <xsl:import> tag. I ofcourse want the computational stylesheet to be
> available all over the application and I don't want to keep duplicate
> copies of it. The only way i found to achieve this was to work with
> relative directory paths. It currently looks like:
> 
> <xsl:import href="../../../../../resources/stylesheets/trignm.xsl"/>
> 
> This ofcource makes the system very static and is from my point of view
> a violation against the whole sitemap philosophy. Are there any plans to
> change this or are there any alternative ways to achieve the same
> thing??
> 
> /Thnxs Markus
> 
> 
> 
> ===============================================
> Markus Alin         tel: +41 1 455 70 03
> Swissrisk AG        fax: +41 1 455 70 01
> Räffelstrasse 32    mailto:markus@swissrisk.com
> 8045 Zürich         www.swissrisk.com
> ===============================================
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: cocoon-users-unsubscribe@xml.apache.org
> For additional commands, e-mail: cocoon-users-help@xml.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-users-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-users-help@xml.apache.org