You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by ne...@apache.org on 2007/05/19 10:09:41 UTC

svn commit: r539710 - /lenya/trunk/src/pubs/default/sitemap.xmap

Author: nettings
Date: Sat May 19 01:09:38 2007
New Revision: 539710

URL: http://svn.apache.org/viewvc?view=rev&rev=539710
Log:
trivial refactoring of default pub sitemap.xmap.
the doctype-specific xslt is now generated in a separate pipeline. this
avoids some local code duplication and improves readability.

one functional change: the fallback stylesheet if no doctype-specific
one is found is now page2xhtml.xsl (used to be page2xhtml-xhtml.xsl).

Modified:
    lenya/trunk/src/pubs/default/sitemap.xmap

Modified: lenya/trunk/src/pubs/default/sitemap.xmap
URL: http://svn.apache.org/viewvc/lenya/trunk/src/pubs/default/sitemap.xmap?view=diff&rev=539710&r1=539709&r2=539710
==============================================================================
--- lenya/trunk/src/pubs/default/sitemap.xmap (original)
+++ lenya/trunk/src/pubs/default/sitemap.xmap Sat May 19 01:09:38 2007
@@ -148,6 +148,25 @@
         </map:aggregate>
         <map:serialize type="xml"/>
       </map:match>
+
+      <!--
+        This match provides the XSLT to render a given doctype to XHTML
+        It checks for the existence of a doctype-specific one, and if none
+        exists, falls back to the default one.
+      -->
+      <map:match pattern="getDoctypeXSLT/*">
+        <map:select type="resource-exists">
+          <map:parameter name="prefix" value="fallback://"/>
+          <map:when test="xslt/page2xhtml-{1}.xsl">
+            <map:generate src="fallback://xslt/page2xhtml-{1}.xsl"/>
+          </map:when>
+          <map:otherwise>
+            <map:generate src="fallback://xslt/page2xhtml.xsl"/>
+          </map:otherwise>
+        </map:select>
+        <map:serialize type="xml"/>
+      </map:match>
+
     </map:pipeline>
         
     <!-- This is the pipeline that builds the page. It aggregates all
@@ -159,45 +178,22 @@
         <map:generate src="cocoon:/lenyabody-raw-{1}/{2}/{3}/{4}/{page-envelope:default-language}/{page-envelope:document-language}/{5}"/>
         <map:transform type="uuid2url"/>
         <map:transform src="fallback://lenya/modules/svg/xslt/image2svg.xsl"/>
-        <map:select type="resource-exists">
-          <map:parameter name="prefix" value="fallback://"/>
-          <map:when test="xslt/page2xhtml-{4}.xsl">
-            <map:transform src="fallback://xslt/page2xhtml-{4}.xsl">
-              <map:parameter name="root" value="{base-url:{2}:{3}:{access-control:ssl}}"/>
-              <map:parameter name="publication-id" value="{2}"/>
-              <map:parameter name="area" value="{3}"/>
-              <map:parameter name="url" value="{5}"/>
-              <map:parameter name="document-path" value="{page-envelope:document-path}"/>
-              <map:parameter name="document-type" value="{4}"/>
-              <map:parameter name="language" value="{page-envelope:document-language}"/>
-              <map:parameter name="contextprefix" value="{request:contextPath}"/>
-              <map:parameter name="title" value="{dublincore:title}"/>
-              <map:parameter name="lastPublishedUser" value="{access-control:user-name:{workflow:lastUser.publish}}"/>
-              <map:parameter name="lastPublishedDate" value="{workflow:lastDate.publish}"/>
-              <!-- Following is a show off to explain lenya.properties.xml -->
-              <map:parameter name="author" value="{properties:pubs.default.author}"/>
-              <map:parameter name="nodeName" value="{page-envelope:document-name}"/>
-            </map:transform>
-          </map:when>
-          <map:otherwise>
-            <map:transform src="fallback://xslt/page2xhtml-xhtml.xsl">
-              <map:parameter name="root" value="{base-url:{2}:{3}:{access-control:ssl}}"/>
-              <map:parameter name="publication-id" value="{2}"/>
-              <map:parameter name="area" value="{3}"/>
-              <map:parameter name="url" value="{5}"/>
-              <map:parameter name="document-path" value="{page-envelope:document-path}"/>
-              <map:parameter name="document-type" value="{4}"/>
-              <map:parameter name="language" value="{page-envelope:document-language}"/>
-              <map:parameter name="contextprefix" value="{request:contextPath}"/>
-              <map:parameter name="title" value="{dublincore:title}"/>
-              <map:parameter name="lastPublishedUser" value="{access-control:user-name:{workflow:lastUser.publish}}"/>
-              <map:parameter name="lastPublishedDate" value="{workflow:lastDate.publish}"/>
-              <!-- Following is a show off to explain lenya.properties.xml -->
-              <map:parameter name="author" value="{properties:pubs.default.author}"/>
-              <map:parameter name="nodeName" value="{page-envelope:document-name}"/>
-            </map:transform>
-          </map:otherwise>
-        </map:select>
+        <map:transform src="cocoon:/getDoctypeXSLT/{4}">
+          <map:parameter name="root" value="{base-url:{2}:{3}:{access-control:ssl}}"/>
+          <map:parameter name="publication-id" value="{2}"/>
+          <map:parameter name="area" value="{3}"/>
+          <map:parameter name="url" value="{5}"/>
+          <map:parameter name="document-path" value="{page-envelope:document-path}"/>
+          <map:parameter name="document-type" value="{4}"/>
+          <map:parameter name="language" value="{page-envelope:document-language}"/>
+          <map:parameter name="contextprefix" value="{request:contextPath}"/>
+          <map:parameter name="title" value="{dublincore:title}"/>
+          <map:parameter name="lastPublishedUser" value="{access-control:user-name:{workflow:lastUser.publish}}"/>
+          <map:parameter name="lastPublishedDate" value="{workflow:lastDate.publish}"/>
+          <!-- Following is a show off to explain lenya.properties.xml -->
+          <map:parameter name="author" value="{properties:pubs.default.author}"/>
+          <map:parameter name="nodeName" value="{page-envelope:document-name}"/>
+        </map:transform>
         
         <!-- This is a demonstration of the generic meta data transformer
           described in bug 39891.



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org