svn commit: r1350859 [4/7] - in /xalan/c/trunk/xdocs: ./ html/ html/apiDocs/ sources/ sources/xalan-graphic/ sources/xalan/ sources/xslt-resources/ style/ style/dtd/
[email protected] Sat, 16 Jun 2012 04:28:16 -0000
| Newsgroups | gmane.text.xml.xalan.cvs |
|---|---|
| Message-ID | <[email protected]> |
Added: xalan/c/trunk/xdocs/sources/xalan/getstarted.xml URL: http://svn.apache.org/viewvc/xalan/c/trunk/xdocs/sources/xalan/getstarted.xml?rev=1350859&view=auto ============================================================================== --- xalan/c/trunk/xdocs/sources/xalan/getstarted.xml (added) +++ xalan/c/trunk/xdocs/sources/xalan/getstarted.xml Sat Jun 16 04:28:14 2012 @@ -0,0 +1,244 @@ +<?xml version="1.0" standalone="no"?> +<!-- + * 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. +--> + +<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd"> + +<s1 title="Getting Started with Xalan-C++"> +<ul> +<li><link anchor="download">Downloading what you need</link></li> +<li><link anchor="path">Setting up the path/library path</link></li> +<li><link anchor="samples">Trying out the samples</link></li> +<li><link anchor="commandline">Performing your own transformations from the command line</link></li> +<li><link anchor="apps">Setting up your own XSLT applications</link></li> +</ul> +<p>This section is being rewritten. +<jump href="index.html#getstarted">See: new getting started</jump> +</p> +<anchor name="download"/> +<s2 title="Downloading what you need"> +<p>For &xslt4c-current;, we are distributing the following: +<ul> +<li>AIX 5.1 32-bit and 64-bit xlC_r builds</li> +<li>HP-UX 11 32-bit and 64-bit aCC builds</li> +<li>Red Hat Linux 7.2 32-bit and 64-bit Intel C++ builds</li> +<li>Solaris 2.7 32-bit and 64-bit Forte C++ builds</li> +<li>SuSE Linux 8.1 for IA-32 gcc 3.2.2 build </li> +<li>Windows 32-bit and 64-bit Visual C++ builds</li> +</ul> +</p> +<!-- Leave this section in for future releases +<p>New to the &xslt4c-current; binary distribution list, we are also providing the following: +<ul> +</ul> +</p> +--> +<p>As with previous releases, the documentation build containing this User's Guide and API documentation + will be provided in a separate distribution.</p> +<p>Please contact us at <human-resource-ref idref="xalandev"/> if you would like to help provide builds for other platforms.</p> +<p>If you do not already have it, you must also download the &xml4c-used; build as indicated below.</p> +<note>The Xalan distribution files are in <resource-ref idref="xslt4c-distdir"/>. The Xerces distribution files are in + <resource-ref idref="xml4c-distdir"/>. Xalan documentation is provided in a separate package from the binary + distribution files. For Windows, documentation is packaged with the file name &xslt4c-docs_dist_zip;. For UNIX, + documentation is packaged with the file name of &xslt4c-docs_dist_targz;.</note> +<br/> +<table> + <tr> + <th>Xalan distribution files</th> + <th>Xerces distribution files</th> + <th>Platform</th> + </tr> + <tr> + <td>&xslt4c-aix51v6-dist;</td> + <td>&xml4c-aix51v6-dist;</td> + <td>AIX 5.1 (32-bit)</td> + </tr> + <tr> + <td>&xslt4c-aix51v6_64-dist;</td> + <td>&xml4c-aix51v6_64-dist;</td> + <td>AIX 5.1 (64 bit)</td> + </tr> + <tr> + <td>&xslt4c-hpux11a-dist;</td> + <td>&xml4c-hpux11a-dist;</td> + <td>HP-UX 11.0 (32 bit)</td> + </tr> + <tr> + <td>&xslt4c-hpux11a_64-dist;</td> + <td>&xml4c-hpux11a_64-dist;</td> + <td>HP-UX 11.0 (64 bit)</td> + </tr> + <tr> + <td>&xslt4c-redhat72_icc-dist;</td> + <td>&xml4c-redhat72_icc-dist;</td> + <td>Redhat Linux 7.2 (32-bit)</td> + </tr> + <tr> + <td>&xslt4c-redhat72_ecc-dist;</td> + <td>&xml4c-redhat72_ecc-dist;</td> + <td>Redhat Linux 7.2 (64-bit)</td> + </tr> + <tr> + <td>&xslt4c-solaris27-dist;</td> + <td>&xml4c-solaris27-dist;</td> + <td>Solaris 2.7 (32-bit)</td> + </tr> + <tr> + <td>&xslt4c-solaris27_64-dist; </td> + <td>&xml4c-solaris27_64-dist;</td> + <td>Solaris 2.7 (64-bit)</td> + </tr> + <tr> + <td>&xslt4c-suse81_IA-dist;</td> + <td>&xml4c-suse81_IA-dist;</td> + <td>SuSE Linux 8.1 (32-bit)</td> + </tr> + <tr> + <td>&xslt4c-win2k-dist;<br/></td> + <td>&xml4c-winnt-dist;<br/></td> + <td>Windows 2000<br/></td> + </tr> + <tr> + <td>&xslt4c-win2003l_64-dist;<br/></td> + <td>&xml4c-win2003c_64-dist;<br/></td> + <td>Windows 2003 Server (64-bit)<br/></td> + </tr> +</table> +<p>The compiler version used for each platform is listed in the table below. + <table> + <tr> + <th>Platform - Operating System</th> + <th>Compilers</th> + </tr> + <tr> + <td>AIX 5.1</td> + <td>IBM C and C++ for AIX 6.00</td> + </tr> + <tr> + <td>HP/UX 11.0</td> + <td>aCC A.03.52</td> + </tr> + <tr> + <td>Red Hat Linux 7.2</td> + <td>Intel C++ Compiler, version 7.1</td> + </tr> + <tr> + <td>Solaris 2.7</td> + <td>Sun Workshop 6 update 2</td> + </tr> + <tr> + <td>SuSE Linux 8.1</td> + <td>gcc Compiler, version 3.2.2</td> + </tr> + <tr> + <td>Windows NT, 2000, and XP</td> + <td>Microsoft Visual C++ with SP5 (for 32-bit)<br/> + Intel C++ Compiler, version 7.1 (for 64-bit)</td> + </tr> + </table> +</p> +<note>Use GNU tar to untar the Solaris distribution file; see <link idref="faq" anchor="gnutar">A tar checksum error on Solaris</link>.</note> +<anchor name="xalandists"/> + +<p>If you want to take advantage of the support for number formatting, sorting, and encoding the ICU provides, you should also + download and install the <resource-ref idref="icu"/>; see <link idref="usagepatterns" anchor="icu">Using the ICU</link>,</p> +<note>To access previous releases of &xslt4c;, visit the <jump href="http://archive.apache.org/dist/xml/xalan-c/">Xalan-C archive + directory</jump>.</note> +</s2> + +<anchor name="path"/> +<s2 title="Setting up the path/library path"> +<ul> + <li><link anchor="windowspath">For Windows</link></li> + <li><link anchor="unixpath">For UNIX</link></li> +</ul> + +<anchor name="windowspath"/> +<s3 title="For Windows"> +<p>To use the Windows binary distribution, you must place the Xalan executables and the Xalan and Xerces libraries on the path:</p> +<ul> + <li>Put &xslt4c-dist;-<my_Windows_distribution>\bin and &xml4c-dist;-<my_Windows_distribution>\bin on the path.</li> +</ul> +<p>The Visual C++ Xalan project included with the Windows release knows the relative paths to the Xalan headers and libraries, + but it does not know where you have unzipped the Xerces distribution. If you plan to use Visual C++ to build Xalan applications + or <link idref="readme" anchor="jar">rebuild Xalan</link>, you must also provide Visual C++ with access to the Xerces headers + and libraries.</p> +<p>Use the Visual C++ Tools menu to open the Options dialog box, go to the Directories tab, and do the following:</p> +<ul> + <li>Add the path to &xml4c-dist;-<my_Windows_distribution>\include to the list of directories of Include files.</li> + <li>Add the path to &xml4c-dist;-<my_Windows_distribution>\lib to the list of directories of Library files.</li> +</ul> +</s3> + +<anchor name="unixpath"/> +<s3 title="For UNIX"> +<p>To use one of the UNIX binary distributions, you must place the &xslt4c; executable on the path, and the &xslt4c; and &xml4c; + libraries on the library path.</p> +<p>For the &xslt4c; AIX distributions:</p> +<ul> + <li>Put &xslt4c-dist;-<my_AIX_distribution>/bin on the path (PATH).</li> + <li>Put &xslt4c-dist;-<my_AIX_distribution>/lib and &xml4c-dist;-<my_AIX_distribution>/lib + on the library path (LIBPATH), or copy the shared libraries to /usr/lib.</li> +</ul> +<p>For the &xslt4c; HP-UX 11 distributions:</p> +<ul> + <li>Put &xslt4c-dist;-<my_HPUX_distribution>/bin on the path (PATH).<br/><br/></li> + <li>Put &xslt4c-dist;-<my_HPUX_distribution>/lib and &xml4c-dist;-<my_HPUX_distribution>/lib on the library path + SHLIB_PATH), or copy the shared libraries to /usr/lib.</li> +</ul> +<p>For the &xslt4c; Solaris distributions:</p> +<ul> + <li>Put &xslt4c-dist;-<my_Solaris_distribution>/bin on the path (PATH).<br/><br/></li> + <li>Put &xslt4c-dist;-<my_Solaris_distribution>/lib and &xml4c-dist;-<my_Solaris_distribution>/lib on the library path + (LD_LIBRARY_PATH), or copy the shared libraries to /usr/lib.</li> +</ul> +<p>For the &xslt4c; RedHat and SuSE Linux distributions:</p> +<ul> + <li>Put &xslt4c-dist;-<my_Linux_distribution>/bin on the path (PATH).</li> +<li>Put &xslt4c-dist;-<my_Linux_distribution>/lib and &xml4c-dist;-<my_Linux_distribution>/lib on the library path (LD_LIBRARY_PATH), +or copy the shared libraries to /usr/lib.</li> +</ul> +</s3> +</s2><anchor name="samples"/> +<s2 title="Trying out the samples"> +<p>The &xslt4c; distribution includes a number of basic sample applications. We have precompiled these samples for you so they are ready to run, and you can review the source files to see just how they work. </p> +<p>To run the samples, do the following:</p> +<ol> +<li>Set up your path (see above). In the Windows32 distribution, the sample executables are in +&xslt4c-dist;-<my_Windows_distribution>\bin. In the UNIX distributions, the executables are in &xslt4c-dist;-<my_UNIX_distribution>/bin.</li> +<li>Go to the samples subdirectory containing the sample.</li> +<li>Run the sample from the command line (in Windows, use the DOS shell).</li> +<li>Examine the application source files.</li> +</ol> +<p>For example, go to the SimpleTransform subdirectory and issue the following command:</p> +<p><code>SimpleTransform</code></p> +<p>SimpleTransform uses the foo.xsl stylesheet to transform foo.xml, and writes the transformation result to foo.out. To see how the example works, examine the source files: foo.xml, foo.xsl, foo.out, and SimpleTransform.cpp.</p> +<p>For more information about the samples, see <link idref="samples">&xslt4c; Samples</link>.</p> +</s2><anchor name="commandline"/> +<s2 title="Performing your own transformations from the command line"> +<p>The Xalan executable lets you perform transformations from the command line. The command line for +most standard transformations is as follows:</p> +<p><code>Xalan -o <ref>outputfile</ref> <ref>xmlSource</ref> <ref>stylesheet</ref></code></p> +<p>where <ref>xmlSource</ref> is the XML source file name, <ref>stylesheet</ref> is the XSL stylesheet file name, and <ref>outputfile</ref> is the output file name.</p> +<p>If you want the output to be displayed on the screen, simply omit the -o flag and <ref>outputfile</ref>.</p> +<p>You can use this utility to try out XSL stylesheets you have written, to make sure they do what you expect with the XML source files they are designed to transform. The utility provides useful messages if the source file or stylesheet is not well formed. If you include a DOCTYPE statement or Schema hint in your XML source files and include the -v flag on the command line, the utility will also let you know whether the XML document is valid (conforms to that DOCTYPE or Schema). For more information, see <link idref="commandline">Command-Line Utility</link>.</p> +</s2><anchor name="apps"/> +<s2 title="Setting up your own XSLT applications"> +<p>You can start by using your own XML source files and XSL stylesheets with the sample applications, which illustrate a number of usage patterns. For more information on setting up applications, see <link idref="usagepatterns">Basic Usage Patterns</link>.</p> +</s2> +</s1> Added: xalan/c/trunk/xdocs/sources/xalan/history.xml URL: http://svn.apache.org/viewvc/xalan/c/trunk/xdocs/sources/xalan/history.xml?rev=1350859&view=auto ============================================================================== --- xalan/c/trunk/xdocs/sources/xalan/history.xml (added) +++ xalan/c/trunk/xdocs/sources/xalan/history.xml Sat Jun 16 04:28:14 2012 @@ -0,0 +1,236 @@ +<!-- + * 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. +--> + +<s3 title="Changes for &xslt4c; version 1.11"> +<p>This is a general bug fix release with added stability features.</p> +<p>Major updates since version 1.10 include:</p> +<ul> + <li>Add support for Xerces-C 3.0 and newer</li> + <li>Drop support for Microsoft Studio (VC6)</li> + <li>Fix support issues for AIX 5.3</li> + <li>Fix support issues for Solaris 2.8</li> + <li>Fix support issues for GCC-4.3</li> + <li>Add support for Microsoft .NET 2008 (VC9) </li> + <li>Add support for Microsoft .NET 2010 (VC10)</li> + <li>Add number and nodeset types as top-level stylesheet parameters</li> + <li><link anchor="bugfix11">Bugs fixed in this release</link>.</li> +</ul> +</s3> + +<s3 title="Changes for &xslt4c; version 1.10"> +<p>Major updates since version 1.9 include:</p> +<ul> + <li>Support for XML 1.1 and Namespaces in XML 1.1.</li> + <li>Added support for IBM XLC 7.0 compiler on AIX.</li> + <li>Improved and stabilized C pluggable memory management functionality.</li> + <li>Various improvements in Xalan XML serializers for better performance and stability.</li> + <li>Upgrade from Xerces-C 2.6 to Xerces-C 2.7.</li> + </ul> +</s3> + +<s3 title="Changes for &xslt4c; version 1.9"> +<p>Major updates since version 1.8 include:</p> +<ul> + <li>Pluggable Memory Management. This feature allows applications to maintain precise control over memory allocations. This + will allow users, with knowledge of their application's characteristics, to provide a more efficient allocation method + than the general purpose procedures provided by the system. for more information on how to use this feature, please see + the <link idref="programming" anchor="memory">Pluggable Memory Management</link> section of the Programming page.</li> + <li>Improved stability on the execution of large stylesheets and XML documents. Because the current implementation relies on + function recursion, certain stylesheets/input documents may cause the program stack to overflow and cause the application + to fail. It also may inhibit executing stylesheets that are heavily dependent on recursive functions. This feature will + prevent these types of failure. </li> + <li>Provided a global option to pool all text node strings. This feature allows developers to set a flag to determine if a + parsed source tree will pool the values of all of the text nodes in the XML document. By doing so, this can result in a + significant reduction in memory usage, particularly if there are a lot of repeated values in text nodes. Please see + the class descriptions for <jump href="apiDocs/classXalanSourceTreeDocument.html">XalanSourceTreeDocument</jump>, + <jump href="apiDocs/classXalanDefaultParsedSource.html">XalanDefaultParsedSource</jump>, and + <jump href="apiDocs/classXalanTransformer.html">XalanTransformer</jump> in the <jump href="apiDocs/index.html"> + API Reference</jump> section for more information.</li> + <li>Added support for Microsoft Studio .NET V7.1. Project files for Microsoft Studio .NET V7.1 have been provided under the + directory xml-xalan\c\Projects\Win32\VC7.1.</li> + <li>Upgrade from Xerces-C 2.5 to Xerces-C 2.6. </li> + </ul> +</s3> + + <s3 title="Changes for &xslt4c; version 1.8"> + <p>Major updates since version 1.7 include:</p> + <ul> + <li>Upgrade from Xerces-C 2.4 to Xerces-C 2.5. </li> + <li>Provide build support for Cygwin and HP-UX 11.00 on Itanium. Although binary distributions are not provided for the Cygwin environment and + HP-UX 11.00 on Itanium platform, the build configuration files provided in the source distribution can be used to build on these platforms. </li> + <li>Project files for supporting Microsoft Visual Studio .NET. Although a binary distribution for the Microsoft Visual Studio .NET + is not provided in this release, Visual Studio solution files are provided in the Windows source distribution for those who choose to build + on this platform. Please see <link idref="build_instruct" anchor="dotNet">"Step for doing a Windows Build with Visual Studio .NET"</link> + for details.</li> + <li>Additional changes to Xerces Deprecated DOM support. This is another step towards phasing out the support for Xerces Deprecated DOM. Users + are encouraged to modify their applications to interface with the new Xerces DOM support. For more information on the effects of these + changes to your build environment, please see <link anchor="xercesdepdom">"Steps for doing a Build with Xerces Deprecated DOM Support" + </link></li> + <!-- + <li>Porting of conf utility to the UNIX platform. The conf utility is a test harness designed to run the conformance tests located under the xml-xalan/test/tests directory. After the tests have been run, a results report is generated in HTML format for easy viewing. For more information on how to use this tool, please see <link idref="commandline" anchor="confexe">"Using the command line utility"</link>.</li> + --> + <li>Implemented optimizations to significantly improve the throughput of the ICU-enabled "format-number" function.</li> + <li>Changes in the XML Serializer. The serializer will no longer put a newline after the xml header tag unless indent="yes".</li> +<!-- See bugzilla + <jump href="http://nagoya.apache.org/bugzilla/show_bug.cgi?id=24304">24304</jump> and + <jump href="http://nagoya.apache.org/bugzilla/show_bug.cgi?id=28386">28386</jump>. +--> + </ul> + </s3> + <s3 title="Changes for &xslt4c; version 1.7"> + <p>Major updates since version 1.6 include:</p> + <ul> + <li>Message Localization Support. This feature enables &xslt4c; to issue diagnostic messages + in languages other than the default language (English). In order to utilize this feature, + the user must provide a version of the &xslt4c; message catalog that has been translated in + their language of choice. For more information on how to exploit this feature, please see + <link anchor="locale">Steps for doing a Build with Message Localization Support</link>.</li> + <li>Build, packaging, and installation improvements. Changes to the &xslt4c; makefiles now + allow for a more flexible build, packaging, and install process. Each step in a typical + build process can be invoked by specifying the appropriate target, for example to build the + executable, and/or samples, or install the build at user-specified location. For more + information on building &xslt4c;, please see <link anchor="unix">Steps for doing a Unix build + </link>.</li> + <li>Deprecated DOM Support. The XercesBridge classes have been marked deprecated and moved + into an exclusive directory within the xalanc/XercesParserLiaison directory called + 'Deprecated'. If your application is dependent on these classes to interface with the + deprecated Xerces DOM you must alter your include directive with the 'Deprecated' directory. + For example:<br/><br/> + <code>#include "xalanc/XercesParserLiaison/XercesDocumentBridge.hpp"</code><br/><br/> + should be changed to:<br/><br/> + <code>#include "xalanc/XercesParserLiaison/Deprecated/XercesDocumentBridge.hpp"</code><br/><br/></li> + <li>Upgrade from Xerces-C 2.3 to Xerces-C 2.4. </li> + <li>Porting of ThreadSafe example to UNIX platform.</li> + <li>Implementation of EXSLT string extension functions encode-uri() and decode-uri(). </li> + <li>Implementation of EXSLT dynamic extension function evaluate(). </li> + <li>Implementation of EXSLT date-time extension function date-time().</li> + </ul> + </s3> + + <s3 title="Changes for &xslt4c; version 1.6"> + <p>Major updates since version 1.5 include:</p> + <ul> + <li>Directory "sane include" reorganization. A new sub-directory called 'xalanc' has been added to the src directory (for source distribution packages) and include directory (for binary distribution packages). New source files which include Xalan headers will need to be modified to include the 'xalanc' prefix in the header path. + For example: <br/><br/> + <code>#include <XPath/XObject.hpp></code><br/><br/> + will need to be changed to <br/><br/> + <code>#include <xalanc/XPath/XObject.hpp></code><br/><br/> + For Windows users, all project files have been modified to reflect this change. For UNIX users, please see <link anchor="unix">Steps for doing a UNIX build</link> for migration considerations.</li> + </ul> + </s3> + + <s3 title="Changes for &xslt4c; version 1.5"> + <p>Major updates since version 1.4 include:</p> + <ul> + <li>For Windows, Xalan-C++ is now packaged as a single DLL. The project files to build separate DLLs are now deprecated and will not be maintained.</li> + <li>Support for &xml4c; DOMNode classes.</li> + <li>New sample <em>TransformToXercesDOM</em> that illustrates how to perform a transform resulting in a &xml4c; DOMDocument</li> + <li>Usage of the &xml4c; C++ namespace and creation of &xslt4c; namespace.</li> + </ul> + </s3> + <s3 title="Changes for &xslt4c; version 1.4"> + <p>Major updates since version 1.3 include:</p> + <ul> + <li>The &xslt4c; distributions no longer include the &xml4c; headers and libraries. Accordingly, you must download the appropriate &xml4c; distribution (see <link idref="getstarted" anchor="download">Downloading what you need</link>.</li> + <li>64-bit build for HP-11; <link anchor="64">untested 64-bit support</link> for Solaris and AIX.</li> + <li>New Linux platform and compiler: Redhat 7.2 with gcc 3.1.</li> + <li><resource-ref idref="stlport"/> is no longer required on any of our supported platforms.</li> + <li><link idref="extensionslib" anchor="exslt">Alpha support for a number of EXSLT functions</link>.</li> + <li><link idref="samples" anchor="parsedsourcewrappers">ParsedSourceWrappers</link>, a sample that + illustrates how to perform transformations with input in the form of a pre-built + XalanDOM or XalanSourceTree.</li> + </ul> + </s3> + <s3 title="Changes for &xslt4c; version 1.3"> + <p>Major updates since version 1.2 include:</p> + <ul> + <li>A new and simplified command-line utility: <link idref="commandline" anchor="xalanexe">the Xalan executable</link></li> + <li>New XPath samples exploiting the XPathEvaluator C API and illustrating serialization of an XPath result set: <link idref="samples" anchor="simplexpathcapi">SimpleXPathCAPI</link> and <link idref="samples" anchor="serializenodeset">SerializeNodeSet</link></li> + <li>A new <link idref="usagepatterns" anchor="xercesdomwrapperparsedsource">wrapper class</link> that lets you pass in a Xerces DOM as input for a transformation</li> + <li>Bug fixes.</li> + <li>Changed XPathException to XalanXPathException because of a clash with a new Xerces class of the same name.</li> + </ul> + </s3> + <s3 title="Changes for &xslt4c; version 1.2"> + <p>Major updates since version 1.1 include:</p> + <ul> + <li><link idref="extensionslib">Introduction of a library of extension functions</link></li> + <li>Support for pre-parsed source documents and pre-compiled stylesheets in + <jump href="apiDocs/classXalanTransformer.html">XalanTransformer</jump> and the C API.</li> + <li>Support for stylesheet params in <jump href="apiDocs/classXalanTransformer.html">XalanTransformer</jump> + and the C API</li> + <li>Support for extension functions in <jump href="apiDocs/classXalanTransformer.html">XalanTransformer</jump></li> + <li>Performance enhancements</li> + </ul> + </s3> + <s3 title="Changes for &xslt4c; version 1.1"> + <p>In addition to adding to the list of platforms on which &xslt4c; builds, our focus for this release has been on bug fixes, performance enhancements, + and providing a simplified C++ and C API for performing standard transformations. Major updates since version 1.0 include:</p> + <ul> + <li>Added HP-UX 11 build.</li> + <li>Added Solaris build.</li> + <li>Greatly improved performance.</li> + <li>Improved conformance to the XSLT specification.</li> + <li>Simplified the C++ API and provided a C API for performing standard transformations with the <link idref="usagepatterns" + anchor="xalantransformer">XalanTransformer</link> class and associated header files.</li> + <li>Added sample illustrating use of XalanTransformer and the new C++ API: + <link idref="samples" anchor="xalantransform">XalanTransform</link>.</li> + <li>Added sample illustrating use of XalanTransformer, the new C API, and how to run &xslt4c; and perform transformations on an + Apache Web server: <link idref="samples" anchor="apachemodulexslt">ApacheModuleXSLT</link>.</li> + <li>Added the <link idref="samples" anchor="streamtransform">StreamTransform</link> sample.</li> + <li>Eliminated dependencies on non-public Xerces headers; accordingly can now build with the Xerces distribution.</li> + <li>Fixed namespace mapping and inheritance problems.</li> + <li>Fixed failure of <copy-of ...> to include CRLFs (if any) in the result.</li> + <li>Fixed bug sorting in reverse document order based on position. </li> + <li>Fixed <xsl:number> bug with use of letter-value="traditional" for "classical" Greek numbering.</li> + <li>Fixed use of <xsl:fallback> within a top-level extension function.</li> + <li>Fixed HTML output method bug. The <HEAD> element was not including a <META> tag with the encoding.</li> + <li>Fixed bug using key() in match patterns to find descendants.</li> + <li>Fixed bug using the id() function in complex match patterns.</li> + <li>Fixed problem outputting multiple single-character CDATA sections.</li> + <li>Fixed problem outputting whitespace characters.</li> + <li>Fixed problem transforming from a stream on UNIX platforms.</li> + <li>Fixed a bug with the document() function, which was generating a syntax error if called in the following manner: document(<ref>string</ref>,/).</li> + <li>Fixed named templates bug accepting global parameter when called with a parameter of the same name that the named template does not + recognize.</li> + </ul> + </s3> + <s3 title="Changes for &xslt4c; version 1.0"> + <p>Major updates since version 0.40.0 include:</p> + <ul> + <li>Full support for namespace handling</li> + <li>Full implementation of the format-number() function and support for the decimal-format element</li> + <li>Integration with the <resource-ref idref="icu"/> for number formatting, sorting, and output encoding</li> + <li>Support for the exclude-result-prefixes attribute</li> + <li>Support for the output encoding attribute</li> + </ul> + </s3> + <s3 title="Changes for &xslt4c; version 0.40.0"> + <p>Major updates since version 0.30.0 include:</p> + <ul> + <li>Permitting OS file names (as well as URLs) as command-line arguments with TestXSLT</li> + <li>Stricter compliance for HTML and XML output</li> + <li>Improved handling of relative URI's</li> + <li>Improved handling of Import and Include</li> + <li>Better namespace handling (although there are still problems here)</li> + <li>Support for Document() function</li> + <li>Support for XPath predicates</li> + <li>ProblemListener with a different output stream and call + XalanTransformer::setProblemListener() before calling XalanTransformer::transform().</li> + </ul> + </s3> Added: xalan/c/trunk/xdocs/sources/xalan/index.xml URL: http://svn.apache.org/viewvc/xalan/c/trunk/xdocs/sources/xalan/index.xml?rev=1350859&view=auto ============================================================================== --- xalan/c/trunk/xdocs/sources/xalan/index.xml (added) +++ xalan/c/trunk/xdocs/sources/xalan/index.xml Sat Jun 16 04:28:14 2012 @@ -0,0 +1,300 @@ +<?xml version="1.0" standalone="no"?> +<!-- + * 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. +--> + +<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd"> + +<s1 title="&xslt4c-current;"> + +<ul> +<li><link anchor="licenses">Licenses</link></li> +<li><link anchor="getinvolved">Getting Involved</link></li> +<li><link anchor="xsltStandards">XSLT Standards Implemented</link></li> +<li><link anchor="xmlParserLib">XML Parser Library</link></li> +<li><link anchor="securityIssues">Security Issues</link></li> +<li><link anchor="getstarted">Getting Started</link></li> +<li><link anchor="getWhatNeeded">Getting What You Need</link></li> +</ul> +<p>The old Xalan-C/C++ 1.10 release can be found at +<jump href="http://xml.apache.org/xalan-c">xml.apache.org/xalan-c</jump>.</p> + +<anchor name="whatisxalan"/> +<s2 title="What Is Xalan?"> + +<p>Xalan is an XSLT processor for transforming XML documents +into HTML, text, or other XML document types. +It uses for input an XML document and an XSLT stylesheet. +The engine also supports the entry of top-level stylesheet parameters. +Documentation exists on how to extend the library with +your own custom XPath functions. +</p> +<p>Xalan-C++ version 1.11 is a robust implementation of the +W3C Recommendations for +<jump href="http://www.w3.org/TR/xslt">XSL Transformations (XSLT)</jump> +and the +<jump href="http://www.w3.org/TR/xpath">XML Path Language (XPath)</jump>. +It works with the +<jump href="http://xerces.apache.org/xerces-c">Xerces-C++ version 3.1.1</jump> +release of XML parsers. +The focus for this Xalan release is on bug fixes and +compatibility with newer development platforms. +</p> +<p>The Xalan-C/C++ project creates and distributes a +standard XSLT library and a simple Xalan command-line +utility for transforming XML documents. +</p> +<p>This project is written in a reduced set of the C++ programming language. +This makes the library directly usable on numerous platforms. +A set of 'C' language APIs is also available so that +XSLT and XPath functionality is easily deployed to 'C' language applications. +</p> +<p><jump href="samples.html">Sample programs</jump> are available +for you to test and experiment with as you learn the Xalan library. +</p> +<p>Some of the <jump href="http://www.exslt.org">EXSLT extension functions</jump> +for XPath are available. +We need to write and validate more of the EXSLT functions. +Apache also provides some of their own +<jump href="extensionslib.html">XPath extensions</jump> for use. +Documentation and examples are available for you to write +your own custom <jump href="extensions.html">XPath extensions</jump>. +</p> +<p>There is a library of <jump href="extensionslib.html">XPath extensions</jump> +that are provided by the Apache Xalan community. +</p> +</s2> + +<anchor name="licenses"/> +<s2 title="Licenses"> + +<p>The Xalan-C/C++ software conforms to The Apache Software Foundation +<jump href="license.html">License, Version 2.0</jump>. +</p> +</s2> + +<anchor name="getinvolved"/> +<s2 title="Getting Involved"> + +<p>You are invited to participate in +<jump href="http://www.apache.org/foundation/getinvolved.html">The Apache Software Foundation</jump>. +You will need to subscribe if you wish to receive mail from the lists. +Some lists require a subscription in order to post messages. +</p> +<p>The <jump href="mailto:[email protected]">xalan-dev</jump> mailing list +is used to communicate product development issues with the software development team. +The xalan-dev messages are +<jump href="http://mail-archives.apache.org/mod_mbox/xml-xalan-dev">archived here</jump> +and on <jump href="http://marc.info/?l=xalan-dev">Marc.info</jump>. +</p> +<p>The <jump href="mailto:[email protected]">xalan-c-users</jump> mailing list +is used to discuss issues regarding the use of the Xalan-C/C++ software and libraries. +The xalan-c-users messages are +<jump href="http://mail-archives.apache.org/mod_mbox/xml-xalan-c-users">archived here</jump> +and on <jump href="http://marc.info/?l=xalan-c-users">Marc.info</jump>. +</p> +<p>The subversion repository changes are logged on the xalan-cvs mailing list and are +<jump href="http://mail-archives.apache.org/mod_mbox/xml-xalan-cvs">archived here</jump> +and on <jump href="http://marc.info/?l=xalan-cvs">Marc.info</jump>. +</p> +<p>You can review the project sources and change history in the subversion repository at +<jump href="http://svn.apache.org/viewvc/xalan/c">http://svn.apache.org/viewvc/xalan/c</jump>. +</p> +<p>You can get a private copy of the subversion snapshot of the development sources at +<jump href="http://svn.apache.org/repos/asf/xalan/c/trunk">http://svn.apache.org/repos/asf/xalan/c/trunk</jump> +using your favorite SVN program. +</p> +<p>The JIRA system is used for issue tracking. +You must create an account before you can post messages and files to the JIRA tracking system. +You can view the issues at +<jump href="https://issues.apache.org/jira/browse/XALANC">https://issues.apache.org/jira/browse/XALANC</jump>. +</p> +</s2> + +<anchor name="xsltStandards"/> +<s2 title="XSLT Standards Implemented"> + +<p>Xalan-C/C++ implements the following specifications from the World Wide Web Consortium (W3C). +</p> +<ul> +<li><jump href="http://www.w3.org/TR/xslt">XSL Transformations (XSLT) Version 1.0</jump></li> +<li><jump href="http://www.w3.org/TR/xpath">XML Path Language (XPath) Version 1.0</jump></li> +<li><jump href="http://www.w3.org/TR/xml-stylesheet">Associating Style Sheets with XML documents 1.0 (Second Edition)</jump></li> +</ul> + +<p>The next major release of Xalan-C/C++ will hopefully be compatible with following standards. This added support will require a major version change from 1 to 2. +</p> +<ul> +<li><jump href="http://www.w3.org/TR/xslt20">XSL Transformations (XSLT) Version 2.0</jump></li> +<li><jump href="http://www.w3.org/TR/xslt-xquery-serialization">XSLT 2.0 and XQuery 1.0 Serialization</jump></li> +<li><jump href="http://www.w3.org/TR/xpath20">XML Path Language (XPath) Version 2.0 (Second Edition)</jump></li> +<li><jump href="http://www.w3.org/TR/xquery-semantics">XQuery 1.0 and XPath 2.0 Formal Semantics (Second Edition)</jump></li> +<li><jump href="http://www.w3.org/TR/xpath-datamodel">XQuery 1.0 and XPath 2.0 Data Model (XDM) (Second Edition)</jump></li> +<li><jump href="http://www.w3.org/TR/xpath-functions">XQuery 1.0 and XPath 2.0 Functions and Operators (Second Edition)</jump></li> +</ul> + +</s2> + +<anchor name="xmlParserLib"/> +<s2 title="XML Parser Library"> + +<p>Xalan-C/C++ uses the The Apache Software Foundation Xerces-C project that implements parsers for XML 1.0 and XML 1.1. +The following standards as specified by the +<jump href="http://www.w3.org/TR">World Wide Web Consortium (W3C)</jump> are implemented by the +<jump href="http://xerces.apache.org/xerces-c">Xerces-C</jump> XML parser library. +</p> +<ul> +<li><jump href="http://www.w3.org/TR/xml">Extensible Markup Language (XML) 1.0 (Third Edition) - currently (Fifth Edition)</jump></li> +<li><jump href="http://www.w3.org/TR/xml11">Extensible Markup Language (XML) 1.1 (First Edition) - currently (Second Edition)</jump></li> +<li><jump href="http://www.w3.org/TR/xml-id">xml:id Version 1.0</jump></li> +<li><jump href="http://www.w3.org/TR/xmlbase">XML Base (Second Edition)</jump></li> +<li><jump href="http://www.w3.org/TR/xml-infoset">XML Information Set (Second Edition)</jump></li> +<li><jump href="http://www.w3.org/TR/xml-names">Namespaces in XML 1.0 (Third Edition)</jump></li> +<li><jump href="http://www.w3.org/TR/xml-names11">Namespaces in XML 1.1 (Second Edition)</jump></li> +<li><jump href="http://www.w3.org/TR/xmlschema-1">XML Schema Part 1: Structures Second Edition</jump></li> +<li><jump href="http://www.w3.org/TR/xmlschema-2">XML Schema Part 2: Datatypes Second Edition</jump></li> +<li><jump href="http://www.w3.org/TR/REC-DOM-Level-1">Document Object Model (DOM) Level 1</jump></li> +<li><jump href="http://www.w3.org/TR/ElementTraversal">Element Traversal Specification</jump></li> +<li><jump href="http://www.w3.org/TR/DOM-Level-2-Core">Document Object Model (DOM) Level 2 Core Specification</jump></li> +<li><jump href="http://www.w3.org/TR/DOM-Level-2-Traversal-Range">Document Object Model (DOM) Level 2 Traversal and Range Specification</jump></li> +<li><jump href="http://www.w3.org/TR/DOM-Level-3-Core">Document Object Model (DOM) Level 3 Core Specification</jump></li> +<li><jump href="http://www.w3.org/TR/DOM-Level-3-Val">Document Object Model (DOM) Level 3 Validation Specification</jump></li> +<li><jump href="http://www.w3.org/TR/DOM-Level-3-LS">Document Object Model (DOM) Level 3 Load and Save Specification</jump></li> +<li><jump href="http://www.w3.org/TR/xinclude">XML Inclusions (XInclude) 1.0 (Second Edition)</jump></li> +</ul> +<p>The Xerces-C/C++ also supports the <jump href="http://sax.sourceforge.net/">SAX 1.0 and SAX 2.0</jump> projects. +SAX is primarily Java based. The Xerces-C/C++ project has implemented a SAX C++ API that looks much like the SAX Java API. +</p> +<p>Web Services and Web Security recommendations have been developed by the +<jump href="http://www.w3.org">World Wide Web Consortium (W3C)</jump> and +<jump href="http://www.oasis-open.org">OASIS-OPEN</jump> Advancing open standards for the information society. +The Xerces-C/C++ has support for custom entity resolvers which are inherited and +supported by the Xalan-C/C++ library. +</p> +</s2> + +<anchor name="securityIssues"/> +<s2 title="Security Issues"> + +<p>The Xalan-C/C++ library has hooks so that custom entity resolvers can be deployed. +The entity resolvers are actually interfaces into the Xerces-C/C++ XML Parser Library. +Use of trusted entity resolvers greatly increases the security of XML based applications. +</p> +<p>The Web Services Architecture uses specifications and recommendations +that are documented by the following organizations. +</p> +<ul> +<li>World Wide Web Consortium (W3C)<br/> + [<jump href="http://www.w3.org">http://www.w3.org]</jump>]</li> +<li>Advancing open standards for the information society (OASIS-OPEN)<br/> + [<jump href="http://www.oasis-open.org">http://www.oasis-open.org</jump>]</li> +<li>The Sourceforge SAX Project (SAX1, SAX2)<br/> + [<jump href="http://sax.sourceforge.net">http://sax.sourceforge.net</jump>]</li> +<li>Internet Engineering Task Force (IETF)<br/> + [<jump href="http://www.ietf.org">http://www.ietf.org</jump>]</li> +</ul> +<p>There are some <jump href="secureweb.html">architecture security</jump> issues +that should be addressed by any XML parser or XSLT transformation application. +Other than validating and cleaning the content of XML elements, +the access to untrusted external entities is a big problem for security management. +</p> +<p>The "Xalan" comman-line transformation program does not deploy +an OASIS catalog or perform other security measures. +URLs are resolved using the system directory of the local machine +and DNS to resolve host locations. +The "Xalan" program should be used only with +trusted XSLT stylesheets and XML documents on a trusted computer. +</p> +<p>A future release of the "Xalan" command-line transformation program +may include support for an OASIS entity resolver catalog. +</p> +<p>Information on creating Secure Web Service Applications is useful for review. +This <jump href="secureweb.html">security overview document</jump> goes beyond the scope of +XSLT transformations and asks many pertinent security based questions. +</p> +</s2> + +<anchor name="getstarted"/> +<s2 title="Getting Started"> + +<p>The source code and documentation are delivered in separate packages. +Binary packages comprise the compiled libraries, the Xalan command line utility, and the C/C++ header files. +The documentation package contains the pre-built documentation. +The source package contains the sources to build everything. +</p> +<p>The current Xalan-C/C++ Version 1.11 is compatible with the stable releases of +<jump href="http://xerces.apache.org/xerces-c">Xerces-C/C++</jump> Version 3.0 and newer. The current stable release for Xerces-C/C++ is 3.1.1. +</p> +<p>The previous Xalan-C/C++ Version 1.10 works with Xerces-C/C++ Versions 2.7.0 and 2.8.0. +</p> +<p>If you are having problems using the product, +send your comments to the <jump href="mailto:[email protected]">xalan-c-users</jump> mail list. +</p> +<p>If you think a change needs to be made or have suggestions for future releases, +send your comments to the <jump href="mailto:[email protected]">xalan-dev</jump> mail list. +</p> +<p>Binary releases are not yet available. +We would like to distribute Xalan-C/C++ Version 1.11 binary releases +using the same platforms specified for the compatible Xerces-C binary packages. +</p> +</s2> + +<anchor name="getWhatNeeded"/> +<s2 title="Getting What You Need"> + +<p>What you need depends whether you plan to +build from the sources or download prebuilt packages. +</p> +<p>The development platform used to build the Xalan-C/C++ (XSLT) library +should be the same as the platform used to build the Xerces-C/C++ (XML) parser library. +</p> +<p>Xalan-C/C++ (XSLT) library requires a working Xerces-C/C++ (XML) parser library. +The supported versions of Xerces-C/C++ version 3.0 or newer. Version 3.1.1 +is recommended. +</p> +<p>If you are ambitious and willing to experiment, +you can download the bleeding edge development from the +Apache Software Foundation subversion repositories. +Use your favorite subversion 'svn' utility for download. +</p> +<table> +<tr><td>Xalan-C Repository</td><td>http://svn.apache.org/repos/asf/xalan/c/trunk</td></tr> +<tr><td>Xerces-C Repository</td><td>http://svn.apache.org/repos/asf/xerces/c/trunk</td></tr> +</table> + +<p>The current stable +<jump href="http://xerces.apache.org/xerces-c/download.cgi">Xerces-C/C++ (XML) packages</jump> +are available for download. +</p> +<note>The sources from the Xalan-C repository are current for Version 1.11 +until released packages are available. +You can help us prepare for a Version 1.11 release +by providing packages for your platforms +and let us know of your building issues. +</note><br/> + +<p>The previous version packages can still be downloaded until officially replaced. +</p> +<table> +<tr><td>Xalan-C Version 1.10</td><td><jump +href="http://www.apache.org/dyn/closer.cgi/xml/xalan-c/">Xalan Package Downloads</jump></td></tr> +<tr><td>Xerces-C Version 2.7</td><td><jump +href="http://www.apache.org/dyn/closer.cgi/xml/xerces-c/">Xerces Package Downloads</jump></td></tr> +</table> + +</s2> +</s1> Added: xalan/c/trunk/xdocs/sources/xalan/install-save.xml URL: http://svn.apache.org/viewvc/xalan/c/trunk/xdocs/sources/xalan/install-save.xml?rev=1350859&view=auto ============================================================================== --- xalan/c/trunk/xdocs/sources/xalan/install-save.xml (added) +++ xalan/c/trunk/xdocs/sources/xalan/install-save.xml Sat Jun 16 04:28:14 2012 @@ -0,0 +1,75 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE s1 SYSTEM "../../style/dtd/document.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. +--> +<s1 title="Installing &xslt4c;"> +<p>This page is currently being rewritten for Xalan-C/C++ Version 1.11. +The text is inherited from the web pages for Version 1.10.</p> +<s2 title="Setting up the path/library path"> +<ul> + <li><link anchor="windowspath">For Windows</link></li> + <li><link anchor="unixpath">For UNIX</link></li> +</ul> + +<anchor name="windowspath"/> +<s3 title="For Windows"> +<p>To use the Windows binary distribution, you must place the Xalan executables and the Xalan and Xerces libraries on the path:</p> +<ul> + <li>Put &xslt4c-dist;-<my_Windows_distribution>\bin and &xml4c-dist;-<my_Windows_distribution>\bin on the path.</li> +</ul> +<p>The Visual C++ Xalan project included with the Windows release knows the relative paths to the Xalan headers and libraries, but it + does not know where you have unzipped the Xerces distribution. If you plan to use Visual C++ to build Xalan applications or <link + idref="build_instruct" anchor="rebuild">rebuild Xalan</link>, you must also provide Visual C++ with access to the Xerces headers and libraries.</p> +<p>Use the Visual C++ Tools menu to open the Options dialog box, go to the Directories tab, and do the following:</p> +<ul> + <li>Add the path to &xml4c-dist;-<my_Windows_distribution>\include to the list of directories of Include files.</li> + <li>Add the path to &xml4c-dist;-<my_Windows_distribution>\lib to the list of directories of Library files.</li> +</ul> +</s3> + +<anchor name="unixpath"/> +<s3 title="For UNIX"> +<p>To use one of the UNIX binary distributions, you must place the &xslt4c; executable on the path, and the &xslt4c; and &xml4c; + libraries on the library path.</p> +<p>For the &xslt4c; AIX distributions:</p> +<ul> + <li>Put &xslt4c-dist;-<my_AIX_distribution>/bin on the path (PATH).</li> + <li>Put &xslt4c-dist;-<my_AIX_distribution>/lib and &xml4c-dist;-<my_AIX_distribution>/lib on the library path (LIBPATH), + or copy the shared libraries to /usr/lib.</li> +</ul> +<p>For the &xslt4c; HP-UX 11 distributions:</p> +<ul> + <li>Put &xslt4c-dist;-<my_HPUX_distribution>/bin on the path (PATH).<br/><br/></li> + <li>Put &xslt4c-dist;-<my_HPUX_distribution>/lib and &xml4c-dist;-<my_HPUX_distribution>/lib on the library path + (SHLIB_PATH), or copy the shared libraries to /usr/lib.</li> +</ul> +<p>For the &xslt4c; Solaris distributions:</p> +<ul> + <li>Put &xslt4c-dist;-<my_Solaris_distribution>/bin on the path (PATH).<br/><br/></li> + <li>Put &xslt4c-dist;-<my_Solaris_distribution>/lib and &xml4c-dist;-<my_Solaris_distribution>/lib on the library path + (LD_LIBRARY_PATH), or copy the shared libraries to /usr/lib.</li> +</ul> +<p>For the &xslt4c; RedHat and SuSE Linux distributions:</p> +<ul> + <li>Put &xslt4c-dist;-<my_Linux_distribution>/bin on the path (PATH).</li> + <li>Put &xslt4c-dist;-<my_Linux_distribution>/lib and &xml4c-dist;-<my_Linux_distribution>/lib on the library path + (LD_LIBRARY_PATH), or copy the shared libraries to /usr/lib.</li> +</ul> +</s3> +</s2> +</s1> Added: xalan/c/trunk/xdocs/sources/xalan/install.xml URL: http://svn.apache.org/viewvc/xalan/c/trunk/xdocs/sources/xalan/install.xml?rev=1350859&view=auto ============================================================================== --- xalan/c/trunk/xdocs/sources/xalan/install.xml (added) +++ xalan/c/trunk/xdocs/sources/xalan/install.xml Sat Jun 16 04:28:14 2012 @@ -0,0 +1,190 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE s1 SYSTEM "../../style/dtd/document.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. +--> +<s1 title="Installing &xslt4c;"> + +<ul> + <li><link anchor="SourcePkgs">Install Source Packages</link></li> + <li><link anchor="BinaryPkgs">Install Binary Packages</link></li> + <ul> + <li><link anchor="InsWin">Install Windows Packages</link></li> + <li><link anchor="InsUnx">InstallUNIX Packages</link></li> + <li><link anchor="InsPkgs">Other Packages</link></li> + </ul> + <li><link anchor="XalanDocPkg">Install Documentation Packages</link></li> + <ul> + <li><link href="DocWebPkg">Xalan-C User Guide</link></li> + <li><link href="DocApiPkg">Xalan-C API Reference</link></li> + </ul> +</ul> + +<p>A pre-requisite for using the Xalan-C/C++ XSLT library is to + have a working Xerces-C/C++ XML Parser library. Xerces-C/C++ + must be of version 3.0 or newer. Xerces-C/C++ Version 3.1.1 is preferred. +</p> +<p>The Xalan-C/C++ project is providing several types of packages. +</p> +<p>Source packages contain all of the source code to build the + Xalan-C/C++ library, the sample programs, and the documentation. + There are UNIX scripts and Windows project files by which the + library and sample programs can be built. + There are also scripts for building the User Guide web pages and + a Doxygen configuration for building the interactive API Reference. +</p> +<p>Binary packages contain compiled libraries and the Xalan + command line program. The binary packages also contain C/C++ + header files for basic software development. +</p> +<p>Documentation packages contain pre-built directories of web + page html files for the Xalan-C/C++ User Guide and the interactive + API Reference for programmers. +</p> + +<anchor name="SourcePkgs"/> +<s2 title="Install Source Packages"> +<p>We have no package managers for source packages. You just extract + the contents of the distribution <ref>zip</ref> file or <ref>tar</ref> file + into a source directory of your choosing. +</p> +<p>You also need to have the necessary C/C++ compiler tools installed + and a working copy of the Xerces-C/C++ XML parser library. +</p> +<p>Building the + <link idref="builddocs" anchor="buildweb">User Guide</link> + from sources requires a working Xalan command line program. +</p> +<p>Building the interactive + <link idref="builddocs" anchor="buildapi">API Reference</link> + requires a UNIX or Linux system with a current copy of + Doxygen and GraphViz installed. +</p> + +<p>The building of a library from sources results in a directory from which + a binary package can be made. + <link idref="buildlibs" anchor="unixbldenv">UNIX and Linux builds</link> + are automatically targeted to an install destination. + <link idref="buildlibs" anchor="winbldinst">Installing a Windows build</link> + requires that the specific compiled products be copied to a usable + destination directory. +</p> + +</s2> +<anchor name="BinaryPkgs"/> +<s2 title="Install Binary Packages"> +<p>The binary packages distributed by <ref>zip</ref> files + and <ref>tar</ref> files are usually extracted to the install + <code>{target}</code> directory. + After extracting the contents, you then need to manually perform + some minor system configuration. +</p> +<p>Packages that are handled by a package manager are usually + installed and configured according to package maintainer.</p> + +<anchor name="InsWin"/> +<s3 title="Install Windows Packages"> +<p>The Xalan-C and Xerces-C packages can be installed to the same + <code>{target}</code> + directory tree. The debug and release builds have different names + for the shared <code>*.DLL</code> files. +</p> +<p>Windows operating systems require that the <code>{target}\bin</code> + directory be added to the PATH environment. You can make the path + a permanent part of the SYSTEM or user login DESKTOP environment. + The PATH environment variable should contain an entry + where the <code>{target}\bin\*.DLL</code> files are found. +</p> +<ol> + <li>Right-Click on the computer icon.</li> + <li>Select Properties.</li> + <li>Select Advanced System Settings.</li> + <li>Select Environment Variables.</li> + <li>Add the <code>{target}\bin</code> directory to the + system PATH environment variable.</li> +</ol> +<p>The XP, NT, 2000 and 2003 systems allow environment variables to be + set explicitly to individual user accounts. + The Vista, Win-7, and 2008 systems have security administration that + gets in the way of updating individual user environments. +</p> +<p>In a command window or a command environment, you can add the following + shell command to set a temporary path to the XALAN <code>{target}\bin</code> + directory. +</p> +<source>set PATH=%PATH%;{target}\bin</source> + +</s3> +<anchor name="InsUnx"/> +<s3 title="Install UNIX Packages"> + <p>The path to the <code>Xalan</code> command line executable program should be added + to the PATH environment variable.</p> + <p>The path to the shared objects should be added to the system + configuration or overridden by specific entry in an environment + by which shared objects can be found.</p> +<p>Here is some more detailed information on + <link idref="buildlibs" anchor="unixlibpath">UNIX Runtime</link> configuration. +</p> +</s3> +<anchor name="InsPkgs"/> +<s3 title="Install Other Packages"> +<p>These packages are usually installed and configured by a package manager. + You should refer to the documentation provided by the package maintainer. +</p> + +</s3> +</s2> +<anchor name="XalanDocPkg"/> +<s2 title="Install Documentation Packages"> +<p>The documentation packages are distributed as <ref>tar</ref> files + and <ref>zip</ref> files. You just extract the files into a directory + that is reachable by your favorite web browser. The head of the + documentation tree starts at the <link idref="index"> + <code>{docs}/xalan-c</code></link> directory. +</p> +<p><em>TO DO:</em></p> +<p>Rework the xalan/c/trunk/xdocs/sources/ scripts so that the + source documentation builds are + targeted to the xalan/c/trunk/build/docs/xalan-c/ directory path. +</p> +<p>Add a documentation script that performs a post-processing + operation when building the API Reference from Doxygen to relocate + the constructed products to the xalan/c/trunk/build/docs/xalan-c/apiDocs/ + directory path. +</p> +<p>Details are found in our <link idref="builddocs">Build Documents</link> pages. +</p> + +<anchor name="DocWebPkg"/> +<s3 title="Install Xalan-C User Guide"> +<p>Extract the distributed <ref>tar</ref> file or <ref>zip</ref> + file to the <code>{docs}</code> directory. The package populates + the <code>{docs}/xalan-c/*</code> directory containing the Xalan-C + User Guide web pages. +</p> + +</s3> +<anchor name="DocApiPkg"/> +<s3 title="Install Xalan-C API Reference"> +<p>Extract the distributed <ref>tar</ref> file or <ref>zip</ref> + file to the <code>{docs}</code> directory. The package populates + the <code>{docs}/xalan-c/apiDocs/*</code> directory containing the + Xalan-C API Reference for programmers. +</p> +</s3> +</s2> +</s1> Added: xalan/c/trunk/xdocs/sources/xalan/license.xml URL: http://svn.apache.org/viewvc/xalan/c/trunk/xdocs/sources/xalan/license.xml?rev=1350859&view=auto ============================================================================== --- xalan/c/trunk/xdocs/sources/xalan/license.xml (added) +++ xalan/c/trunk/xdocs/sources/xalan/license.xml Sat Jun 16 04:28:14 2012 @@ -0,0 +1,38 @@ +<?xml version="1.0" standalone="no"?> +<!-- + * 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. +--> +<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd" [ +<!ENTITY asflicensetext SYSTEM "License" > +<!ENTITY asfnoticetext SYSTEM "NOTICE" > +]> + +<s1 title="Apache Software License Version 2.0"> +<ul> + <li><jump href="http://www.apache.org/licenses/LICENSE-2.0">Apache Software License Version 2.0</jump></li> + <li><link anchor="notice">Xalan License Notice</link></li> + <li><link anchor="license">Apache Software License Text</link></li> +</ul> +<anchor name="notice"/> +<s2 title="Xalan Software License Notice"> +<source>&asfnoticetext;</source> +</s2> +<anchor name="license"/> +<s2 title="Apache Software License Text"> +<source>&asflicensetext;</source> +</s2> +</s1> \ No newline at end of file Added: xalan/c/trunk/xdocs/sources/xalan/overview.xml URL: http://svn.apache.org/viewvc/xalan/c/trunk/xdocs/sources/xalan/overview.xml?rev=1350859&view=auto ============================================================================== --- xalan/c/trunk/xdocs/sources/xalan/overview.xml (added) +++ xalan/c/trunk/xdocs/sources/xalan/overview.xml Sat Jun 16 04:28:14 2012 @@ -0,0 +1,161 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE s1 SYSTEM "../../style/dtd/document.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. +--> + +<s1 title="&xslt4c; Overview"> +<ul> + <li><link anchor="intro">Introduction</link></li> + <li><link anchor="features">&xslt4c; Features</link></li> + <li><link anchor="towork">Getting to work with &xslt4c;</link></li> + <li><link anchor="uptospeed">Getting up to speed with XSLT</link></li> + <li><link anchor="glossary">Glossary</link></li> +</ul> + +<anchor name="intro"/> +<s2 title="Introduction"> +<p>&xslt4c; (named after a rare musical instrument) implements the <resource-ref idref="XSLT"/> and the + <resource-ref idref="XPath"/>. XSLT is the first part of the XSL stylesheet language for XML. It includes the XSL + Transformation vocabulary and XPath, a language for addressing parts of XML documents. For links to background materials, + discussion groups, frequently asked questions, and tutorials on XSLT, see <link anchor="uptospeed">Getting up to speed with + XSLT</link>.</p> +<note>XSL also includes a vocabulary for formatting documents, which is not part of &xslt4c;. For more information, see + <resource-ref idref="XSL"/> and the <jump href="http://xml.apache.org/fop">Apache XML FOP (Formatting Objects Project) + </jump>. +</note> +<p>You use the XSLT language to compose XSL stylesheets. An XSL stylesheet contains instructions for transforming XML documents + from one document type to another document type (XML, HTML, or other). In structural terms, an XSL stylesheet specifies the + transformation of one tree of nodes (the XML input) into another tree of nodes (the output or transformation result).</p> +<note>The XSL stylesheet may generate and refer to cascading style sheets (<jump href="http://www.w3.org/Style/CSS/">CSS</jump>) + as part of its output. +</note> +<p>In the following example, the foo.xsl stylesheet is used to transform foo.xml into foo.out:</p> +<p>foo.xml:</p> +<source> +<?xml version="1.0"?> +<doc>Hello</doc> +</source> +<p>foo.xsl:</p> +<source> +<?xml version="1.0"?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> +<xsl:template match="doc"> +<out><xsl:value-of select="."/></out> +</xsl:template> +</xsl:stylesheet> +</source> +<p>foo.out:</p> +<source><out>Hello</out></source> + +</s2><anchor name="features"/> +<s2 title="&xslt4c; Features"> +<ul> + <li>&xslt4c; fully implements the <resource-ref idref="XSLT"/>.</li> + <li>&xslt4c; incorporates the <resource-ref idref="XPath"/>.<br/><br/></li> + <li>&xslt4c; uses <jump href="http://xml.apache.org/xerces-c/index.html">&xml4c;</jump> to parse XML documents and XSL + stylesheets.<br/><br/> + The input may appear in the form of a file or URL, a stream, or a <resource-ref idref="DOM"/>. + &xslt4c; performs the transformations specified in the XSL stylesheet and produces a file, a stream, or a DOM as you + specify when you set up the transformation.<br/><br/></li> + <li>Along with a complete API for performing transformations in your C++ applications, &xslt4c; provides a <link + idref="commandline">command line</link> utility for convenient file-to-file transformations.<br/><br/></li> + <li>&xslt4c; supports C++ <link idref="extensions">extension functions</link></li> +</ul> +</s2> + +<anchor name="towork"/> +<s2 title="Getting to work with &xslt4c;"> +<p>For instructions and some suggestions about how to get started using &xslt4c;, see <link idref="download">Downloading &xslt4c;</link>, + <link idref="buildlibs">Building &xslt4c;</link>, and <link idref="install">Installing &xslt4c;</link>.</p> +</s2> + +<anchor name="uptospeed"/> +<s2 title="Getting up to speed with XSLT"> +<p>If you are still working through the details of the XSLT spec (the W3C 1.0 Recommendation), you may want + to consult one or more of the following:</p> + <ul> + <li>Crane Softwright's <jump href="http://www.CraneSoftwrights.com/training/">Free preview of Practical + Transformation Using XSLT and XPath</jump><br/><br/></li> + <li>Doug Tidwell's <jump href="http://www.oreilly.com/catalog/xslt/">XSLT</jump>, O'Reilly, 2001<br/><br/> </li> + <li>Bob DuCharme's <jump href="http://www.manning.com/ducharme/index.html">XSLT Quickly</jump>, Manning Publications, + 2001<br/><br/></li> + <li>John Robert Gardner and Zarella Rendon's + <jump href="http://vig.prenhall.com/catalog/academic/product/1,4096,0130404462,00.html">XSLT and XPath: A Guide to + Transformations</jump>, Prentice-Hall, 2001<br/><br/></li> + + + <li>Elliotte Rusty Harold's <jump href="http://www.ibiblio.org/xml/books/bible2/chapters/ch17.html">Chapter 17 of + the XML Bible: XSL Transformations</jump><br/><br/></li> + <li>The Mulberry <jump href="http://www.mulberrytech.com/xsl/xsl-list/">XSL-List -- Open Forum on XSL</jump> + (of interest to XSL users at all levels)<br/><br/></li> + <li>Objects by Design's <jump href="http://www.objectsbydesign.com/projects/xmi_to_html.html">Transforming XMI to + HTML</jump> (oriented towards XMI, "an XML-based, stream representation of a UML model," but also covers "generic" + XML transformations) and their related <jump href="http://objectsbydesign.com/projects/xslt/xslt_by_example.html">XSLT + by Example</jump><br/><br/></li> + + <li>OASIS (the Organization for the Advancement of Structured Information Standards): + <jump href="http://www.oasis-open.org/cover/xsl.html">Extensible Stylesheet Language (XSL)</jump> by Robin + Cover<br/><br/></li> + <li>Aaron Skonnard and Martin Gudgin's +<jump href="http://www.theserverside.net/tt/books/addisonwesley/EssentialXML/index.tss">Essential +XML Quick Reference:</jump> A Programmer's Reference to +XML, XPath, XSLT, XML Schema, SOAP and More. This reference is published by Addison Wesley, 2003, ISBN/0201740958.<br/><br/></li> + + </ul> +<p>When you come across other useful introductory or background materials, please email <human-resource-ref + idref="xalandev"/>, so we can add them to this list.</p> + +</s2> + +<anchor name="glossary"/> +<s2 title="Glossary"> +<gloss> + <label>XSLT Namespace</label> + <item>The <jump href="http://www.w3.org/TR/REC-xml-names/">XML namespace</jump> for XSLT. An XML namespace is a + collection of element and attribute names, identified by a Unique Resource Identifier (URI), which often takes + the form of a URL, but is really just a unique string, not a pointer to a web page. The XSLT namespace URI is + http://www.w3.org/1999/XSL/Transform. In each XSLT stylesheet, you must declare this namespace in the stylesheet + element tag and bind it to a local prefix. Like the XSLT specification, we always use xsl as the XSLT namespace + prefix in our descriptions and examples, although you are free to bind any prefix to this namespace.<br/><br/></item> + + <label>XSL Instruction</label> + <item>Any tag associated with the XSLT namespace.<br/><br/></item> + + <label>Template</label> + <item>An element, usually with child elements, that specifies a "rule" or set of instructions to perform when a + particular kind of node is encountered in the source tree.<br/><br/></item> + + <label>XSL Template Instruction</label> + <item>Any tag that occurs inside an xsl:template element and is associated with the XSLT namespace.<br/><br/></item> + + <label>Source Tree</label> + <item>The XML tree input to the XSL process.<br/><br/></item> + + <label>Result Tree</label> + <item>The tree that is output by the XSL process.<br/><br/></item> + + <label>Match Pattern</label> + <item>The part of a template that defines the kind(s) of nodes to which the template applies.<br/><br/></item> + +</gloss> +<p>For more definitions of XSLT terminology, see Dave Pawson's <jump href="http://www.dpawson.co.uk/xsl/xslvocab.html">XSLT + Terminology Clarification</jump> and the Glossary in Michael Kay's + <jump href="http://www.wrox.com/Consumer/Store/Details.asp?ISBN=1861003129">XSLT Programmer's Reference</jump>.</p> +</s2> +</s1> Added: xalan/c/trunk/xdocs/sources/xalan/programming.xml URL: http://svn.apache.org/viewvc/xalan/c/trunk/xdocs/sources/xalan/programming.xml?rev=1350859&view=auto ============================================================================== --- xalan/c/trunk/xdocs/sources/xalan/programming.xml (added) +++ xalan/c/trunk/xdocs/sources/xalan/programming.xml Sat Jun 16 04:28:14 2012 @@ -0,0 +1,93 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE s1 SYSTEM "../../style/dtd/document.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. +--> +<s1 title="Programming Tips"> + <ul> + <li><link anchor="intro">Introduction</link></li> + <li><link anchor="memory">Pluggable Memory Management</link></li> + <li><link anchor="more">More topics</link></li> + </ul> + +<anchor name="intro"/> +<s2 title="Introduction"> +<p>This section was created to guide users on how to use some of the new features going into the Xalan +source code base. Some of the features discussed in this section are based on feedback and questions +posted on the xalan-c-users newsgroup. This section will cover the benefits of certain features +and provide users with programming hints on how to utilize the features in their applications.</p> +</s2> + +<anchor name="memory"/> +<s2 title="Pluggable Memory Management"> +<p>Pluggable memory management was added as a new feature in Xalan-C Version 1.8;. This feature introduces an +object called MemoryManager which allows applications with stricter memory management requirements to +utilize a more efficient allocation method. This MemoryManager object can be applied to +each processor instance, thus recovery procedures from memory leaks or processor crashes will be applied to +the associated instance only.</p> +<p>The memory management model is similar to the memory management feature provided by the Xerces-C XML Parser.</p> +<s3 title="How To Use This Feature"> +<p>To apply memory management to your application, the MemoryManager object needs to be specified in two +stages:</p> +<ul> +<li>At initialization phase. The purpose of specifying a MemoryManager object during initialization is to +create a separate memory manager for the overall application. Example of how this can be done is shown in +the example below<br/><br/> +<source> +// Initialization step +static void XalanTransformer::initialize(MemoryManager* initMemoryManager=0); +</source> +</li> +<li>Creation of a transformer instance. This creates a unique memory manager for the instance of the +processor. This step is optional. If no memory manager is provided, the global heap is used as the memory +source. Example of this is shown below:<br/><br/> +<source> +// Create instance of XalanTransformer +MemoryManager memMgrA; // memory manager object +XalanTransformer transformerA(&memMgrA); + +MemoryManager memMgrB; +XalanTransformer transformerB(&memMgrB); +XalanTransformer transformerC(&memMgrB); // Uses same memory manager object as transformerB +XalanTransformer transformerD; // Uses default static memory manager +</source> +</li> +</ul> +<p>The above method demonstrates how users can apply the basic pluggable memory management feature. Users +also have the option of implementing their own memory manager. This can be done by simply writing methods +for:</p> +<source> +// Method for allocating memory +void* allocate(size_t size); +</source> +<p>and</p> +<source> +// Method for deallocating memory +void deallocate(void *p); +</source> +<p>For an example of how to use this feature, please see the <link idref="samples" anchor="simpletransform"> +SimpleTransform</link> sample that has been provided in the binary distributions.</p> +</s3> +</s2> + +<anchor name="more"/> +<s2 title="More Topics"> +<p>Please feel free to give us feedback on what topics you would like to see.</p> +<p>Send comments to <human-resource-ref idref="xalandev"/>.</p> + +</s2> +</s1>