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,