<?xml version="1.0"?>
<!DOCTYPE book SYSTEM "sbk:/style/dtd/book.dtd">

<!--
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You 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.
-->
<!-- $Id$ -->

<book title="Xalan XSL Transformer User's Guide" copyright="2006 The Apache Software Foundation">
  <resources source="sbk:/sources/xalan/resources.xml"/>
  <external href="http://xalan.apache.org/index.html" label="Home"/>
  <separator/>
  <document id="index" label="Xalan-J 2.7.1" source="xalan/index.xml"/>
  <document id="charter" label="Charter" source="xalan/charter.xml"/>
  <separator/>  
  <document id="whatsnew" label="What's New" source="xalan/whatsnew.xml"/>
  <document id="readme" label="Release Notes" source="xalan/readme.xml"/>
  <separator/>
  <document id="overview" label="Overview" source="xalan/overview.xml"/>
  <document id="downloads" label="Download/Build" source="xalan/downloads.xml"/>  
  <document id="getstarted" label="Getting Started" source="xalan/getstarted.xml"/>
  <document id="xsltc_usage" label="Using XSLTC" source="xalan/xsltc_usage.xml"/>   
  <separator/>
  <faqs id="faq" label="FAQs" source="xalan/faq.xml"/>
  <separator/>
  <document id="samples" label="Sample Apps" source="xalan/samples.xml"/>
  <document id="commandline" label="Command Line" source="xalan/commandline.xml"/>
  <hidden   id="commandline_xsltc" source="xalan/commandline_xsltc.xml"/>  
  <separator/>
  <document id="features" label="Features" source="xalan/features.xml"/>
  <document id="trax" label="Transform API" source="xalan/trax.xml"/>
  <document id="xpath_apis" label="XPath API" source="xalan/xpath_apis.xml"/>
  <document id="usagepatterns" label="Usage Patterns" source="xalan/usagepatterns.xml"/>
  <separator/>
  <external href="apidocs/index.html" label="Xalan-J API"/>    
  <document id="public_apis" label="Public APIs" source="xalan/public_apis.xml"/>
  <document id="dtm" label="DTM" source="xalan/dtm.xml"/>   
  <separator/>    
  <document id="extensions" label="Extensions" source="xalan/extensions.xml"/>
  <document id="extensionslib" label="Extensions Library" source="xalan/extensionslib.xml"/>
  <document id="extensions_xsltc" label="XSLTC Exts" source="xalan/extensions_xsltc.xml"/>
  <separator/>
  <external href="design/design2_0_0.html" label="Xalan 2 Design"/>
  <external href="xsltc/index.html" label="XSLTC Design"/>  
  <separator/>
  <document id="builds" label="Building a release" source="xalan/builds.xml"/>
  <external href="http://xml.apache.org/xalan-j/test/overview.html" label="Testing"/>
  <document id="bugreporting" label="Bug Reporting" source="xalan/bugreporting.xml"/>  
  <separator/>
  <document id="contact_us" label="Contact us" source="xalan/contact_us.xml"/>      
  <hidden   id="history" source="xalan/history.xml"/>
  <hidden   id="xsltc_history" source="xalan/xsltc_history.xml"/>
</book>
