Upgrade to forrest-0.7 ... will finish off at ApacheCon hackathon.

Still need to tidy up and also update the "howto forrest" and readme.


git-svn-id: https://svn.apache.org/repos/asf/xml/commons/trunk@226257 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
crossley 2005-07-14 02:23:37 +00:00
parent 952f4fe63d
commit b8b0610cd5
4 changed files with 380 additions and 537 deletions

View File

@ -1,7 +1,9 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<!--FIXME IG
<!DOCTYPE project [ <!DOCTYPE project [
<!ENTITY forrest-targets SYSTEM "file:./forrest-targets.ent"> <!ENTITY forrest-targets SYSTEM "file:./forrest-targets.ent">
]> ]>
-->
<!-- <!--
Simplistic meta-build file to call various other xml-commons build files. Simplistic meta-build file to call various other xml-commons build files.
Currently merely uses <ant> to build all subprojects, then Currently merely uses <ant> to build all subprojects, then
@ -47,11 +49,18 @@ just creates a distribution out of all of them.
<property name="dist.dir" value="${tmp.dir}/build"/> <property name="dist.dir" value="${tmp.dir}/build"/>
<property name="site.dir" value="${dist.dir}/site"/> <property name="site.dir" value="${dist.dir}/site"/>
<property name="build.docs.content.dir" value="${dist.dir}/tmp/context/content"/> <property name="docs.content.dir" value="src/documentation/content"/>
<!-- FIXME IG -->
<!--Import the Forrest targets -->
<!--
<property environment="env"/>
<property name="forrest.home" value="${env.FORREST_HOME}"/>
<import file="${env.FORREST_HOME}/forrest.build.xml"/>
-->
<!-- Public Targets --> <!-- Public Targets -->
<target name="all" <target name="all"
depends="docs,jars,javadocs,dist" depends="jars,javadocs,dist"
description="Default all target; calls every sub-build file directly."> description="Default all target; calls every sub-build file directly.">
</target> </target>
@ -112,14 +121,24 @@ just creates a distribution out of all of them.
</ant> </ant>
</target> </target>
<target name="docs"> <target name="docs" depends="prepare-extra-docs, site">
<!-- prepare some other docs --> <!-- prepare some other docs -->
<!--FIXME IG
<copy todir="${build.docs.content.dir}/components"> <copy todir="${build.docs.content.dir}/components">
<fileset dir="java/src/org/apache/xml/resolver" includes="LICENSE.resolver.txt"/> <fileset dir="java/src/org/apache/xml/resolver" includes="LICENSE.resolver.txt"/>
</copy> </copy>
-->
<!-- call forrest to generate the docs --> <!-- call forrest to generate the docs -->
<!--
<ant target="site"/> <ant target="site"/>
-->
</target>
<target name="prepare-extra-docs">
<copy todir="${docs.content.dir}/components">
<fileset dir="java/src/org/apache/xml/resolver" includes="LICENSE.resolver.txt"/>
</copy>
</target> </target>
<target name="javadocs"> <target name="javadocs">
@ -130,5 +149,7 @@ just creates a distribution out of all of them.
</target> </target>
<!-- import the Forrest build targets --> <!-- import the Forrest build targets -->
<!--FIXME IG
&forrest-targets; &forrest-targets;
-->
</project> </project>

View File

@ -1,5 +1,21 @@
# Copyright 2002-2005 The Apache Software Foundation or its licensors,
# as applicable.
#
# 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.
############## ##############
# Properties used by forrest.build.xml for building the website # Properties used by forrest.build.xml for building the website
# These are the defaults, un-comment them only if you need to change them.
############## ##############
# Prints out a summary of Forrest settings for this project # Prints out a summary of Forrest settings for this project
@ -9,11 +25,13 @@
#project.name=my-project #project.name=my-project
# Specifies name of Forrest skin to use # Specifies name of Forrest skin to use
#project.skin=forrest-site # See list at http://forrest.apache.org/docs/skins.html
#project.skin=forrest-css #project.skin=pelt
#project.skin=avalon-tigris
#project.skin=krysalis-site
# Descriptors for plugins and skins
# comma separated list, file:// is supported
#forrest.skins.descriptors=http://forrest.apache.org/skins/skins.xml,file:///c:/myskins/skins.xml
#forrest.plugins.descriptors=http://forrest.apache.org/plugins/plugins.xml,http://forrest.apache.org/plugins/whiteboard-plugins.xml
############## ##############
# behavioural properties # behavioural properties
@ -23,13 +41,14 @@
############## ##############
# layout properties # layout properties
# Properties that must be set to override the default locations # Properties that can be set to override the default locations
# #
# Parent properties must be set. This usually means uncommenting # Parent properties must be set. This usually means uncommenting
# project.content-dir if any other property using it is uncommented # project.content-dir if any other property using it is uncommented
#project.status=status.xml #project.status=status.xml
#project.content-dir=src/documentation #project.content-dir=src/documentation
#project.raw-content-dir=${project.content-dir}/content
#project.conf-dir=${project.content-dir}/conf #project.conf-dir=${project.content-dir}/conf
#project.sitemap-dir=${project.content-dir} #project.sitemap-dir=${project.content-dir}
#project.xdocs-dir=${project.content-dir}/content/xdocs #project.xdocs-dir=${project.content-dir}/content/xdocs
@ -41,24 +60,14 @@
#project.skinconf=${project.content-dir}/skinconf.xml #project.skinconf=${project.content-dir}/skinconf.xml
#project.lib-dir=${project.content-dir}/lib #project.lib-dir=${project.content-dir}/lib
#project.classes-dir=${project.content-dir}/classes #project.classes-dir=${project.content-dir}/classes
#project.translations-dir=${project.content-dir}/translations
##############
# Cocoon catalog entity resolver properties
# A local OASIS catalog file to supplement the default Forrest catalog
#project.catalog=${project.schema-dir}/catalog.xcat
# The verbosity level for the entity resolver (1..10)
#forrest.catalog.verbosity=1
############## ##############
# validation properties # validation properties
# These props determine if validation is performed at all # This set of properties determine if validation is performed
# Values are inherited unless overridden. # Values are inherited unless overridden.
# Eg, if forrest.validate=false, then all others are false unless set to true. # e.g. if forrest.validate=false then all others are false unless set to true.
#forrest.validate=true #forrest.validate=true
#forrest.validate.xdocs=${forrest.validate} #forrest.validate.xdocs=${forrest.validate}
#forrest.validate.skinconf=${forrest.validate} #forrest.validate.skinconf=${forrest.validate}
@ -67,50 +76,54 @@
#forrest.validate.skins=${forrest.validate} #forrest.validate.skins=${forrest.validate}
#forrest.validate.skins.stylesheets=${forrest.validate.skins} #forrest.validate.skins.stylesheets=${forrest.validate.skins}
# *.failonerror=(true|false) - stop when an XML file is invalid
# Key:
# *.failonerror=(true|false) stop when an XML file is invalid
# *.includes=(pattern) Comma-separated list of path patterns to validate
# *.excludes=(pattern) Comma-separated list of path patterns to not validate
#forrest.validate.failonerror=true #forrest.validate.failonerror=true
#forrest.validate.includes=**/*
#forrest.validate.excludes= # *.excludes=(pattern) - comma-separated list of path patterns to not validate
# # e.g.
#forrest.validate.xdocs.failonerror=${forrest.validate.failonerror} #forrest.validate.xdocs.excludes=samples/subdir/**, samples/faq.xml
# #forrest.validate.xdocs.excludes=
#forrest.validate.xdocs.includes=**/*.x*
#forrest.validate.xdocs.excludes=site.xml
#
#forrest.validate.skinconf.includes=${skinconf-file}
#forrest.validate.skinconf.excludes=
#forrest.validate.skinconf.failonerror=${forrest.validate.failonerror}
#
#forrest.validate.sitemap.includes=${sitemap-file}
#forrest.validate.sitemap.excludes=
#forrest.validate.sitemap.failonerror=${forrest.validate.failonerror}
#
#forrest.validate.stylesheets.includes=**/*.xsl
#forrest.validate.stylesheets.excludes=
#forrest.validate.stylesheets.failonerror=${forrest.validate.failonerror}
#
#forrest.validate.skins.includes=**/*
#forrest.validate.skins.excludes=**/*.xsl
#forrest.validate.skins.failonerror=${forrest.validate.failonerror}
#
#forrest.validate.skins.stylesheets.includes=**/*.xsl
#forrest.validate.skins.stylesheets.excludes=
#forrest.validate.skins.stylesheets.failonerror=${forrest.validate.skins.failonerror}
############## ##############
# General Forrest properties # General Forrest properties
# The URL to start crawling from # The URL to start crawling from
#project.start-uri=index.html #project.start-uri=linkmap.html
# Set logging level for messages printed to the console # Set logging level for messages printed to the console
# (DEBUG, INFO, WARN, ERROR, FATAL_ERROR)
#project.debuglevel=ERROR #project.debuglevel=ERROR
# Max memory to allocate to Java # Max memory to allocate to Java
#forrest.maxmemory=64m #forrest.maxmemory=64m
# Any other arguments to pass to the JVM. For example, to run on an X-less # Any other arguments to pass to the JVM. For example, to run on an X-less
# server, set to -Djava.awt.headless=true # server, set to -Djava.awt.headless=true
#forrest.jvmargs= #forrest.jvmargs=
# The bugtracking URL - the issue number will be appended
#project.bugtracking-url=http://issues.apache.org/bugzilla/show_bug.cgi?id=
#project.bugtracking-url=http://issues.apache.org/jira/browse/
# The issues list as rss
#project.issues-rss-url=
#I18n Property. Based on the locale request for the browser.
#If you want to use it for static site then modify the JVM system.language
# and run once per language
#project.i18n=true
# The names of plugins that are required to build the project
# comma separated list (no spaces)
# You can request a specific version by appending "-VERSION" to the end of
# the plugin name. If you exclude a version number the latest released version
# will be used, however, be aware that this may be a development version. In
# a production environment it is recomended that you specify a known working
# version.
# Run "forrest available-plugins" for a list of plug-ins currently available
project.required.plugins=org.apache.forrest.plugin.output.pdf,org.apache.forrest.plugin.input.projectInfo
# Proxy configuration
# proxy.host=
# proxy.port=

View File

@ -1,405 +1,16 @@
<?xml version="1.0"?> <?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$
==================================================== -->
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0"> <map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
<map:components> <map:pipelines>
<map:generators default="file"> <map:pipeline>
<map:generator name="file" src="org.apache.cocoon.generation.FileGenerator" /> <map:match pattern="**/resolver-*.html">
<map:generator name="serverpages" src="org.apache.cocoon.generation.ServerPagesGenerator"/> <map:generate src="{project:content.xdocs}/{1}/resolver-{2}.xml"/>
<!-- <!-- Wild assumption about the location of DocBook stylesheets.
<map:generator name="html" src="org.apache.cocoon.generation.HTMLGenerator"> Edit to suit your system.
<jtidy-config>jtidy.properties</jtidy-config>
</map:generator>
<map:generator name="directory" src="org.apache.cocoon.generation.DirectoryGenerator" />
-->
</map:generators>
<map:transformers default="xslt">
<!-- 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="xinclude" src="org.apache.cocoon.transformation.XIncludeTransformer" logger="sitemap.transformer.xinclude" pool-grow="2" pool-max="16" pool-min="2" />
</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 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.ResourceExistsSelector" />
</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="resources/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:transform src="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="obfuscate-mail-links" value="false"/>
<!-- Can set an alternative project skinconfig here
<map:parameter name="config-file" value="../../../../skinconf.xml"/>
--> -->
</map:transform> <map:transform
src="file:///usr/share/sgml/docbook/xsl-stylesheets/xhtml/docbook.xsl"/>
<map:serialize/> <map:serialize/>
</map:resource> </map:match>
</map:pipeline>
</map:resources> </map:pipelines>
<!-- =========================== Pipelines ================================= -->
<map:pipelines>
<map:pipeline internal-only="false">
<!-- xml-commons start -->
<!-- 2003-07-05 Copied default Forrest src/resources/conf/sitemap.xmap
and added this match -->
<map:match pattern="**/resolver-*.html">
<map:generate src="content/xdocs/{1}/resolver-{2}.xml"/>
<!-- wild assumption about location of DocBook stylesheets -->
<map:transform src="file:///usr/share/sgml/docbook/xsl-stylesheets/xhtml/docbook.xsl"/>
<map:serialize/>
</map:match>
<!-- xml-commons end -->
<!-- ============================================================ -->
<!-- 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="content/xdocs/{1}{2}.ehtml">
<map:generate src="content/xdocs/{1}{2}.ehtml" />
<map:transform src="resources/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:generate src="content/xdocs/tabs.xml" />
<map:transform type="linkrewriter" src="cocoon:/{1}linkmap-{2}.html"/>
<map:call resource="skinit">
<map:parameter name="type" value="tab2menu"/>
<map:parameter name="path" value="{1}{2}.html"/>
</map:call>
</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="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:/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:/{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:transform src="skins/{forrest:skin}/xslt/fo/document2fo.xsl">
<map:parameter name="ctxbasedir" value="{realpath:.}/"/>
<map:parameter name="xmlbasedir" value="content/xdocs/{1}"/>
</map:transform>
<map:serialize type="fo2pdf"/>
</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="**favicon.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> </map:sitemap>

View File

@ -1,6 +1,7 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<!-- <!--
Copyright 2002-2004 The Apache Software Foundation Copyright 2002-2005 The Apache Software Foundation or its licensors,
as applicable.
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@ -16,102 +17,93 @@
--> -->
<!-- <!--
Skin configuration file. This file contains details of your project, which will Skin configuration file. This file contains details of your project,
be used to configure the chosen Forrest skin. which will be used to configure the chosen Forrest skin.
--> -->
<!DOCTYPE skinconfig [ <!DOCTYPE skinconfig PUBLIC "-//APACHE//DTD Skin Configuration V0.7-1//EN" "http://forrest.apache.org/dtd/skinconfig-v07-1.dtd">
<!ENTITY % links.att 'name CDATA #REQUIRED'>
<!ENTITY % link.att 'name CDATA #REQUIRED href CDATA #REQUIRED'>
<!ELEMENT skinconfig (disable-search?, disable-print-link?, disable-pdf-link?,
disable-xml-link?, disable-compliance-links?, obfuscate-mail-links?, searchsite-domain?, searchsite-name?,
project-name, project-description?, project-url, project-logo, group-name?, group-description?, group-url?, group-logo?,
host-url?, host-logo?, year?, vendor?, trail?, toc?, credits?)*>
<!ELEMENT credits (credit*)>
<!ELEMENT credit (name, url, image?, width?, height?)>
<!-- id uniquely identifies the tool, and role indicates its function -->
<!ATTLIST credit id CDATA #IMPLIED
role CDATA #IMPLIED>
<!ELEMENT disable-search (#PCDATA)>
<!ELEMENT disable-print-link (#PCDATA)>
<!ELEMENT disable-pdf-link (#PCDATA)>
<!ELEMENT disable-xml-link (#PCDATA)>
<!ELEMENT disable-compliance-links (#PCDATA)>
<!ELEMENT obfuscate-mail-links (#PCDATA)>
<!ELEMENT searchsite-domain (#PCDATA)>
<!ELEMENT searchsite-name (#PCDATA)>
<!ELEMENT project-name (#PCDATA)>
<!ELEMENT project-description (#PCDATA)>
<!ELEMENT project-url (#PCDATA)>
<!ELEMENT project-logo (#PCDATA)>
<!ELEMENT group-name (#PCDATA)>
<!ELEMENT group-description (#PCDATA)>
<!ELEMENT group-url (#PCDATA)>
<!ELEMENT group-logo (#PCDATA)>
<!ELEMENT host-url (#PCDATA)>
<!ELEMENT host-logo (#PCDATA)>
<!ELEMENT year (#PCDATA)>
<!ELEMENT vendor (#PCDATA)>
<!ELEMENT trail (link1, link2, link3)>
<!ELEMENT link1 EMPTY>
<!-- Seems we can't use param entity refs until this is DTDified -->
<!ATTLIST link1 name CDATA #REQUIRED href CDATA #IMPLIED>
<!ELEMENT link2 EMPTY>
<!ATTLIST link2 name CDATA #REQUIRED href CDATA #IMPLIED>
<!ELEMENT link3 EMPTY>
<!ATTLIST link3 name CDATA #REQUIRED href CDATA #IMPLIED>
<!ELEMENT name (#PCDATA)>
<!ELEMENT url (#PCDATA)>
<!ELEMENT image (#PCDATA)>
<!ELEMENT width (#PCDATA)>
<!ELEMENT height (#PCDATA)>
<!ELEMENT toc EMPTY>
<!ATTLIST toc level CDATA #IMPLIED>
]>
<skinconfig> <skinconfig>
<!-- Do we want to disable the Google search box? --> <!-- To enable lucene search add provider="lucene" (default is google).
<disable-search>false</disable-search> Add box-location="alt" to move the search box to an alternate location
<!-- Do we want to disable the print link? If enabled, invalid HTML 4.0.1 --> (if the skin supports it) and box-location="all" to show it in all
<disable-print-link>true</disable-print-link> available locations on the page. Remove the <search> element to show
<!-- Do we want to disable the PDF link? --> no search box. @domain will enable sitesearch for the specific domain with google.
<disable-pdf-link>false</disable-pdf-link> In other words google will search the @domain for the query string.
<!-- Do we want to disable the xml source link? --> -->
<disable-xml-link>true</disable-xml-link> <search name="Apache XML" domain="xml.apache.org" provider="google"/>
<!-- Do we want to disable w3c compliance links? -->
<disable-compliance-links>false</disable-compliance-links>
<!-- Whether to render mailto: links unrecognisable by spam harvesters -->
<obfuscate-mail-links>true</obfuscate-mail-links>
<searchsite-domain>xml.apache.org</searchsite-domain> <!-- Disable the print link? If enabled, invalid HTML 4.0.1 -->
<searchsite-name>Apache XML</searchsite-name> <disable-print-link>true</disable-print-link>
<!-- Disable the PDF link? -->
<disable-pdf-link>false</disable-pdf-link>
<!-- Disable the POD link? -->
<disable-pod-link>true</disable-pod-link>
<!-- Disable the Text link? FIXME: NOT YET IMPLEMENETED. -->
<disable-txt-link>true</disable-txt-link>
<!-- Disable the xml source link? -->
<!-- The xml source link makes it possible to access the xml rendition
of the source frim the html page, and to have it generated statically.
This can be used to enable other sites and services to reuse the
xml format for their uses. Keep this disabled if you don't want other
sites to easily reuse your pages.-->
<disable-xml-link>true</disable-xml-link>
<!-- Disable navigation icons on all external links? -->
<disable-external-link-image>true</disable-external-link-image>
<!-- Disable w3c compliance links?
Use e.g. align="center" to move the compliance links logos to
an alternate location default is left.
(if the skin supports it) -->
<disable-compliance-links>false</disable-compliance-links>
<!-- Render mailto: links unrecognisable by spam harvesters? -->
<obfuscate-mail-links>true</obfuscate-mail-links>
<obfuscate-mail-value>.at.</obfuscate-mail-value>
<!-- Disable the javascript facility to change the font size -->
<disable-font-script>true</disable-font-script>
<!-- mandatory project logo <!-- mandatory project logo
skin: forrest-site renders it at the top --> default skin: renders it at the top -->
<project-name>xml-commons</project-name> <project-name>xml-commons</project-name>
<project-description>Apache XML Commons</project-description> <project-description>Apache XML Commons</project-description>
<project-url>http://xml.apache.org/commons/</project-url> <project-url>http://xml.apache.org/commons/</project-url>
<project-logo>images/project-logo.gif</project-logo> <project-logo>images/project-logo.gif</project-logo>
<!-- optional group logo <!-- optional group logo
skin: forrest-site renders it at the top-left corner --> default skin: renders it at the top-left corner -->
<group-name>Apache XML</group-name> <group-name>Apache XML</group-name>
<group-description>Apache XML</group-description> <group-description>Apache XML</group-description>
<group-url>http://xml.apache.org/</group-url> <group-url>http://xml.apache.org/</group-url>
<group-logo>images/group-logo.gif</group-logo> <group-logo>images/group-logo.gif</group-logo>
<!-- optional host logo (e.g. sourceforge logo) <!-- optional host logo (e.g. sourceforge logo)
skin: forrest-site renders it at the bottom-left corner --> default skin: renders it at the bottom-left corner -->
<host-url></host-url> <host-url></host-url>
<host-logo></host-logo> <host-logo></host-logo>
<!-- relative url of a favicon file, normally favicon.ico -->
<favicon-url></favicon-url>
<!-- The following are used to construct a copyright statement --> <!-- The following are used to construct a copyright statement -->
<year>2003</year> <year>2003</year>
<vendor>The Apache Software Foundation.</vendor> <vendor>The Apache Software Foundation.</vendor>
<!-- The optional copyright-link URL will be used as a link in the
copyright statement
-->
<copyright-link>http://www.apache.org/licenses/</copyright-link>
<!-- Some skins use this to form a 'breadcrumb trail' of links. If you don't <!-- Some skins use this to form a 'breadcrumb trail' of links.
want these, set the attributes to blank. The DTD purposefully requires them. Use location="alt" to move the trail to an alternate location
(if the skin supports it).
Omit the location attribute to display the trail in the default location.
Use location="none" to not display the trail (if the skin supports it).
For some skins just set the attributes to blank.
NOTE: If a breadcrumb entry points at a local file the href must
be complete, that is it must point to the file itself, not to a
directory.
--> -->
<trail> <trail>
<link1 name="apache" href="http://www.apache.org/"/> <link1 name="apache" href="http://www.apache.org/"/>
@ -119,24 +111,230 @@ be used to configure the chosen Forrest skin.
<link3 name="" href=""/> <link3 name="" href=""/>
</trail> </trail>
<!-- Configure how many "section" levels need to be included in the <!-- Configure the TOC, i.e. the Table of Contents.
generated Table of Contents (TOC). By default, if no toc element is provided @max-depth
below, then 2 levels are included. Level 0 does not generate any TOC at all. how many "section" levels need to be included in the
generated Table of Contents (TOC).
@min-sections
Minimum required to create a TOC.
@location ("page","menu","page,menu", "none")
Where to show the TOC.
--> -->
<toc level="2"/> <toc max-depth="2" min-sections="1" location="page"/>
<!-- Credits are typically rendered as a set of small clickable images in the <!-- Heading types can be clean|underlined|boxed -->
page footer --> <headings type="underlined"/>
<!-- The optional feedback element will be used to construct a
feedback link in the footer with the page pathname appended:
<a href="@href">{@to}</a>
<feedback to="webmaster@foo.com"
href="mailto:webmaster@foo.com?subject=Feedback&#160;" >
Send feedback about the website to:
</feedback>
-->
<!-- Optional message of the day (MOTD).
Note: This is only implemented in the pelt skin.
If the optional <motd> element is used, then messages will be appended
depending on the URI string pattern.
motd-option : Specifies a pattern to match and provides small text content.
motd-title : This text will be added in brackets after the <html><title>
motd-page : This text will be added in a panel on the face of the page,
with the "motd-page-url" being the hyperlink "More".
Values for the "location" attribute are:
page : on the face of the page, e.g. in the spare space of the toc
alt : at the bottom of the left-hand navigation panel
both : both
-->
<!--
<motd>
<motd-option pattern="docs_0_80">
<motd-title>v0.8-dev</motd-title>
<motd-page location="both">
This is documentation for development version v0.8
</motd-page>
<motd-page-url>/versions/index.html</motd-page-url>
</motd-option>
<motd-option pattern="docs_0_70">
<motd-title>v0.7</motd-title>
<motd-page location="both">
This is documentation for current version v0.7
</motd-page>
<motd-page-url>/versions/index.html</motd-page-url>
</motd-option>
</motd>
-->
<!--
extra-css - here you can define custom css-elements that are
A) overriding the fallback elements or
B) adding the css definition from new elements that you may have
used in your documentation.
-->
<extra-css>
<!--Example of reason B:
To define the css definition of a new element that you may have used
in the class attribute of a <p> node.
e.g. <p class="quote"/>
-->
p.quote {
margin-left: 2em;
padding: .5em;
background-color: #f0f0f0;
font-family: monospace;
}
<!--Example:
To override the colours of links only in the footer.
-->
#footer a { color: #0F3660; }
#footer a:visited { color: #009999; }
</extra-css>
<colors>
<!-- These values are used for the generated CSS files.
They essentially "override" the default colors defined in the chosen skin.
There are four duplicate "groups" of colors below, denoted by comments:
Color group: Forrest, Krysalis, Collabnet, and Lenya using Pelt.
They are provided for example only. To customize the colors of any skin,
uncomment one of these groups of color elements and change the values
of the particular color elements that you wish to change.
Note that by default, all color groups are commented-out which means that
the default colors provided by the skin are being used.
-->
<!-- Color group: Forrest: example colors similar to forrest.apache.org
Some of the element names are obscure, so comments are added to show how
the "pelt" skin uses them, other skins might use these elements in a different way.
Tip: temporarily change the value of an element to red (#ff0000) and see the effect.
pelt: breadtrail: the strip at the top of the page and the second strip under the tabs
pelt: header: top strip containing project and group logos
pelt: heading|subheading: section headings within the content
pelt: navstrip: the strip under the tabs which contains the published date
pelt: menu: the left-hand navigation panel
pelt: toolbox: the selected menu item
pelt: searchbox: the background of the searchbox
pelt: border: line border around selected menu item
pelt: body: any remaining parts, e.g. the bottom of the page
pelt: footer: the second from bottom strip containing credit logos and published date
pelt: feedback: the optional bottom strip containing feedback link
-->
<color name="breadtrail" value="#cedfef" font="#0F3660" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
<color name="header" value="#294563"/>
<color name="tab-selected" value="#4a6d8c" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
<color name="tab-unselected" value="#b5c7e7" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
<color name="subtab-selected" value="#4a6d8c" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
<color name="subtab-unselected" value="#4a6d8c" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
<color name="heading" value="#294563"/>
<color name="subheading" value="#4a6d8c"/>
<color name="published" value="#4C6C8F" font="#FFFFFF"/>
<color name="feedback" value="#4C6C8F" font="#FFFFFF" align="center"/>
<color name="navstrip" value="#4a6d8c" font="#ffffff" link="#0F3660" vlink="#0F3660" hlink="#000066"/>
<color name="menu" value="#4a6d8c" font="#cedfef" link="#ffffff" vlink="#ffffff" hlink="#ffcf00"/>
<color name="toolbox" value="#4a6d8c"/>
<color name="border" value="#294563"/>
<color name="dialog" value="#4a6d8c"/>
<color name="searchbox" value="#4a6d8c" font="#000000"/>
<color name="body" value="#ffffff" link="#0F3660" vlink="#009999" hlink="#000066"/>
<color name="table" value="#7099C5"/>
<color name="table-cell" value="#f0f0ff"/>
<color name="highlight" value="#ffff00"/>
<color name="fixme" value="#cc6600"/>
<color name="note" value="#006699"/>
<color name="warning" value="#990000"/>
<color name="code" value="#CFDCED"/>
<color name="footer" value="#cedfef"/>
</colors>
<!-- Settings specific to PDF output. -->
<pdf>
<!--
Supported page sizes are a0, a1, a2, a3, a4, a5, executive,
folio, legal, ledger, letter, quarto, tabloid (default letter).
Supported page orientations are portrait, landscape (default
portrait).
Supported text alignments are left, right, justify (default left).
-->
<page size="a4" orientation="portrait" text-align="left"/>
<!--
Pattern of the page numbering in the footer - Default is "Page x".
first occurrence of '1' digit represents the current page number,
second occurrence of '1' digit represents the total page number,
anything else is considered as the static part of the numbering pattern.
Examples : x is the current page number, y the total page number.
<page-numbering-format>none</page-numbering-format> Do not displays the page numbering
<page-numbering-format>1</page-numbering-format> Displays "x"
<page-numbering-format>p1.</page-numbering-format> Displays "px."
<page-numbering-format>Page 1/1</page-numbering-format> Displays "Page x/y"
<page-numbering-format>(1-1)</page-numbering-format> Displays "(x-y)"
-->
<page-numbering-format>Page 1</page-numbering-format>
<!--
Margins can be specified for top, bottom, inner, and outer
edges. If double-sided="false", the inner edge is always left
and the outer is always right. If double-sided="true", the
inner edge will be left on odd pages, right on even pages,
the outer edge vice versa.
Specified below are the default settings.
-->
<margins double-sided="false">
<top>1cm</top>
<bottom>1cm</bottom>
<inner>2cm</inner>
<outer>1.5cm</outer>
</margins>
<!--
Print the URL text next to all links going outside the file
-->
<show-external-urls>false</show-external-urls>
<!--
Disable the copyright footer on each page of the PDF.
A footer is composed for each page. By default, a "credit" with role=pdf
will be used, as explained below. Otherwise a copyright statement
will be generated. This latter can be disabled.
-->
<disable-copyright-footer>false</disable-copyright-footer>
</pdf>
<!--
Credits are typically rendered as a set of small clickable
images in the page footer.
Use box-location="alt" to move the credits to an alternate location
(if the skin supports it).
For example, pelt skin:
- box-location="alt" will place the logo at the end of the
left-hand coloured menu panel.
- box-location="alt2" will place them underneath that panel
in the left-hand whitespace.
- Otherwise they are placed next to the compatibility icons
at the bottom of the screen.
Comment out the whole <credit>-element if you want no credits in the
web pages
-->
<credits> <credits>
<credit> <credit>
<name>Built with Apache Forrest</name> <name>Built with Apache Forrest</name>
<url>http://xml.apache.org/forrest/</url> <url>http://forrest.apache.org/</url>
<image>images/built-with-forrest-button.png</image> <image>images/built-with-forrest-button.png</image>
<width>88</width> <width>88</width>
<height>31</height> <height>31</height>
</credit> </credit>
<!-- A credit with @role='pdf' will have its name and url displayed in the <!-- A credit with @role="pdf" will be used to compose a footer
PDF page's footer. --> for each page in the PDF, using either "name" or "url" or both.
-->
<!--
<credit role="pdf">
<name>Built with Apache Forrest</name>
<url>http://forrest.apache.org/</url>
</credit>
-->
</credits> </credits>
</skinconfig> </skinconfig>