| <?xml version="1.0"?> |
| <!-- |
| Copyright 2002-2004 The Apache Software Foundation |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| <!-- =============================================== |
| Default Forrest sitemap, defining the whole site. |
| Delegates to the other *.xmap files. See |
| http://xml.apache.org/forrest/sitemap-ref.html |
| |
| $Revision: 1.12 $ |
| ==================================================== --> |
| |
| |
| <map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0"> |
| <map:components> |
| <map:generators default="file"> |
| <map:generator name="file" src="org.apache.cocoon.generation.FileGenerator" /> |
| <map:generator name="exception" |
| src="org.apache.cocoon.generation.ParseExceptionGenerator"/> |
| <!-- |
| <map:generator name="html" src="org.apache.cocoon.generation.HTMLGenerator"> |
| <jtidy-config>jtidy.properties</jtidy-config> |
| </map:generator> |
| <map:generator name="directory" src="org.apache.cocoon.generation.DirectoryGenerator" /> |
| --> |
| <map:generator name="notifier" src="org.apache.cocoon.sitemap.NotifyingGenerator" /> |
| |
| </map:generators> |
| |
| <map:transformers default="xslt"> |
| <!-- Add values to skinconf that need extra processing like the color shades --> |
| <map:transformer name="skinconf" src="org.apache.forrest.skinconf.SkinconfTransformer"/> |
| |
| <!-- Generates @id attributes from <title> strings --> |
| <map:transformer name="idgen" src="org.apache.cocoon.transformation.IdGeneratorTransformer"> |
| <element>//*[local-name() = 'section']</element> |
| <id>title/text()</id> |
| </map:transformer> |
| |
| <!-- Rewrites links, e.g. transforming href="site:index" to href="../index.html" --> |
| <!-- See http://xml.apache.org/forrest/sitemap-ref.html#linkrewriting_impl --> |
| <map:transformer name="linkrewriter" logger="sitemap.transformer.linkrewriter" src="org.apache.cocoon.transformation.LinkRewriterTransformer"> |
| <link-attrs>href src</link-attrs> |
| <schemes>site ext</schemes> |
| |
| <input-module name="site"> |
| <input-module name="linkmap"> |
| <file src="{src}" reloadable="true" /> |
| </input-module> |
| <prefix>/site//</prefix> |
| <suffix>/@href</suffix> |
| </input-module> |
| <input-module name="ext"> |
| <input-module name="linkmap"> |
| <file src="{src}" reloadable="true" /> |
| </input-module> |
| <prefix>/site/external-refs//</prefix> |
| <suffix>/@href</suffix> |
| </input-module> |
| </map:transformer> |
| |
| <map:transformer name="xpath" logger="sitemap.transformer.xpath" src="org.apache.cocoon.transformation.XPathTransformer" /> |
| |
| <map:transformer name="xslt" src="org.apache.cocoon.transformation.TraxTransformer" logger="sitemap.transformer.xslt" pool-max="32" pool-min="8" pool-grow="2"> |
| <use-request-parameters>false</use-request-parameters> |
| <use-browser-capabilities-db>false</use-browser-capabilities-db> |
| <use-deli>false</use-deli> |
| <transformer-factory>org.apache.xalan.processor.TransformerFactoryImpl</transformer-factory> |
| <!--<transformer-factory>com.icl.saxon.TransformerFactoryImpl</transformer-factory>--> |
| <!--<transformer-factory>org.apache.xalan.xsltc.trax.TransformerFactoryImpl</transformer-factory>--> |
| </map:transformer> |
| |
| <map:transformer name="xsltc" src="org.apache.cocoon.transformation.TraxTransformer" logger="sitemap.transformer.xslt" pool-max="32" pool-min="8" pool-grow="2"> |
| <use-request-parameters>false</use-request-parameters> |
| <use-browser-capabilities-db>false</use-browser-capabilities-db> |
| <use-deli>false</use-deli> |
| <transformer-factory>org.apache.xalan.xsltc.trax.TransformerFactoryImpl</transformer-factory> |
| </map:transformer> |
| |
| <map:transformer name="xinclude" src="org.apache.cocoon.transformation.XIncludeTransformer" logger="sitemap.transformer.xinclude" pool-grow="2" pool-max="16" pool-min="2" /> |
| |
| <map:transformer name="cinclude" pool-grow="2" pool-max="16" pool-min="2" src="org.apache.cocoon.transformation.CIncludeTransformer" logger="sitemap.transformer.cinclude"/> |
| <map:transformer name="pattern" |
| src="org.apache.cocoon.transformation.PatternTransformer" |
| logger="sitemap.transformer.pattern"> |
| <parameter name="groups" value="true"/> |
| </map:transformer> |
| <map:transformer name="lexer" |
| src="org.apache.cocoon.transformation.LexicalTransformer" |
| logger="sitemap.transformer.lexer"> |
| <parameter name="localizable" value="true"/> |
| </map:transformer> |
| <map:transformer name="parser" |
| src="org.apache.cocoon.transformation.ParserTransformer" |
| logger="sitemap.transformer.parser"> |
| <parameter name="flatten" value="true"/> |
| <parameter name="recovery" value="true"/> |
| <parameter name="localizable" value="true"/> |
| </map:transformer> |
| </map:transformers> |
| |
| <map:readers default="resource"> |
| <map:reader name="resource" src="org.apache.cocoon.reading.ResourceReader"/> |
| </map:readers> |
| |
| <map:serializers default="html"> |
| <map:serializer name="html" mime-type="text/html" src="org.apache.cocoon.serialization.HTMLSerializer"> |
| <doctype-public>-//W3C//DTD HTML 4.01 Transitional//EN</doctype-public> |
| <doctype-system>http://www.w3.org/TR/html4/loose.dtd</doctype-system> |
| </map:serializer> |
| |
| <map:serializer name="xml" mime-type="text/xml" src="org.apache.cocoon.serialization.XMLSerializer"/> |
| |
| <map:serializer name="xml-document" mime-type="text/xml" src="org.apache.cocoon.serialization.XMLSerializer"> |
| <cdata-section-elements>source</cdata-section-elements> |
| <doctype-public>-//APACHE//DTD Documentation V1.2//EN</doctype-public> |
| <doctype-system>document-v12.dtd</doctype-system> |
| </map:serializer> |
| |
| <map:serializer name="fo2pdf" src="org.apache.cocoon.serialization.FOPSerializer" mime-type="application/pdf" /> |
| |
| <map:serializer name="links" src="org.apache.cocoon.serialization.LinkSerializer"> |
| <encoding>ISO-8859-1</encoding> |
| </map:serializer> |
| |
| <map:serializer name="svgxml" src="org.apache.cocoon.serialization.XMLSerializer" mime-type="image/svg+xml"> |
| <doctype-public>-//W3C//DTD SVG 1.0//EN</doctype-public> |
| <doctype-system>http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd</doctype-system> |
| </map:serializer> |
| |
| <!-- |
| <map:serializer mime-type="application/x-shockwave-flash" name="swf" src="org.apache.cocoon.serialization.SWFSerializer"/> |
| <map:serializer mime-type="application/msword" name="fo2rtf" src="org.apache.cocoon.serialization.RTFSerializer"/> |
| --> |
| </map:serializers> |
| |
| <map:matchers default="wildcard"> |
| <map:matcher name="wildcard" src="org.apache.cocoon.matching.WildcardURIMatcher"/> |
| <map:matcher name="regexp" src="org.apache.cocoon.matching.RegexpURIMatcher"/> |
| </map:matchers> |
| |
| <map:selectors> |
| <map:selector logger="sitemap.selector.exists" name="exists" src="org.apache.cocoon.selection.SourceExistsSelector" /> |
| <map:selector logger="sitemap.selector.exception" name="exception" |
| src="org.apache.cocoon.selection.ExceptionSelector"> |
| <exception name="syntax" class="net.sourceforge.chaperon.process.ParseException"/> |
| <exception class="java.lang.Throwable" unroll="true"/> |
| </map:selector> |
| </map:selectors> |
| |
| <map:pipes default="caching"> |
| <map:pipe name="caching" src="org.apache.cocoon.components.pipeline.impl.CachingProcessingPipeline"/> |
| <!-- |
| <map:pipe name="noncaching" src="org.apache.cocoon.components.pipeline.impl.NonCachingProcessingPipeline"/> |
| <map:pipe name="profile-caching" src="org.apache.cocoon.components.profiler.ProfilingCachingProcessingPipeline"/> |
| <map:pipe name="profile-noncaching" src="org.apache.cocoon.components.profiler.ProfilingNonCachingProcessingPipeline"/> |
| --> |
| </map:pipes> |
| </map:components> |
| |
| <!-- NOTE: the 'links view' is no longer used to discover a page's links. |
| Instead of filterlinks.xsl, use cli.xconf include/exclude nodes to define which pages to render. |
| <map:views> |
| <map:view name="links" from-position="last"> |
| <map:transform src="{forrest:stylesheets}/filterlinks.xsl"> |
| <map:parameter name="ctxbasedir" value="{realpath:.}/"/> |
| </map:transform> |
| <map:serialize type="links"/> |
| </map:view> |
| </map:views> |
| --> |
| |
| <map:resources> |
| <map:resource name="skinit"> |
| <map:select type="exists"> |
| <map:when test="{project:skins-dir}{forrest:skin}/xslt/html/{type}.xsl"> |
| <map:transform src="{project:skins-dir}{forrest:skin}/xslt/html/{type}.xsl"> |
| <map:parameter name="notoc" value="{notoc}"/> |
| <!-- For backwards-compat with 0.2 - 0.4 skins --> |
| <map:parameter name="isfaq" value="{notoc}"/> |
| <map:parameter name="nopdf" value="{nopdf}"/> |
| <map:parameter name="path" value="{path}"/> |
| <map:parameter name="config-file" value="{project:skinconf}"/> |
| </map:transform> |
| </map:when> |
| <map:otherwise> |
| <map:transform src="{forrest:context}/skins/{forrest:skin}/xslt/html/{type}.xsl"> |
| <map:parameter name="notoc" value="{notoc}"/> |
| <!-- For backwards-compat with 0.2 - 0.4 skins --> |
| <map:parameter name="isfaq" value="{notoc}"/> |
| <map:parameter name="nopdf" value="{nopdf}"/> |
| <map:parameter name="path" value="{path}"/> |
| <map:parameter name="config-file" value="{project:skinconf}"/> |
| </map:transform> |
| </map:otherwise> |
| </map:select> |
| <map:serialize/> |
| </map:resource> |
| |
| </map:resources> |
| |
| <!-- =========================== Pipelines ================================= --> |
| <map:pipelines> |
| |
| <map:pipeline internal-only="false"> |
| <map:match pattern="skinconf.xml"> |
| <map:generate src="{project:skinconf}" /> |
| <map:select type="exists"> |
| <map:when test="{project:skins-dir}{forrest:skin}/skinconf.xsl"> |
| <map:transform src="{project:skins-dir}{forrest:skin}/skinconf.xsl"/> |
| </map:when> |
| </map:select> |
| <map:select type="exists"> |
| <map:when test="{forrest:context}/skins/{forrest:skin}/skinconf.xsl"> |
| <map:transform src="{forrest:context}/skins/{forrest:skin}/skinconf.xsl"/> |
| </map:when> |
| </map:select> |
| <map:transform src="{forrest:context}/skins/common/skinconf.xsl"/> |
| <map:transform type="skinconf"/> |
| <map:serialize type="xml" /> |
| </map:match> |
| </map:pipeline> |
| |
| <map:pipeline internal-only="false"> |
| <!-- ============================================================ --> |
| <!-- SOURCE FORMATS --> |
| <!-- Raw XML sources, typically doc-v12 format --> |
| <!-- ============================================================ --> |
| <!-- http://xml.apache.org/forrest/sitemap-ref.html#source_pipelines --> |
| |
| <!-- Body content --> |
| <map:match pattern="**.xml"> |
| <map:match pattern="changes.xml"> |
| <map:mount uri-prefix="" src="status.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="todo.xml"> |
| <map:mount uri-prefix="" src="status.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="**dtdx.xml"> |
| <map:mount uri-prefix="" src="dtd.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="forrest-issues.xml"> |
| <map:mount uri-prefix="" src="issues.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="**faq.xml"> |
| <map:mount uri-prefix="" src="faq.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="community/**index.xml"> |
| <map:mount uri-prefix="" src="forrest.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="community/*/**.xml"> |
| <map:mount uri-prefix="" src="revisions.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="site.xml"> |
| <map:mount uri-prefix="" src="aggregate.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <!-- Default source types --> |
| <map:mount uri-prefix="" src="forrest.xmap" check-reload="yes" /> |
| |
| </map:match> |
| |
| <!-- Menu content --> |
| <map:match pattern="abs-menulinks"> |
| <map:mount uri-prefix="" src="menu.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="**menulinks-*"> |
| <map:mount uri-prefix="" src="menu.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <!-- Link maps --> |
| <map:match pattern="abs-linkmap"> |
| <map:mount uri-prefix="" src="linkmap.xmap"/> |
| </map:match> |
| |
| <map:match pattern="**linkmap-*"> |
| <map:match pattern="linkmap-site.*"> |
| <map:mount uri-prefix="" src="aggregate.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:mount uri-prefix="" src="linkmap.xmap" check-reload="yes" /> |
| </map:match> |
| |
| </map:pipeline> |
| |
| |
| <!-- ============================================================ --> |
| <!-- INTERMEDIATE FORMATS --> |
| <!-- Tabs, menus and body HTML. --> |
| <!-- Called from output format pipelines --> |
| <!-- ============================================================ --> |
| <!-- http://xml.apache.org/forrest/sitemap-ref.html#intermediate_pipelines --> |
| |
| <map:pipeline internal-only="false"> |
| |
| <!-- External matches --> |
| <!-- (HTML rendered directly from special formats) --> |
| <map:match pattern="**body-faq.html"> |
| <map:mount uri-prefix="" src="faq.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="**body-*.html"> |
| <map:select type="exists"> |
| <map:when test="{project:content.xdocs}{1}{2}.ehtml"> |
| <map:generate src="{project:content.xdocs}{1}{2}.ehtml" /> |
| <map:transform src="{forrest:stylesheets}/html2htmlbody.xsl" /> |
| <map:transform type="linkrewriter" src="cocoon:/{1}linkmap-{2}.html"/> |
| <map:serialize type="xml" /> |
| </map:when> |
| </map:select> |
| </map:match> |
| |
| <!-- Default matches --> |
| <!-- (HTML rendered from doc-v11 intermediate format --> |
| <map:match pattern="**body-*.html"> |
| <map:generate src="cocoon:/{1}{2}.xml"/> |
| <map:transform type="idgen"/> |
| <map:transform type="xinclude"/> |
| <map:transform type="linkrewriter" src="cocoon:/{1}linkmap-{2}.html"/> |
| <map:call resource="skinit"> |
| <map:parameter name="type" value="document2html"/> |
| <map:parameter name="path" value="{1}{2}.html"/> |
| <map:parameter name="notoc" value="false"/> |
| </map:call> |
| </map:match> |
| |
| <map:match pattern="**menu-*.html"> |
| <map:generate src="cocoon:/{1}book-{2}.html"/> |
| <map:transform type="linkrewriter" src="cocoon:/{1}linkmap-{2}.html"/> |
| <map:call resource="skinit"> |
| <map:parameter name="type" value="book2menu"/> |
| <map:parameter name="path" value="{1}{2}.html"/> |
| </map:call> |
| </map:match> |
| |
| <map:match pattern="**tab-*.html"> |
| <map:mount uri-prefix="" src="tabs.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="**i18n-*.html"> |
| <map:mount uri-prefix="" src="i18n.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="**book-*.html"> |
| <map:mount uri-prefix="" src="menu.xmap" check-reload="yes" /> |
| </map:match> |
| |
| </map:pipeline> |
| |
| |
| <map:pipeline internal-only="false"> |
| |
| <!-- ============================================================ --> |
| <!-- OUTPUT FORMATS --> |
| <!-- Serves content directly to the user --> |
| <!-- +==========================================================+ --> |
| <!-- http://xml.apache.org/forrest/sitemap-ref.html#output_pipelines --> |
| |
| <map:match type="regexp" pattern="^.+$"> |
| <map:select type="exists"> |
| <map:when test="{project:content}/{0}"> |
| <map:mount uri-prefix="" src="raw.xmap" check-reload="yes" /> |
| </map:when> |
| </map:select> |
| </map:match> |
| |
| <map:match pattern="*.html"> |
| <map:aggregate element="site"> |
| <map:part src="cocoon:/skinconf.xml"/> |
| <map:part src="cocoon:/tab-{0}"/> |
| <map:part src="cocoon:/menu-{0}"/> |
| <map:part src="cocoon:/body-{0}"/> |
| </map:aggregate> |
| <map:call resource="skinit"> |
| <map:parameter name="type" value="site2xhtml"/> |
| <map:parameter name="path" value="{0}"/> |
| </map:call> |
| </map:match> |
| |
| <map:match pattern="**/*.html"> |
| <map:aggregate element="site"> |
| <map:part src="cocoon:/skinconf.xml"/> |
| <map:part src="cocoon:/{1}/tab-{2}.html"/> |
| <map:part src="cocoon:/{1}/menu-{2}.html"/> |
| <map:part src="cocoon:/{1}/body-{2}.html"/> |
| </map:aggregate> |
| <map:call resource="skinit"> |
| <map:parameter name="type" value="site2xhtml"/> |
| <map:parameter name="path" value="{0}"/> |
| </map:call> |
| </map:match> |
| |
| <map:match pattern="**faq.pdf"> |
| <map:mount uri-prefix="" src="faq.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match type="regexp" pattern="^(.*?)([^/]*).pdf$"> |
| <map:generate src="cocoon:/{1}{2}.xml"/> |
| <!-- <map:transform type="idgen"/> --> |
| <map:transform type="xinclude"/> |
| <map:transform type="linkrewriter" src="cocoon://{1}linkmap-{2}.pdf"/> |
| <map:select type="exists"> |
| <map:when test="{project:skins-dir}{forrest:skin}/xslt/fo/document2fo.xsl"> |
| <map:transform src="{project:skins-dir}{forrest:skin}/xslt/fo/document2fo.xsl"> |
| <map:parameter name="config-file" value="{project:skinconf}"/> |
| <map:parameter name="imagesdir" value="{project:resources.images}/"/> |
| <map:parameter name="xmlbasedir" value="{project:content.xdocs}{1}"/> |
| </map:transform> |
| </map:when> |
| <map:when test="{forrest:context}/skins/{forrest:skin}/xslt/fo/document2fo.xsl"> |
| <map:transform src="{forrest:context}/skins/{forrest:skin}/xslt/fo/document2fo.xsl"> |
| <map:parameter name="config-file" value="{project:skinconf}"/> |
| <map:parameter name="imagesdir" value="{project:resources.images}/"/> |
| <map:parameter name="xmlbasedir" value="{project:content.xdocs}{1}"/> |
| </map:transform> |
| </map:when> |
| <map:otherwise> |
| <map:transform src="{forrest:context}/skins/common/xslt/fo/document2fo.xsl"> |
| <map:parameter name="config-file" value="{project:skinconf}"/> |
| <map:parameter name="imagesdir" value="{project:resources.images}/"/> |
| <map:parameter name="xmlbasedir" value="{project:content.xdocs}{1}"/> |
| </map:transform> |
| </map:otherwise> |
| </map:select> |
| <map:serialize type="fo2pdf"/> |
| </map:match> |
| |
| <map:match type="regexp" pattern="^(.*?)([^/]*).svg$"> |
| <map:generate src="cocoon:/{1}{2}.xml"/> |
| <!-- <map:transform type="idgen"/> --> |
| <map:transform type="xinclude"/> |
| <map:transform type="linkrewriter" src="cocoon://{1}linkmap-{2}.svg"/> |
| <map:select type="exists"> |
| <map:when test="{project:skins-dir}{forrest:skin}/xslt/svg/document2svg.xsl"> |
| <map:transform src="{project:skins-dir}{forrest:skin}/xslt/svg/document2svg.xsl"> |
| <map:parameter name="imagesdir" value="{project:resources.images}/"/> |
| <map:parameter name="xmlbasedir" value="{project:content.xdocs}{1}"/> |
| </map:transform> |
| </map:when> |
| <map:when test="{forrest:context}/skins/{forrest:skin}/xslt/svg/document2svg.xsl"> |
| <map:transform src="{forrest:context}/skins/{forrest:skin}/xslt/svg/document2svg.xsl"> |
| <map:parameter name="imagesdir" value="{project:resources.images}/"/> |
| <map:parameter name="xmlbasedir" value="{project:content.xdocs}{1}"/> |
| </map:transform> |
| </map:when> |
| <map:otherwise> |
| <map:transform src="{forrest:context}/skins/common/xslt/svg/document2svg.xsl"> |
| <map:parameter name="imagesdir" value="{project:resources.images}/"/> |
| <map:parameter name="xmlbasedir" value="{project:content.xdocs}{1}"/> |
| </map:transform> |
| </map:otherwise> |
| </map:select> |
| <map:serialize type="svgxml"/> |
| </map:match> |
| |
| <map:match pattern="**changes.rss"> |
| <map:mount uri-prefix="" src="status.xmap" check-reload="yes" /> |
| </map:match> |
| |
| <map:match pattern="profiler"> |
| <map:mount uri-prefix="" src="profiler.xmap" check-reload="yes" /> |
| </map:match> |
| <map:match pattern="**.js"> |
| <map:mount uri-prefix="" src="resources.xmap" check-reload="yes" /> |
| </map:match> |
| <map:match pattern="**.css"> |
| <map:mount uri-prefix="" src="resources.xmap" check-reload="yes" /> |
| </map:match> |
| <map:match pattern="**images**"> |
| <map:mount uri-prefix="" src="resources.xmap" check-reload="yes" /> |
| </map:match> |
| <map:match pattern="**.png"> |
| <map:mount uri-prefix="" src="resources.xmap" check-reload="yes" /> |
| </map:match> |
| <map:match pattern="**.ico"> |
| <map:mount uri-prefix="" src="resources.xmap" check-reload="yes" /> |
| </map:match> |
| </map:pipeline> |
| |
| |
| |
| <!-- ============================================================ --> |
| <!-- REDIRECTS --> |
| <!-- ============================================================ --> |
| <map:pipeline internal-only="false"> |
| |
| <map:match pattern=""> |
| <map:redirect-to uri="index.html" /> |
| </map:match> |
| <map:match type="regexp" pattern="^.+/$"> |
| <map:redirect-to uri="index.html"/> |
| </map:match> |
| </map:pipeline> |
| |
| |
| </map:pipelines> |
| </map:sitemap> |