forrest-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Cyriaque Dupoirieux <Cyriaque.Dupoiri...@pcotech.fr>
Subject [Dispatcher location map]
Date Tue, 18 Apr 2006 08:55:49 GMT
Hi,

    I think that the location map of the dispatcher needs to be cleaned 
and self documented - generally, I cannot retrieve where variables - 
such as {project.structurer} point.
    I try to understand the location map - and it's not quite easy :-)  
- and I think fallbacks mecanism should be homogenised.

First, we need to be homogeneous :
----------------------------------------------------

    For instance in some patterns - such as 
pattern="dataModel-html-**.xsl", the location map looks into :

    * src="{project:structurer}/resources/stylesheets/html/{1}.xsl"
    * src="{project:skins-dir}{project:theme}/xslt/html/{1}.xsl"
    * and src="{defaults:structurer}/resources/stylesheets/html/{1}.xsl"

    And in other patterns - such as pattern="contract-strip-xsl.xsl", 
the location map looks into :

    * src="{project:structurer}/resources/stylesheets/contract-strip-xsl.xsl"
    * and
      src="{defaults:structurer}/resources/stylesheets/contract-strip-xsl.xsl"

And we don't know why it does not search in skin-dir ?

    Another example is the use of different pathes which seem to be the 
same :

    * {project:structurer}/resources
    * and {project:resources}

Second, we need to verify the fall backs :
------------------------------------------

    In other patterns, it seems the location map looks twice in the same 
location :
    <match pattern="dataModel-xml-document-to-**.xsl">
      <select type="exists">
*            <location 
src="{project:structurer}/resources/stylesheets/xml/document-to-{1}.xsl" />*
            <location 
src="{project:skins-dir}{project:theme}/xslt/xml/document-to-{1}.xsl" />
*            <location 
src="{project:structurer}/resources/stylesheets/xml/document-to-{1}.xsl" />*
            <location 
src="{defaults:structurer}/resources/stylesheets/xml/document-to-{1}.xsl" />
      </select>
    </match>

At last, we may add entry points to have the possibility to override 
everything :
------------------------------------------------------------------------------
    For instance to systematically have an entry point pattern to 
override a stylesheet and a standard pattern :

    <match pattern="dataModel-xml-document-to-**.xsl">
      <select type="exists">
            <location 
src="{project:structurer}/resources/stylesheets/xml/document-to-{1}.xsl" />
            <location 
src="{project:skins-dir}{project:theme}/xslt/xml/document-to-{1}.xsl" />
*            <location src="{lm:std-dataModel-xml-document-to-{1}.xsl" />*
      </select>
    </match>
    <match pattern="std-dataModel-xml-document-to-**.xsl">
      <select type="exists">
            <location 
src="{defaults:structurer}/resources/stylesheets/xml/document-to-{1}.xsl" />
      </select>
    </match>

With these two patterns, the customiser can create his own 
document-to-html.xsl in his project directory and import the standard in 
this stylesheet :
      <!-- Standard Import... -->
      <xsl:import href="lm://std-dataModel-xml-document-to-html.xsl"/>

Maybe I should create an Issue for this ?

-- 

Salutations,
Cyriaque,

Mime
View raw message