db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From scott hutinger <s-hutin...@wiu.edu>
Subject Re: [doc] ditaot in derby svn base feedback / external docs doc
Date Sat, 12 Nov 2005 17:14:40 GMT
Thanks Jeff.  Sorry to hear about your back.  (I'm just getting over 5 
broken ribs myself).

I'm going out-of-town today and sunday, but will drag everything 
together and check with Andrew on Monday.

thanks,
scott

Jeff Levitt wrote:

>Just wanted to provide an update on my status for
>those following this discussion.  I had planned to
>update the DITA-OT 1.0.2 xsl files to include my mods
>so that we could move those to the ant build, but I
>have been unable to do much lately due to health
>problems (back injury).  I was able to chop together a
>new mod tonight and test it briefly with the Getting
>Started Guide, and it seems to work.  I am attaching
>the files I needed to change in the DITA-OT1.0.2
>build.  I would have created a patch but I dont think
>we've checked these in yet under the Apache ASL?  Is
>that what the plan is?  Anyways, my changes are mainly
>to the xsl/dita2fo-shell.xsl file, but there are two
>lines that I also had to change, one each in the
>build.xml and conductor.xml files in the root
>directory of the dita 1.0.2 build.  I basically
>changed a line in both of them to recognize dita files
>as having .dita file extensions instead of .xml file
>extensions.  A minor change, but it must be done or
>else any inline links within a pdf file to another
>point in the pdf do not work.
>
>So these should work, but not in our current setup,
>since Andrew had made some changes of his own to the
>ant build to specialize it for the Derby manuals. 
>Andrew, I think you'll have to make those changes
>again.  But you can start with my mods in these files
>as a baseline.  
>
>Let me know if there is anything else you need or any
>questions you have and I'll do my best to get back to
>you as soon as possible.
>
>Thanks,
>Jeff
>
>
>--- "David W. Van Couvering"
><David.Vancouvering@Sun.COM> wrote:
>
>  
>
>>I don't know what the "OT" is, but I'm assuming it's
>>some kind of open 
>>source definitions for DITA?  Anyway, my general
>>sense is Maven is the 
>>preferred approach, but I have no information beyond
>>that, having never 
>>used Maven.
>>
>>Are you guys planning to get the OT changes back
>>into the main DITA 
>>source base at some point, or are we always going to
>>have a "fork" of 
>>the OT?  What is delaying getting these changes back
>>in?
>>
>>Regarding a page with references to external specs,
>>that sounds great! 
>>Note that the SQL specs I think require a purchase.
>>
>>Thanks,
>>
>>David
>>
>>scott hutinger wrote:
>>    
>>
>>>I wanted to get the build of the docs finished so
>>>      
>>>
>>everyone can build 
>>    
>>
>>>what is currently being used.  Jeff Levit has some
>>>      
>>>
>>changes he made that 
>>    
>>
>>>are not incorporated in the dita toolkit.  Also, I
>>>      
>>>
>>would like to get the 
>>    
>>
>>>build up with the current svn number etc.  I had
>>>      
>>>
>>one method of doing 
>>    
>>
>>>this, but think possibly Andrew was thinking of
>>>      
>>>
>>another method.  I also 
>>    
>>
>>>think I had ant do most of it in one version of
>>>      
>>>
>>this.
>>    
>>
>>>What I would like to do is get some feedback on
>>>      
>>>
>>the direction that 
>>    
>>
>>>everyone thinks should be taken.
>>>
>>>1) Since the Dita OT has an apache license, some
>>>      
>>>
>>or all of the source 
>>    
>>
>>>can be put in svn.  If we used a Maven build,
>>>      
>>>
>>maven could download and 
>>    
>>
>>>we could patch with Derby changes to the ot, or we
>>>      
>>>
>>could just bring the 
>>    
>>
>>>whole code base into svn and make changes this
>>>      
>>>
>>way.  I normally don't 
>>    
>>
>>>think this way, so wasn't sure what the current
>>>      
>>>
>>best method would be.  
>>    
>>
>>>Any ideas?  This could also be done without maven
>>>      
>>>
>>another way...  Is 
>>    
>>
>>>maven the prefered build or is this not an issue
>>>      
>>>
>>at this point in time?
>>    
>>
>>>2) The latest alpha files on the website always
>>>      
>>>
>>have an old build date.  
>>    
>>
>>>I am uncertain if they don't get built after
>>>      
>>>
>>changes, if they go through 
>>    
>>
>>>a build daily, or if they don't go through a build
>>>      
>>>
>>at all.  It might 
>>    
>>
>>>also be that a hard coded date is in the dita ot.
>>>
>>>Any feedback is very welcome, as DITAOT changed
>>>      
>>>
>>the license quite some 
>>    
>>
>>>time ago; and this should be used.
>>>
>>>I think the main feedback is: how should the
>>>      
>>>
>>DITAOT source be handled 
>>    
>>
>>>with Jeffs and any other changes that are not
>>>      
>>>
>>within the DITAOT source 
>>    
>>
>>>base yet?
>>>
>>>Also not releated, it might be nice to get some
>>>      
>>>
>>type of external 
>>    
>>
>>>reference document.  I noticed that Army had some
>>>      
>>>
>>external docs on the 
>>    
>>
>>>wiki on DRDA(from The Open Group) etc..  I think
>>>      
>>>
>>some other good 
>>    
>>
>>>external docs exist too.  I think it would be nice
>>>      
>>>
>>to gather all of 
>>    
>>
>>>these in a document with a bit of information on
>>>      
>>>
>>the documents 
>>    
>>
>>>themselves etc... (i.e. to download 'The Open
>>>      
>>>
>>Group' documents for DRDA, 
>>    
>>
>>>you need to do x/y/z to get them etc...).  Myself
>>>      
>>>
>>being one of those 
>>    
>>
>>>typical developers that get's a lot of help from
>>>      
>>>
>>those external docs.  I 
>>    
>>
>>>think a lot of developers don't really know that
>>>      
>>>
>>much about SQL 
>>    
>>
>>>standards etc (myself being one), so those
>>>      
>>>
>>external docs are VERY helpful.
>>    
>>
>>>thanks,
>>>scott
>>>begin:vcard
>>>      
>>>
>>fn:David W Van Couvering
>>n:Van Couvering;David W
>>org:Sun Microsystems, Inc.;Database Technology Group
>>email;internet:david.vancouvering@sun.com
>>title:Senior Staff Software Engineer
>>tel;work:510-550-6819
>>tel;cell:510-684-7281
>>x-mozilla-html:TRUE
>>version:2.1
>>end:vcard
>>
>>    
>>
>>------------------------------------------------------------------------
>>
>><?xml version="1.0" encoding="UTF-8" ?>
>>
>><project name="dita.build" default="prompt" basedir=".">
>>	<!-- Set a property for each environment variable -->
>>	<description>Build the DITA Demos and Samples</description>
>>	<property environment="env"/>
>>
>>    <import file="${basedir}${file.separator}conductor.xml"/>
>>
>>	<target name="use.init">
>>        <available classname="com.icl.saxon.StyleSheet"
>>			property="hasSaxon"/>
>>		<available classname="org.apache.fop.tools.anttasks.Fop"
>>			property="hasFOP"/>
>>		<available file="C:\Program Files\HTML Help Workshop\hhc.exe"
>>			property="HTMLHelpCompiler"
>>			value="C:\Program Files\HTML Help Workshop\hhc.exe"/>
>>		<property name="dita.extname" value=".dita"/>
>>	</target>
>>
>>	<target name="all" description="build all output" 
>>		depends="demo, doc, samples, docbook">
>>		<echo>output in the ${dita.output.dir} directory</echo>
>>	</target>
>>	<!-- revise below here -->
>>
>>		<!-- defaults for DITA configuration required by callable targets -->
>>		<property name="dita.dir" value="${basedir}"/>
>>		<property name="dita.script.dir"
>>			value="${dita.dir}${file.separator}xsl"/>
>>		<property name="dita.dtd.dir"
>>			value="${dita.dir}${file.separator}dtd"/>
>>		<property name="dita.css.dir"
>>			value="${dita.dir}${file.separator}css"/>
>>		<property name="dita.resource.dir"
>>			value="${dita.dir}${file.separator}resource"/>
>>
>>		<!-- defaults for DITA output configuration -->
>>		<property name="dita.doc.dir"
>>			value="${dita.dir}${file.separator}doc"/>
>>		<property name="dita.doc.langref.dir"
>>			value="${dita.doc.dir}${file.separator}langref"/>
>>		<property name="dita.doc.articles.dir"
>>			value="${dita.doc.dir}${file.separator}articles"/>
>>
>>		<property name="dita.demo.dir"
>>			value="${dita.dir}${file.separator}demo"/>
>>		<property name="dita.demo.book.dir"
>>			value="${dita.demo.dir}${file.separator}book"/>
>>		<property name="dita.demo.elementref.dir"
>>			value="${dita.demo.dir}${file.separator}elementref"/>
>>		<property name="dita.demo.enote.dir"
>>			value="${dita.demo.dir}${file.separator}enote"/>
>>		<property name="dita.demo.faq.dir"
>>			value="${dita.demo.dir}${file.separator}faq"/>
>>		
>>		<property name="dita.samples.dir"
>>			value="${dita.dir}${file.separator}samples"/>
>>
>>		<property name="dita.output.dir"
>>			value="${dita.dir}${file.separator}out"/>
>>
>>		<property name="dita.output.demo.dir"
>>			value="${dita.output.dir}${file.separator}demo"/>
>>		<property name="dita.output.demo.book.dir"
>>			value="${dita.output.demo.dir}${file.separator}book"/>
>>		<property name="dita.output.demo.elementref.dir"
>>			value="${dita.output.demo.dir}${file.separator}elementref"/>
>>		<property name="dita.output.demo.enote.dir"
>>			value="${dita.output.demo.dir}${file.separator}enote"/>
>>		<property name="dita.output.demo.faq.dir"
>>			value="${dita.output.demo.dir}${file.separator}faq"/>
>>		<property name="dita.output.demo.langref.dir"
>>			value="${dita.output.demo.dir}${file.separator}langref"/>
>>
>>		<property name="dita.output.demo.langrefhelp.dir"
>>			value="${dita.output.demo.dir}${file.separator}langrefhelp"/>
>>
>>		<property name="dita.output.doc.dir"
>>			value="${dita.output.dir}${file.separator}doc"/>
>>		<property name="dita.output.doc.langref.dir"
>>			value="${dita.output.doc.dir}${file.separator}langref"/>
>>		<property name="dita.output.doc.articles.dir"
>>			value="${dita.output.doc.dir}${file.separator}articles"/>
>>
>>		<property name="dita.output.samples.dir"
>>			value="${dita.output.dir}${file.separator}samples"/>
>>		<property name="dita.output.samples.web.dir"
>>			value="${dita.output.samples.dir}${file.separator}web"/>
>>		<property name="dita.output.samples.eclipse.dir"
>>			value="${dita.output.samples.dir}${file.separator}org.dita.sample.doc"/>
>>		<property name="dita.output.samples.javahelp.dir"
>>			value="${dita.output.samples.dir}${file.separator}javahelp"/>
>>		<property name="dita.output.samples.htmlhelp.dir"
>>			value="${dita.output.samples.dir}${file.separator}htmlhelp"/>
>>		<property name="dita.output.samples.pdf.dir"
>>			value="${dita.output.samples.dir}${file.separator}pdf"/>
>>
>>		<property name="dita.output.docbook.dir"
>>			value="${dita.output.dir}${file.separator}docbook"/>
>>
>>
>>
>>		<target name="clean"
>>			description="delete all output">
>>			<delete dir="${dita.output.dir}"/>
>>		</target>
>>
>>		<!-- mid-level targets -->
>>		<target name="init"
>>			depends="use.init">
>>			<!-- Create the time stamp -->
>>			<tstamp/>
>>
>>			<mkdir dir="${dita.output.dir}"/>
>>		</target>
>>
>>		<target name="demo"
>>			description="build the demos"
>>			depends="demo.book, demo.elementref, demo.enote, demo.faq, demo.langref">
>>		</target>
>>
>>		<target name="init.demo"
>>			depends="init">
>>			<mkdir dir="${dita.output.demo.dir}"/>
>>		</target>
>>
>>		<target name="demo.book"
>>			description="build the book demo"
>>			depends="init.demo">
>>			<mkdir dir="${dita.output.demo.book.dir}"/>
>>			<antcall target="dita2xhtml">
>>				<param name="args.input"
>>					value="${dita.demo.book.dir}${file.separator}bookmap-readme.xml"/>
>>				<param name="output.dir"
>>					value="${dita.output.demo.book.dir}"/>
>>			</antcall>
>>      <antcall target="dita.common.css">
>>        <param name="outputDir" value="${dita.output.demo.book.dir}"/>
>>      </antcall>
>>			<antcall target="dita2pdf">
>>				<param name="args.input"
>>					value="${dita.demo.book.dir}${file.separator}taskbook.ditamap"/>
>>				<param name="output.dir"
>>					value="${dita.output.demo.book.dir}"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="demo.elementref"
>>			description="build the element reference demo"
>>			depends="init.demo">
>>			<mkdir dir="${dita.output.demo.elementref.dir}"/>
>>			<antcall target="dita.elementref.toc">
>>				<param name="args.input"
>>					value="${dita.demo.elementref.dir}${file.separator}map-elements.ditamap"/>
>>				<param name="output.dir"     value="${dita.output.demo.elementref.dir}"/>
>>			</antcall>
>>      <antcall target="dita.common.css">
>>        <param name="outputDir" value="${dita.output.demo.elementref.dir}"/>
>>      </antcall>
>>			<antcall target="dita.elementref.html">
>>				<param name="inputFile"
>>					value="${basedir}${file.separator}temp${file.separator}map.xml"/>
>>				<param name="outputFile"
>>					value="${dita.output.demo.elementref.dir}${file.separator}map.html"/>
>>			</antcall>
>>			<antcall target="dita.elementref.html">
>>				<param name="inputFile"
>>					value="${basedir}${file.separator}temp${file.separator}topicref.xml"/>
>>				<param name="outputFile"
>>					value="${dita.output.demo.elementref.dir}${file.separator}topicref.html"/>
>>			</antcall>
>>		</target>
>>					
>>		<target name="dita.elementref.toc" depends="dita-preprocess, map2xhtml">
>>		</target>
>>
>>		<target name="dita.elementref.html">
>>			<xslt processor="trax"
>>					in="${inputFile}"
>>					out="${outputFile}"
>>					style="${dita.demo.elementref.dir}${file.separator}elementref2xhtml_shell.xsl">
>>				<param name="OUTEXT" expression="html"/>
>>				<xmlcatalog refid="dita.catalog"/>
>>			</xslt>
>>		</target>
>>	
>>		<target name="demo.enote"
>>			description="build the eNote demo"
>>			depends="init.demo">
>>			<mkdir dir="${dita.output.demo.enote.dir}"/>
>>			<antcall target="dita.enote.html">
>>				<param name="args.input"
>>					value="${dita.demo.enote.dir}${file.separator}testnote2.xml"/>
>>				<param name="inputFile"
>>					value="${basedir}${file.separator}temp${file.separator}testnote2.xml"/>
>>        <param name="output.dir"
>>          value="${dita.output.demo.enote.dir}"/>
>>				<param name="outputFile"
>>					value="${dita.output.demo.enote.dir}${file.separator}testnote2.html"/>
>>			</antcall>
>>      <antcall target="dita.common.css">
>>        <param name="outputDir" value="${dita.output.demo.enote.dir}"/>
>>      </antcall>
>>		</target>
>>					
>>		<!-- build HTML output for an Email Note topic -->
>>		<target name="dita.enote.html" depends="dita-preprocess">
>>			<xslt processor="trax"
>>					in="${inputFile}"
>>					out="${outputFile}"
>>					style="${dita.demo.enote.dir}${file.separator}enote2xhtml_shell.xsl">
>>				<param name="OUTEXT" expression="html"/>
>>				<xmlcatalog refid="dita.catalog"/>
>>			</xslt>
>>		</target>
>>
>>		<target name="demo.faq"
>>			description="build the FAQ demo"
>>			depends="init.demo">
>>			<mkdir dir="${dita.output.demo.faq.dir}"/>
>>			<antcall target="dita.faq.html">
>>				<param name="inputFile"
>>					value="${basedir}${file.separator}temp${file.separator}DITA-faq.xml"/>
>>				<param name="args.input"
>>					value="${dita.demo.faq.dir}${file.separator}DITA-faq.xml"/>
>>        <param name="output.dir"
>>          value="${dita.output.demo.faq.dir}"/>
>>				<param name="outputFile"
>>					value="${dita.output.demo.faq.dir}${file.separator}DITA-faq.html"/>
>>			</antcall>
>>			<antcall target="dita.faq.html">
>>				<param name="inputFile"
>>					value="${basedir}${file.separator}temp${file.separator}ditafaq.xml"/>
>>				<param name="args.input"
>>					value="${dita.demo.faq.dir}${file.separator}ditafaq.xml"/>
>>        <param name="output.dir"
>>          value="${dita.output.demo.faq.dir}"/>
>>				<param name="outputFile"
>>					value="${dita.output.demo.faq.dir}${file.separator}ditafaq.html"/>
>>			</antcall>
>>			<antcall target="demo.faq.generalize"/>
>>      <antcall target="dita.common.css">
>>        <param name="outputDir" value="${dita.output.demo.faq.dir}"/>
>>      </antcall>
>>		</target>
>>	
>>		<!-- build HTML output for a FAQ topic -->
>>		<target name="dita.faq.html" depends="dita-preprocess">
>>			<xslt processor="trax"
>>					in="${inputFile}"
>>					out="${outputFile}"
>>					style="${dita.demo.faq.dir}${file.separator}faq2xhtml_shell.xsl">
>>				<xmlcatalog refid="dita.catalog"/>
>>			</xslt>
>>		</target>
>>
>>		<target name="demo.faq.generalize" depends="init.demo">
>>			<antcall target="dita.topic.generalize">
>>				<param name="inputFile"
>>					value="${dita.demo.faq.dir}${file.separator}ditafaq.xml"/>
>>				<param name="outputFile"
>>					value="${dita.output.demo.faq.dir}${file.separator}ditafaq_GENERALIZED.xml"/>
>>			</antcall>
>>		</target>
>>    
>>    <!-- generalize a specialized topic to the base elements -->
>>    <target name="dita.topic.generalize">
>>      <xslt processor="trax"
>>        	in="${inputFile}"
>>          out="${outputFile}"
>>          style="${dita.script.dir}${file.separator}generalize.xsl">
>>        <xmlcatalog refid="dita.catalog"/>
>>      </xslt>
>>    </target>
>>
>>		<target name="demo.langref"
>>			description="build the Language Reference book as a demo"
>>			depends="demo.langref.pdf">
>>		</target>
>>
>>		<target name="init.demo.langref" depends="init.demo">
>>			<mkdir dir="${dita.output.demo.langref.dir}"/>
>>		</target>
>>
>>
>>		<target name="demo.langref.pdf" depends="init.demo.langref">
>>			<antcall target="dita2pdf">
>>				<param name="args.input"       
>>					value="${dita.doc.langref.dir}${file.separator}ditaref-book.ditamap"/>
>>				<param name="output.dir"      value="${dita.output.demo.langref.dir}"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="demo.langref.compilehelp"
>>			description="to build the Language Reference as HTML Help (not in all)"
>>			depends="init">
>>			<antcall target="dita2htmlhelp">
>>				<param name="args.input"
>>					value="${dita.doc.langref.dir}${file.separator}ditaref-book.ditamap"/>
>>				<param name="output.dir"
>>					value="${dita.output.demo.langrefhelp.dir}"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="clean.demo"
>>			description="remove the demo output">
>>			<delete dir="${dita.output.demo.dir}"/>
>>		</target>
>>
>>		<target name="clean.demo.book"
>>			description="remove the book demo output">
>>			<delete dir="${dita.output.demo.book.dir}"/>
>>		</target>
>>
>>		<target name="clean.demo.elementref"
>>			description="remove the Element Reference demo output">
>>			<delete dir="${dita.output.demo.elementref.dir}"/>
>>		</target>
>>
>>		<target name="clean.demo.enote"
>>			description="remove the eNote demo output">
>>			<delete dir="${dita.output.demo.enote.dir}"/>
>>		</target>
>>
>>		<target name="clean.demo.faq"
>>			description="remove the FAQ demo output">
>>			<delete dir="${dita.output.demo.faq.dir}"/>
>>		</target>
>>
>>		<target name="clean.demo.langref"
>>			description="remove the Language Reference demo output">
>>			<delete dir="${dita.output.demo.langref.dir}"/>
>>		</target>
>>
>>		<target name="clean.demo.langref.compilehelp"
>>			description="remove the Language Reference as HTML Help output">
>>			<delete dir="${dita.output.demo.langrefhelp.dir}"/>
>>		</target>
>>
>>		<target name="doc"
>>			description="build the documentation"
>>			depends="init, doc.langref.web, doc.articles.web, doc.readme.web">      
>>		</target>
>>	
>>		<target name="init.doc.langref" depends="init">
>>			<mkdir dir="${dita.output.doc.langref.dir}"/>
>>		</target>
>>	
>>		<target name="doc.langref.web" depends="init.doc.langref"
>>			description="Build the langref document.">
>>			<antcall target="dita2xhtml">
>>				<param name="args.input"
>>					value="${dita.doc.langref.dir}${file.separator}ditaref-alpha.ditamap"/>
>>				<param name="output.dir"     value="${dita.output.doc.langref.dir}"/>
>>		        <param name="args.xhtml.toc" value="toc"/>
>>			</antcall>
>>			<copy
>>				file="${dita.doc.langref.dir}${file.separator}index.html"
>>				todir="${dita.output.doc.langref.dir}"/>
>>		    <antcall target="dita.common.css">
>>		        <param name="outputDir" value="${dita.output.doc.langref.dir}"/>
>>		    </antcall>
>>		</target>
>>	
>>		<target name="clean.doc.langref"
>>			description="Delete the langref directory in doc.">
>>			<delete dir="${dita.output.doc.langref.dir}"></delete>
>>		</target>
>>	
>>		<target name="init.doc.articles" depends="init">
>>			<mkdir dir="${dita.output.doc.articles.dir}"/>
>>		</target>
>>	
>>		<target name="doc.articles.web" depends="init.doc.articles"
>>			description="Build the articles of dita as document.">
>>			<antcall target="dita2xhtml">
>>				<param name="args.input"
>>					value="${dita.doc.articles.dir}${file.separator}DITA-articles.ditamap"/>
>>				<param name="output.dir"     value="${dita.output.doc.articles.dir}"/>
>>			</antcall>
>>			<antcall target="dita.common.css">
>>		        <param name="outputDir" value="${dita.output.doc.articles.dir}"/>
>>			</antcall>
>>		</target>
>>	
>>		<target name="clean.doc.articles"
>>			description="Delete the articles directory in doc.">
>>			<delete dir="${dita.output.doc.articles.dir}"></delete>
>>		</target>
>>	
>>		<target name="doc.readme.web" depends="init">
>>			<antcall target="dita2xhtml">
>>				<param name="args.input"
>>					value="${dita.doc.dir}${file.separator}DITA-readme.ditamap"/>
>>				<param name="output.dir"     value="${dita.output.doc.dir}"/>
>>			</antcall>
>>			<antcall target="dita.common.css">
>>			    <param name="outputDir" value="${dita.output.doc.dir}"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="clean.doc"
>>			description="remove the documentation output">
>>			<delete dir="${dita.output.doc.dir}"/>
>>		</target>
>>
>>		<target name="samples"
>>			description="build the sample output"
>>			depends="samples.web, samples.eclipse, samples.javahelp, samples.htmlhelp, samples.pdf">
>>		</target>
>>
>>		<target name="samples.init" depends="init">
>>			<mkdir dir="${dita.output.samples.dir}"/>
>>		</target>
>>
>>		<target name="samples.web"
>>			description="build the samples for the web"
>>			depends="samples.init">
>>			<antcall target="dita2xhtml">
>>				<param name="args.input"
>>					value="${dita.samples.dir}${file.separator}hierarchy.ditamap"/>
>>				<param name="output.dir"     value="${dita.output.samples.web.dir}"/>
>>        		<param name="args.xhtml.toc" value="toc"/>
>>			</antcall>
>>      <copy todir="${dita.output.samples.web.dir}">
>>        <fileset dir="${dita.resource.dir}"
>>          includes="index.html"/>
>>      </copy>
>>			<antcall target="dita.common.css">
>>        <param name="outputDir" value="${dita.output.samples.web.dir}"/>
>>      </antcall>
>>		</target>
>>
>>		<target name="samples.eclipse"
>>			description="build the samples for Eclipse"
>>			depends="samples.init">
>>			<antcall target="dita2eclipsehelp">
>>				<param name="args.input"
>>					value="${dita.samples.dir}${file.separator}hierarchy.ditamap"/>
>>				<param name="output.dir"     value="${dita.output.samples.eclipse.dir}"/>
>>			</antcall>			
>>		</target>
>>
>>		<target name="samples.javahelp"
>>			description="build the samples for JavaHelp"
>>			depends="samples.init">
>>			<antcall target="dita2javahelp">
>>				<param name="args.input"
>>					value="${dita.samples.dir}${file.separator}hierarchy.ditamap"/>
>>				<param name="output.dir"     value="${dita.output.samples.javahelp.dir}"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="samples.htmlhelp"
>>			description="build the samples for HTMLHelp"
>>			depends="samples.init">
>>			<antcall target="dita2htmlhelp">
>>				<param name="args.input"
>>					value="${dita.samples.dir}${file.separator}hierarchy.ditamap"/>
>>				<param name="output.dir"
>>					value="${dita.output.samples.htmlhelp.dir}"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="samples.pdf"
>>			description="build the samples as PDF"
>>			depends="samples.init">
>>			<antcall target="dita2pdf">
>>				<param name="args.input"       
>>					value="${dita.samples.dir}${file.separator}sequence.ditamap"/>
>>				<param name="output.dir"      value="${dita.output.samples.pdf.dir}"/>
>>			</antcall>
>>		</target>
>>		
>>		<target name="docbook"
>>			description="transform the samples to DocBook"
>>			depends="init">
>>			<mkdir dir="${dita.output.docbook.dir}"/>
>>
>>			<antcall target="dita2docbook">
>>				<param name="args.input"  
>>					value="${dita.samples.dir}${file.separator}hierarchy.ditamap"/>
>>				<param name="output.dir" value="${dita.output.docbook.dir}"/>
>>			</antcall>
>>
>>			<antcall target="dita2docbook">
>>				<param name="args.input"
>>					value="${dita.doc.dir}${file.separator}DITA-readme.xml"/>
>>				<param name="output.dir"
>>					value="${dita.output.docbook.dir}"/>
>>			</antcall>
>>		</target>
>>		
>>		<target name="clean.docbook"
>>			description="remove the docbook output">
>>			<delete dir="${dita.output.docbook.dir}"/>
>>		</target>	
>>
>>		<target name="clean.samples"
>>			description="remove the sample output">
>>			<delete dir="${dita.output.samples.dir}"/>
>>		</target>
>>
>>		<target name="clean.samples.web"
>>			description="remove the sample web output">
>>			<delete dir="${dita.output.samples.web.dir}"/>
>>		</target>
>>
>>		<target name="clean.samples.eclipse"
>>			description="remove the sample Eclipse output">
>>			<delete dir="${dita.output.samples.eclipse.dir}"/>
>>		</target>
>>
>>		<target name="clean.samples.javahelp"
>>			description="remove the sample JavaHelp output">
>>			<delete dir="${dita.output.samples.javahelp.dir}"/>
>>		</target>
>>
>>		<target name="clean.samples.htmlhelp"
>>			description="remove the sample HTMLHelp output">
>>			<delete dir="${dita.output.samples.htmlhelp.dir}"/>
>>		</target>
>>
>>		<target name="clean.samples.pdf"
>>			description="remove the sample PDF output">
>>			<delete dir="${dita.output.samples.pdf.dir}"/>
>>		</target>
>>    
>>    <target name="dita.common.css">
>>      <copy
>>        file="${dita.resource.dir}${file.separator}commonltr.css" 
>>        todir="${outputDir}"/>
>>    </target>
>>	
>>	<!-- prompting target -->
>>		<target name="prompt"
>>			description="prompt to build anything"
>>			depends="prompt.init">
>>		<!-- The prompt strings should be externalized in a properties file 
>>		     so they can be localized. -->
>>			<echo>Please enter the filename for the DITA map that you 
>>	want to build including the directory path (if any).
>>	The filename must have the .ditamap extension.
>>	Note that relative paths that climb (..) are not supported yet.
>>	To build the sample, press return without entering anything.</echo>
>>			<input message="The DITA map filename: "
>>				addproperty="prompt.ditamap.filename"
>>				defaultvalue="${dita.samples.dir}${file.separator}hierarchy.ditamap"/>
>>			<fail message="no map entered">
>>				<condition>
>>					<or>
>>						<not><isset property="prompt.ditamap.filename"/></not>
>>						<equals arg1="${prompt.ditamap.filename}" arg2=""/>
>>					</or>
>>				</condition>
>>			</fail>
>>			<fail message="cannot find ${prompt.ditamap.filename}">
>>				<condition>
>>					<not><available file="${prompt.ditamap.filename}"/></not>
>>				</condition>
>>			</fail>
>>			<basename property="prompt.ditamap.fileroot"
>>				file="${prompt.ditamap.filename}" suffix=".ditamap"/>
>>			<dirname property="prompt.ditamap.directory"
>>				file="${prompt.ditamap.filename}"/>
>>			<echo>
>>	Please enter the name of the output directory or press return
>>	to accept the default.</echo>
>>			<input message="The output directory (out): "
>>				addproperty="prompt.output.directory"
>>				defaultvalue="out"/>
>>			<echo>
>>	Please enter the type of output to generate.
>>	Options include: eclipse, htmlhelp, javahelp, pdf, or web
>>	Use lowercase letters.
>>	</echo>
>>			<input message="The output type: "
>>				addproperty="prompt.output.type"
>>				validargs="eclipse,htmlhelp,javahelp,pdf,web,docbook"
>>				defaultvalue="web"/>
>>			<condition property="isEclipseOutput">
>>				<equals arg1="${prompt.output.type}" arg2="eclipse"/>
>>			</condition>
>>			<condition property="isHtmlHelpOutput">
>>				<equals arg1="${prompt.output.type}" arg2="htmlhelp"/>
>>			</condition>
>>			<condition property="isJavaHelpOutput">
>>				<equals arg1="${prompt.output.type}" arg2="javahelp"/>
>>			</condition>
>>			<condition property="isPDFOutput">
>>				<equals arg1="${prompt.output.type}" arg2="pdf"/>
>>			</condition>
>>			<condition property="isWebOutput">
>>				<equals arg1="${prompt.output.type}" arg2="web"/>
>>			</condition>
>>			<condition property="isDocbookOutput">
>>				<equals arg1="${prompt.output.type}" arg2="docbook"/>
>>			</condition>
>>			<echo>
>>	Ready to build ${prompt.ditamap.filename}
>>	for ${prompt.output.type} in ${prompt.output.directory}
>>	</echo>
>>			<input message="Continue? "
>>				addproperty="prompt.output.confirm"
>>				validargs="Y,y,N,n"
>>				defaultvalue="y"/>
>>			<fail message="not building">
>>				<condition>
>>					<or>
>>						<equals arg1="${prompt.output.confirm}" arg2="N"/>
>>						<equals arg1="${prompt.output.confirm}" arg2="n"/>
>>					</or>
>>				</condition>
>>			</fail>
>>			<antcall target="prompt.output"/>
>>	        <echo>
>>	output in the ${prompt.output.directory} directory
>>
>>	Before rebuilding, please delete the output or the directory.</echo>
>>		</target>
>>
>>		<target name="prompt.init"
>>			depends="dita.init">
>>			<!-- Create the time stamp -->
>>			<tstamp/>
>>		</target>
>>
>>		<target name="prompt.output.init" depends="init">
>>			<mkdir dir="${prompt.output.directory}"/>
>>		</target>
>>
>>		<target name="prompt.output"
>>			depends="prompt.output.eclipse, prompt.output.javahelp, prompt.output.htmlhelp, prompt.output.pdf, prompt.output.web, prompt.output.docbook"/>
>>
>>		<target name="prompt.output.web" depends="prompt.output.init"
>>			if="isWebOutput">			
>>			<copy todir="${prompt.output.directory}">
>>				<fileset dir="${dita.resource.dir}"
>>					includes="index.html"/>
>>			</copy>
>>			<antcall target="dita2xhtml">
>>				<param name="args.input"      value="${prompt.ditamap.filename}"/>
>>				<param name="output.dir"     value="${prompt.output.directory}"/>
>>				<param name="args.xhtml.toc" value="toc"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="prompt.output.eclipse" depends="prompt.output.init"
>>			if="isEclipseOutput">
>>			<antcall target="dita2eclipsehelp">
>>				<param name="args.input"      value="${prompt.ditamap.filename}"/>
>>				<param name="output.dir"     value="${prompt.output.directory}"/>
>>				<param name="args.eclipse.toc" value="toc"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="prompt.output.javahelp" depends="prompt.output.init"
>>			if="isJavaHelpOutput">
>>			<antcall target="dita2javahelp">
>>				<param name="args.input"      value="${prompt.ditamap.filename}"/>
>>				<param name="output.dir"     value="${prompt.output.directory}"/>
>>				<param name="args.javahelp.toc" value="toc"/>
>>				<param name="args.javahelp.map" value="map"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="prompt.output.htmlhelp" depends="prompt.output.init"
>>			if="isHtmlHelpOutput">
>>			<antcall target="dita2htmlhelp">
>>				<param name="args.input"
>>					value="${prompt.ditamap.filename}"/>
>>				<param name="output.dir"
>>					value="${prompt.output.directory}"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="prompt.output.pdf" depends="prompt.output.init"
>>			if="isPDFOutput">
>>			<antcall target="dita2pdf">
>>				<param name="args.input"      
>>					value="${prompt.ditamap.filename}"/>
>>				<param name="output.dir"      value="${prompt.output.directory}"/>
>>			</antcall>
>>		</target>
>>
>>		<target name="prompt.output.docbook" depends="prompt.output.init"
>>			if="isDocbookOutput">
>>			<antcall target="dita2docbook">
>>				<param name="args.input"       value="${prompt.ditamap.filename}"/>
>>				<param name="output.dir"      value="${prompt.output.directory}"/>
>>			</antcall>
>>		</target>
>>	
>></project>
>>    
>>
>>------------------------------------------------------------------------
>>
>><?xml version="1.0"?>
>>
>><project name="DOST" default="init" basedir=".">
>>  <import file="catalog-ant.xml"/>
>>  <import file="ditatargets.xml"/>
>>  <import file="pretargets.xml"/>    
>>  
>>  <taskdef name="pipeline" classname="org.dita.dost.invoker.AntInvoker">
>>    <classpath>
>>	  <pathelement location="${basedir}${file.separator}lib${file.separator}dost1.0.jar"/>
>>    </classpath>
>>  </taskdef>
>>  <!-- parameters from command line or external property file 
>>		transtype          required
>>		args.input         required
>>		output.dir         required
>>		dita.extname       required
>>		dita.input.valfile optional
>>	-->
>>
>>  <property name="dita.dir" value="${basedir}"/>
>>  <property name="dita.temp.dir" value="${basedir}${file.separator}temp"/>
>>  <property name="dita.script.dir" value="${dita.dir}${file.separator}xsl"/>
>>  <property name="dita.resource.dir" value="${dita.dir}${file.separator}resource"/>
>>  <property name="hhc.dir" value="C:\Program Files\HTML Help Workshop"/>
>>  <property environment="env"/>
>>  
>>  <!-- property values end -->
>>  <target name="use-init">
>>    <available classname="com.icl.saxon.StyleSheet" property="hasSaxon"/>
>>    <available classname="org.apache.fop.tools.anttasks.Fop" property="hasFOP"/>
>>    <available file="${hhc.dir}\hhc.exe" property="HTMLHelpCompiler" value="${hhc.dir}\hhc.exe"/>
>>    <condition property="dita.extname" value=".dita">
>>      <not>
>>        <isset property="dita.extname"/>
>>      </not>
>>    </condition>
>>  </target>
>>  
>>  <target name="init" depends="use-init">
>>    <fail message="Invalid transformation type! Valid types:  xhtml, eclipsehelp, javahelp, htmlhelp, pdf, docbook">
>>      <condition>
>>        <and>
>>          <not>
>>            <equals arg1="${transtype}" arg2="xhtml" casesensitive="false"/>
>>          </not>
>>          <not>
>>            <equals arg1="${transtype}" arg2="eclipsehelp" casesensitive="false"/>
>>          </not>
>>          <not>
>>            <equals arg1="${transtype}" arg2="javahelp" casesensitive="false"/>
>>          </not>
>>          <not>
>>            <equals arg1="${transtype}" arg2="htmlhelp" casesensitive="false"/>
>>          </not>
>>          <not>
>>            <equals arg1="${transtype}" arg2="pdf" casesensitive="false"/>
>>          </not>
>>          <not>
>>            <equals arg1="${transtype}" arg2="docbook" casesensitive="false"/>
>>          </not>
>>        </and>
>>      </condition>
>>    </fail>
>>    <antcall target="dita2${transtype}"/>
>>  </target>
>>  
>>  <!-- property value validation begin -->
>>  <target name="check-arg">
>>    <fail message="please provide filename for dita input">
>>      <condition>
>>        <and>
>>        <not>
>>          <isset property="args.input"/>
>>        </not>
>>        <or>
>>          <not>
>>            <isset property="dita.input"/>
>>          </not>
>>          <not>
>>            <isset property="dita.input.dirname"/>
>>          </not>
>>        </or>
>>        </and>
>>      </condition>
>>    </fail>
>>        
>>    <basename property="dita.input.args" file="${args.input}"/>
>>    <dirname property="dita.input.dirname.args" file="${args.input}"/>
>>    <condition property="dita.input" value="${dita.input.args}">
>>      <not>
>>        <isset property="dita.input"/>
>>      </not>
>>    </condition>
>>    <condition property="dita.input.dirname" value="${dita.input.dirname.args}">
>>      <not>
>>        <isset property="dita.input.dirname"/>
>>      </not>
>>    </condition>
>>    
>>    <basename property="dita.input.filename" file="${dita.input}"/>
>>    
>>    <basename property="dita.map.filename.root" file="${dita.input.filename}" suffix=".ditamap"/>
>>    <basename property="dita.topic.filename.root" file="${dita.input.filename}" suffix="${dita.extname}"/>
>>    <dirname property="dita.map.outputdir" file="${output.dir}${file.separator}${dita.input.filename}"/>
>>    <fail message="please provide extension filename for dita topic file">
>>      <condition>
>>        <not>
>>          <isset property="dita.extname"/>
>>        </not>
>>      </condition>
>>    </fail>
>>    <fail message="please provide ouput directory">
>>      <condition>
>>        <not>
>>          <isset property="output.dir"/>
>>        </not>
>>      </condition>
>>    </fail>
>>    <echo>*****************************************************************</echo>
>>    <echo>* input = ${args.input}</echo>
>>    <echo>* type = ${transtype}</echo>
>>    <echo>* outputdir = ${output.dir}</echo>
>>    <echo>* extname = ${dita.extname}</echo>
>>    <echo>*****************************************************************</echo>
>>    
>>  </target>
>>  
>>  <!-- property value validation end -->
>>  
>>  <target name="dita-preprocess" depends="check-arg, preprocess"/>
>>  
>>  <!-- main transformation targets begin -->
>>  
>>  <target name="dita2pdf" depends="dita-preprocess, map2pdf, topic2pdf"/>  
>>  
>>  <target name="topic2pdf" if="noMap" depends="dita-preprocess">
>>    <antcall target="dita.topic.pdf">
>>      <param name="inputDir" value="${dita.temp.dir}"/>
>>      <param name="inputFile" value="${dita.input}"/>
>>      <param name="outputDir" value="${dita.map.outputdir}"/>
>>      <param name="outputFileRoot" value="${dita.topic.filename.root}"/>
>>    </antcall>
>>  </target>
>>  
>>  <target name="map2pdf" unless="noMap" depends="dita-preprocess">
>>    <antcall target="dita.map.pdf">
>>      <param name="inputDir" value="${dita.temp.dir}"/>
>>      <param name="inputMap" value="${dita.input}"/>
>>      <param name="outputDir" value="${dita.map.outputdir}"/>
>>      <param name="outputFileRoot" value="${dita.map.filename.root}"/>
>>      <param name="rootPath" value="${dita.input.dirname}"/>
>>    </antcall>
>>  </target>
>>  
>>  <target name="dita2docbook" depends="dita-preprocess, topic2docbook, map2docbook"/>
>>  
>>  <target name="topic2docbook" if="noMap" depends="dita-preprocess">
>>    <antcall target="dita.topic.docbook">
>>      <param name="inputFile" value="${dita.temp.dir}${file.separator}${dita.input}"/>
>>      <param name="outputFile" value="${dita.map.outputdir}${file.separator}${dita.topic.filename.root}.xml"/>
>>    </antcall>
>>  </target>
>>  
>>  <target name="map2docbook" unless="noMap" depends="dita-preprocess">
>>    <antcall target="dita.map.docbook">
>>      <param name="mapRoot" value="${dita.map.filename.root}"/>
>>      <param name="inputMap" value="${dita.input}"/>
>>      <param name="inputDir" value="${dita.temp.dir}"/>
>>      <param name="outputDir" value="${dita.map.outputdir}"/>
>>    </antcall>
>>  </target>
>>  
>>  <target name="dita2xhtml" depends="dita-preprocess, map2xhtml">
>>    <antcall target="dita.topics.xhtml"/>
>>  </target>
>>  
>>  <target name="map2xhtml" unless="noMap">
>>    <antcall target="dita.map.xhtml"/>
>>  </target>
>>  
>>  <target name="dita2javahelp" unless="noMap" depends="dita-preprocess">
>>    <condition property="args.javahelp.helpset" value="${dita.resource.dir}${file.separator}helpset.hs">
>>      <not>
>>        <isset property="args.javahelp.helpset"/>
>>      </not>
>>    </condition>
>>    <antcall target="dita.topics.javahelp"/>
>>    <antcall target="dita.map.javahelp"/>
>>    <copy file="${args.javahelp.helpset}" todir="${dita.map.outputdir}"/>
>>    <antcall target="compile.Java.Help">
>>      <param name="outputDir" value="${dita.map.outputdir}"/>
>>    </antcall>
>>  </target>
>>  
>>  <target name="dita2eclipsehelp" unless="noMap" depends="dita-preprocess">
>>    <condition property="args.eclipsehelp.plugin" value="${dita.resource.dir}${file.separator}plugin.xml">
>>      <not>
>>        <isset property="args.eclipsehelp.plugin"/>
>>      </not>
>>    </condition>
>>    <antcall target="dita.topics.eclipse"/>
>>    <antcall target="dita.map.eclipse"/>
>>    <copy file="${args.eclipsehelp.plugin}" todir="${dita.map.outputdir}"/>
>>  </target>
>>  
>>  <target name="dita2htmlhelp" unless="noMap" depends="dita-preprocess">
>>    <antcall target="dita.map.htmlhelp"/>
>>    <antcall target="dita.topics.htmlhelp"/>
>>    <antcall target="compile.HTML.Help">
>>      <param name="projectFile" value="${dita.map.outputdir}${file.separator}${dita.map.filename.root}.hhp"/>
>>    </antcall>
>>  </target>
>>
>></project>
>>    
>>
>>------------------------------------------------------------------------
>>
>><?xml version="1.0" encoding="UTF-8" ?>
>><!-- (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved. -->
>>
>><!--  
>> | Composite DITA topics to FO
>>
>> *-->
>>
>><!DOCTYPE xsl:stylesheet [
>><!-- entities for use in the generated output (Unicode typographic glyphs) -->
>>  <!ENTITY gt            "&gt;"> 
>>  <!ENTITY lt            "&lt;"> 
>>  <!ENTITY rbl           "&#160;">
>>  <!ENTITY nbsp          "&#160;">
>>  <!ENTITY quot          "&#34;">
>>  <!ENTITY quotedblleft  "&#x201C;">
>>  <!ENTITY quotedblright "&#x201D;">
>>  <!ENTITY sqbull        "[]">
>>  <!ENTITY middot        "&#x00A5;">
>>
>>  <!ENTITY section       "&#xA7;">
>>  <!ENTITY endash        "&#x2013;">
>>  <!ENTITY emdash        "&#x2014;">
>>
>>  <!ENTITY copyr         "&#xA9;">
>>  <!ENTITY trademark     "&#x2122;">
>>  <!ENTITY registered    "&#xAE;">
>><!-- create some fixed values for now for customizing later -->
>>  <!ENTITY copyrowner    "Sample Company">
>>  <!ENTITY copyrdate     "2001">
>>  <!ENTITY headerstub    "(stub for header content)">
>>
>>]>
>><xsl:stylesheet version="1.0"
>>                xmlns:fo="http://www.w3.org/1999/XSL/Format"
>>                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>>                xmlns:fox="http://xml.apache.org/fop/extensions"
>>		    xmlns:java="http://xml.apache.org/xslt/java"
>>                    exclude-result-prefixes="java"
>>    
>>
>>  <!-- stylesheet imports -->
>>  <xsl:import href="xslfo/topic2foImpl.xsl"/>
>>  <xsl:import href="xslfo/domains2fo.xsl"/>
>>  <!-- XSL-FO output with XML syntax; no actual doctype for FO -->
>>  <xsl:output method="xml" version="1.0" indent="yes"/>
>>  <!-- CONTROL PARAMETERS: -->
>>  <!-- offset -->
>>  <xsl:param name="basic-start-indent">72pt</xsl:param>
>>  <xsl:param name="basic-end-indent">24pt</xsl:param>
>>  <xsl:param name="output-related-links"/>
>>  <!-- GLOBALS: -->
>>  <xsl:variable name="dflt-ext">.jpg</xsl:variable>
>>  <!-- For Antenna House, set to ".jpg" -->
>>  <!-- Set the prefix for error message numbers -->
>>  <xsl:variable name="msgprefix">IDXS</xsl:variable>
>>  <!-- =============== start of override tweaks ============== -->
>>  <!-- force draft mode on all the time -->
>>  <xsl:param name="DRAFT" select="'no'"/>
>>  <!-- ====================== template rules for merged content ==================== -->
>>  <xsl:template match="dita" mode="toplevel">
>>    <xsl:call-template name="dita-setup"/>
>>  </xsl:template>
>>  <xsl:template match="*[contains(@class,' map/map ')]" mode="toplevel">
>>    <xsl:call-template name="dita-setup"/>
>>  </xsl:template>
>>  <!-- note that bkinfo provides information for a cover in a bookmap application, 
>>     hence bkinfo does not need to be instanced.  In an application that processes
>>     only maps, bkinfo should process as a topic based on default processing. -->
>>  <xsl:template match="*[contains(@class,' bkinfo/bkinfo ')]" priority="2">
>>    <!-- no operation for bkinfo -->
>>  </xsl:template>
>>  <!-- =========================== overall output organization ========================= -->
>>  <!-- this template rule defines the overall output organization -->
>>  <xsl:template name="dita-setup">
>>    <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
>>      <!-- create FOP outline elements for PDF bookmarks -->
>>      <xsl:apply-templates mode="outline"/>
>>      <!-- get the overall master page defs here -->
>>      <xsl:call-template name="define-page-masters-dita"/>
>>      <!-- place generated content -->
>>      <xsl:call-template name="front-covers"/>
>>      <!--xsl:call-template name="titlepage-ednotice"/-->
>>      <xsl:call-template name="generated-frontmatter"/>
>>      <!-- place main content (fall through occurs here) -->
>>      <xsl:call-template name="main-doc3"/>
>>      <!-- return to place closing generated content -->
>>      <!--xsl:call-template name="index-chapter"/-->
>>      <!--xsl:call-template name="back-covers"/-->
>>    </fo:root>
>>  </xsl:template>
>>  <!-- create FOP outline elements for PDF bookmarks -->
>>  <xsl:template match="*" mode="outline">
>>    <xsl:if test="contains(@class,' topic/topic ')">
>>      <fox:outline>
>>        <xsl:attribute name="internal-destination">
>>          <!-- use id attribute of topic as anchor for PDF bookmark -->
>>          <xsl:value-of select="@id"/>
>>        </xsl:attribute>
>>        <fox:label>
>>          <!-- if topic contains navtitle, use that as label for PDF bookmark -->
>>          <!-- otherwise, use title -->
>>          <xsl:choose>
>>            <xsl:when test="navtitle">
>>              <xsl:apply-templates select="navtitle" mode="text-only"/>
>>            </xsl:when>
>>            <xsl:otherwise>
>>              <xsl:apply-templates select="title" mode="text-only"/>
>>            </xsl:otherwise>
>>          </xsl:choose>
>>        </fox:label>
>>        <xsl:apply-templates mode="outline" />
>>      </fox:outline>
>>    </xsl:if>
>>  </xsl:template>
>>  <xsl:template match="*" mode="text-only">
>>    <xsl:apply-templates select="text()|*" mode="text-only"/>
>>  </xsl:template>
>>  <xsl:template name="define-page-masters-dita">
>>    <fo:layout-master-set>
>>      <!-- master set for chapter pages, first page is the title page -->
>>      <fo:page-sequence-master master-name="chapter-master">
>>        <fo:repeatable-page-master-alternatives>
>>          <fo:conditional-page-master-reference page-position="first"
>>            odd-or-even="odd" master-reference="common-page"/>
>>          <!-- chapter-first-odd -->
>>          <fo:conditional-page-master-reference page-position="first"
>>            odd-or-even="even" master-reference="common-page"/>
>>          <!--chapter-first-even"/-->
>>          <fo:conditional-page-master-reference page-position="rest"
>>            odd-or-even="odd" master-reference="common-page"/>
>>          <!--chapter-rest-odd"/-->
>>          <fo:conditional-page-master-reference page-position="rest"
>>            odd-or-even="even" master-reference="common-page"/>
>>          <!--chapter-rest-even"/-->
>>        </fo:repeatable-page-master-alternatives>
>>      </fo:page-sequence-master>
>>      <fo:simple-page-master master-name="cover" xsl:use-attribute-sets="common-grid">
>>        <fo:region-body margin-top="72pt"/>
>>      </fo:simple-page-master>
>>      <fo:simple-page-master master-name="common-page" xsl:use-attribute-sets="common-grid">
>>        <fo:region-body margin-bottom="36pt" margin-top="12pt"/>
>>        <fo:region-before extent="12pt"/>
>>        <fo:region-after extent="24pt"/>
>>      </fo:simple-page-master>
>>    </fo:layout-master-set>
>>  </xsl:template>
>>  <xsl:template name="front-covers">
>>    <!-- generate an "outside front cover" page (right side) (sheet 1) -->
>>    <fo:page-sequence master-reference="cover">
>>
>><!--Jeff added this here -->
>><fo:static-content flow-name="xsl-region-after">    
>>    <!-- set the brief copyright notice -->
>><fo:block margin-top="3pc" text-align="right" font-size="8pt" line-height="normal">
>>          &copyr;  Copyright&nbsp; 
>><xsl:value-of select="//*[contains(@class,' topic/copyright ')]/copyryear/@year"/>:&nbsp; 
>><xsl:value-of select="//*[contains(@class,' topic/copyright ')]/*[contains(@class,' topic/copyrholder ')]"/><xsl:text> </xsl:text>
>></fo:block>
>>    </fo:static-content>
>><!--End of Jeff's addition -->
>>
>><!--Jeff is adding this section to replace what was originally there below -->
>><fo:flow flow-name="xsl-region-body" >
>>        <!-- Custom cover art/text goes here -->
>>      <xsl:call-template name="place-cover-art"/>
>>      <!-- End of custom art section -->
>>      <fo:block text-align="left" font-family="Helvetica">
>>        <!-- set the brand and title -->
>>        <fo:block font-size="14pt" line-height="540%" margin-bottom="1in" text-align="right">     
>>   <xsl:value-of select="//*[contains(@class,' topic/prodinfo ')]/*[contains(@class,' topic/brand ')]"/>
>></fo:block>
>>        <fo:block font-size="22pt" font-weight="bold" line-height="140%">
>>         <xsl:value-of select="//*[contains(@class,' topic/prodinfo ')]/*[contains(@class,' topic/prodname ')]"/>
>>        </fo:block>
>>        <!-- set the subtitle -->
>>        <fo:block font-size="8pt" line-height="140%" margin-bottom="1in" font-style="italic">
>>          Version <xsl:value-of select="//*[contains(@class,' topic/prodinfo ')]/vrmlist/vrm/@version"/>
>>        </fo:block>
>>      </fo:block>     
>>
>>
>> <!-- set the brief timestamp -->
>><fo:block margin-top="3pc" text-align="right" font-size="8pt" line-height="normal">
>>          Derby Document build: <xsl:call-template name="TodaysDate"/>
>></fo:block> 
>>
>>
>>     
>></fo:flow>
>>
>><!-- Removing
>>      <fo:flow flow-name="xsl-region-body">
>>        <fo:block text-align="right" font-family="Helvetica">
>>          
>>          <fo:block font-size="30pt" font-weight="bold" line-height="140%">
>>            <xsl:value-of select="//*[contains(@class,' bkinfo/bkinfo ')]/*[contains(@class,' topic/title ')]"/>
>>                      <xsl:apply-templates select="//*[contains(@class,' bkinfo/bkinfo ')]/@id"/>
>>          </fo:block>
>>          <fo:block font-size="24pt" font-weight="bold" line-height="140%" margin-bottom="1in">
>>            <xsl:value-of select="//*[contains(@class,' bkinfo/bkinfo ')]/*[contains(@class,' bkinfo/bktitlealts ')]/*[contains(@class,' bkinfo/bksubtitle ')]"/>
>>          </fo:block>
>>          <fo:block font-size="11pt" font-weight="bold" line-height="1.5">
>>            <xsl:text>[vertical list of authors]</xsl:text>
>>          </fo:block>
>>          <xsl:for-each select="//author">
>>            <fo:block font-size="11pt" font-weight="bold" line-height="1.5">
>>                [<xsl:value-of select="."/>] </fo:block>
>>          </xsl:for-each>
>>          <fo:block margin-top="3pc" font-size="11pt" font-weight="bold"
>>            line-height="normal"> &copyr; &nbsp;&nbsp; Copyright
>>              &nbsp;&nbsp;<xsl:value-of select="//*[contains(@class,' bkinfo/orgname ')]"/>
>>            <xsl:text/>
>>            <xsl:value-of
>>              select="//*[contains(@class,' bkinfo/bkcopyrfirst ')]"/>,<xsl:value-of
>>            select="//*[contains(@class,' bkinfo/bkcopyrlast ')]"/>. </fo:block>
>>        </fo:block>
>>        <xsl:call-template name="place-cover-art"/>
>>      </fo:flow>
>>-->
>>    </fo:page-sequence>
>>    <!-- generate an "inside front cover" page (left side) (sheet 2) -->
>>    <fo:page-sequence master-reference="cover">
>>      <fo:flow flow-name="xsl-region-body">
>>        <fo:block xsl:use-attribute-sets="p" color="purple" text-align="center"/>
>>      </fo:flow>
>>    </fo:page-sequence>
>>  </xsl:template>
>>
>><!-- Timestamp template -->
>><xsl:template name="TodaysDate">
>><fo:block>
>>    <xsl:value-of select="java:format(java:java.text.SimpleDateFormat.new
>>('MMMM d, yyyy, h:mm:ss a (zz)'), java:java.util.Date.new())"/>
>> </fo:block>
>> </xsl:template>
>>
>>
>><!-- Jeff is adding this to replace the piece below -->
>><xsl:template name="place-cover-art">
>><!-- product specific art, etc. -->
>><fo:block margin-top="2pc" font-family="Helvetica" border-color="black" border-width="thin" padding="6pt">
>>  <fo:block font-size="12pt" line-height="100%" margin-top="12pc" margin-bottom="12pc" text-align="right">
>>   Derby Logo
>>    <!-- one might imbed SVG directly here for use with FOP, for instance -->
>>  </fo:block>
>></fo:block>
>></xsl:template>
>>
>>
>><!-- Removing...
>>
>>  <xsl:template name="place-cover-art">
>>    <fo:block margin-top="2pc" font-family="Helvetica" border-style="dashed"
>>      border-color="black" border-width="thin" padding="6pt">
>>      <fo:block font-size="12pt" line-height="100%" margin-top="12pc"
>>        margin-bottom="12pc" text-align="center">
>>        <fo:inline color="purple" font-weight="bold">[cover art/text goes here]</fo:inline>
>>      </fo:block>
>>    </fo:block>
>>  </xsl:template>
>>-->
>>
>>
>>  <!-- internal title page -->
>>  <!-- edition notices -->
>>  <!-- document notice data -->
>>  <!-- grant of usage data -->
>>  <!-- copyright info -->
>>  <!-- disclaimers -->
>>  <!-- redirect to notices page -->
>>  <!-- definitions for placement of Front Matter content -->
>>  <xsl:template name="generated-frontmatter">
>>    <fo:page-sequence master-reference="common-page" format="i" initial-page-number="1">
>>      <!-- Static setup for the generated pages -->
>>      <!-- header -->
>>      <fo:static-content flow-name="xsl-region-before">
>>        <xsl:variable name="booktitle">
>>          <xsl:value-of select="//*/title"/>
>>        </xsl:variable>
>>        <fo:block font-size="8pt" line-height="8pt">
>>          <xsl:value-of select="$booktitle"/>
>>        </fo:block>
>>      </fo:static-content>
>>      <!-- footer -->
>>      <fo:static-content flow-name="xsl-region-after">
>>        <fo:block text-align="center" font-size="10pt" font-weight="bold" font-family="Helvetica">
>>          <fo:page-number/>
>>        </fo:block>
>>      </fo:static-content>
>>      <!-- Flow setup for the Front Matter "body" (new "chapters" start on odd pages) -->
>>      <fo:flow flow-name="xsl-region-body">
>>        <!-- first, generate a compulsory Table of Contents -->
>>        <fo:block line-height="12pt" font-size="10pt" font-family="Helvetica" id="page1-1">
>>          <fo:block text-align="left" font-family="Helvetica">
>>            <fo:block>
>>              <fo:leader color="black" leader-pattern="rule"
>>                rule-thickness="3pt" leader-length="2in"/>
>>            </fo:block>
>>            <fo:block font-size="20pt" font-weight="bold" line-height="140%">
>>              Contents </fo:block>
>>            <xsl:call-template name="gen-toc"/>
>>          </fo:block>
>>        </fo:block>
>>      </fo:flow>
>>    </fo:page-sequence>
>>  </xsl:template>
>>  <xsl:template name="unused-toc">
>>    <!-- generate the List of Figures -->
>>    <!-- To be done
>>        <fo:block text-align="left" font-family="Helvetica" break-before="page">
>>    <fo:block><fo:leader color="black" leader-pattern="rule" rule-thickness="3pt" leader-length="2in"/></fo:block>
>>          <fo:block font-size="20pt" font-weight="bold" line-height="140%">
>>            Figures
>>          </fo:block>
>>          <xsl:call-template name="gen-figlist"/>
>>        </fo:block>
>>-->
>>    <!-- generate the List of Tables -->
>>    <!-- To be done
>>        <fo:block text-align="left" font-family="Helvetica" break-before="page">
>>    <fo:block><fo:leader color="black" leader-pattern="rule" rule-thickness="3pt" leader-length="2in"/></fo:block>
>>          <fo:block font-size="20pt" font-weight="bold" line-height="140%">
>>            Tables
>>          </fo:block>
>>          <xsl:call-template name="gen-tlist"/>
>>        </fo:block>
>>-->
>>    <!-- To be done: while still in Roman numbering, all the bkfrontm content... -->
>>  </xsl:template>
>>  <!-- initiate main content processing within basic page "shell" -->
>>  <xsl:template name="main-doc3">
>>    <fo:page-sequence master-reference="chapter-master">
>>      <!-- header: single page -->
>>      <fo:static-content flow-name="xsl-region-before">
>>        <!-- book title here -->
>>        <xsl:variable name="booktitle">
>>          <xsl:value-of select="//*/title"/>
>>        </xsl:variable>
>>        <fo:block font-size="8pt" line-height="8pt">
>>          <xsl:value-of select="$booktitle"/>
>>        </fo:block>
>>      </fo:static-content>
>>      <!-- footer static stuff -->
>>      <fo:static-content flow-name="xsl-region-after">
>>        <fo:block text-align="center" font-size="10pt" font-weight="bold" font-family="Helvetica">
>>          <fo:page-number/>
>>        </fo:block>
>>      </fo:static-content>
>>      <!-- special footers for first page of new chapter -->
>>      <!-- Flow setup for the main content (frontm, body, backm) (new "chapters" start on odd pages) -->
>>      <fo:flow flow-name="xsl-region-body">
>>        <!-- chapter body content here -->
>>        <fo:block text-align="left" font-size="10pt" font-family="Helvetica" break-before="page">
>>          <xsl:apply-templates/>
>>        </fo:block>
>>      </fo:flow>
>>    </fo:page-sequence>
>>  </xsl:template>
>>  <!-- set up common attributes for all page definitions -->
>>  <xsl:attribute-set name="common-grid">
>>    <xsl:attribute name="page-width">51pc</xsl:attribute>
>>    <!-- A4: 210mm -->
>>    <xsl:attribute name="page-height">66pc</xsl:attribute>
>>    <!-- A4: 297mm -->
>>    <xsl:attribute name="margin-top">3pc</xsl:attribute>
>>    <xsl:attribute name="margin-bottom">3pc</xsl:attribute>
>>    <xsl:attribute name="margin-left">6pc</xsl:attribute>
>>    <xsl:attribute name="margin-right">6pc</xsl:attribute>
>>  </xsl:attribute-set>
>>  <!-- set up common attributes for all page definitions -->
>>  <xsl:attribute-set name="maptitle">
>>    <xsl:attribute name="font-size">16pt</xsl:attribute>
>>    <xsl:attribute name="font-weight">bold</xsl:attribute>
>>  </xsl:attribute-set>
>>  <!-- set up common attributes for all page definitions -->
>>  <xsl:attribute-set name="mapabstract">
>>    <xsl:attribute name="margin-top">3pc</xsl:attribute>
>>    <xsl:attribute name="margin-bottom">3pc</xsl:attribute>
>>    <xsl:attribute name="margin-left">6pc</xsl:attribute>
>>    <xsl:attribute name="margin-right">6pc</xsl:attribute>
>>  </xsl:attribute-set>
>>  <!-- main toc generator -->
>>  <xsl:template name="gen-toc">
>>    <!-- get by main part: body -->
>>    <xsl:for-each select="//map/*[contains(@class,' topic/topic ')]">
>>      <fo:block text-align-last="justify" margin-top="6pt" margin-left="4.9pc">
>>         <fo:basic-link internal-destination="{string(@id)}">
>> <fo:inline font-weight="bold">
>>          <!--Chapter <xsl:number level="any" from="map"/>. -->
>>          <xsl:value-of select="*[contains(@class,' topic/title ')]"/>
>>       
>>  </fo:inline>
>>        <fo:leader leader-pattern="dots"/>
>>        <fo:page-number-citation ref-id="{generate-id()}"/>
>>      </fo:basic-link>
>>
>>      </fo:block>
>>      <xsl:call-template name="get-tce2-section"/>
>>    </xsl:for-each>
>>  </xsl:template>
>>  <!-- 2nd level header -->
>>  <xsl:template name="get-tce2-section">
>>    <xsl:for-each select="*[contains(@class,' topic/topic ')]">
>>      <fo:block text-align-last="justify" margin-left="7.5pc">
>>        <fo:basic-link internal-destination="{string(@id)}">
>><fo:inline font-weight="bold">
>>          <xsl:value-of select="*[contains(@class,' topic/title ')]"/>
>>        </fo:inline>
>>   <fo:leader leader-pattern="dots"/>
>>        <fo:page-number-citation ref-id="{generate-id()}"/>
>>      </fo:basic-link>
>>      </fo:block>
>>      <xsl:call-template name="get-tce3-section"/>
>>    </xsl:for-each>
>>  </xsl:template>
>>  <!-- 3nd level header -->
>>  <xsl:template name="get-tce3-section">
>>    <xsl:for-each select="*[contains(@class,' topic/topic ')]">
>>      <fo:block text-align-last="justify" margin-left="9pc">
>><fo:basic-link internal-destination="{string(@id)}">
>>        <xsl:value-of select="*[contains(@class,' topic/title ')]"/>
>>        <fo:leader leader-pattern="dots"/>
>>        <fo:page-number-citation ref-id="{generate-id()}"/>
>>      </fo:basic-link>
>>      </fo:block>
>>      <xsl:call-template name="get-tce4-section"/>
>>    </xsl:for-each>
>>  </xsl:template>
>>  <!-- 4th level header -->
>>  <xsl:template name="get-tce4-section">
>>    <xsl:for-each select="bksubsect1">
>>      <fo:block text-align-last="justify" margin-left="+5.9pc">
>><fo:basic-link internal-destination="{string(@id)}">
>><xsl:value-of select="*/title"/>
>>        <fo:leader leader-pattern="dots"/>
>>        <fo:page-number-citation ref-id="{generate-id()}"/>
>>      </fo:basic-link>
>>      </fo:block>
>>      <xsl:call-template name="get-tce5-section"/>
>>    </xsl:for-each>
>>  </xsl:template>
>>  <!-- 5th level header -->
>>  <xsl:template name="get-tce5-section">
>>    <xsl:for-each select="bksubsect2">
>>      <fo:block text-align-last="justify" margin-left="+5.9pc">
>>        <fo:basic-link internal-destination="{string(@id)}">
>><xsl:value-of select="*/title"/>
>>        <fo:leader leader-pattern="dots"/>
>>        <fo:page-number-citation ref-id="{generate-id()}"/>
>>      </fo:basic-link>
>>
>>      </fo:block>
>>      <!--xsl:call-template name="get-tce6-section"/-->
>>    </xsl:for-each>
>>  </xsl:template>
>></xsl:stylesheet>
>>    
>>


Mime
View raw message