You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by sh...@apache.org on 2012/02/26 10:12:49 UTC
svn commit: r1293790 [16/21] - in /xalan/c/branches/XalanDocs: docs/xalan/
docs/xalan/resources/ docs/xalan/xalan-c/ docs/xalan/xalan-c/resources/
docs/xalan/xalan-j/ docs/xalan/xalan-j/design/
docs/xalan/xalan-j/design/resources/ docs/xalan/xalan-j/re...
Modified: xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/index.xml
URL: http://svn.apache.org/viewvc/xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/index.xml?rev=1293790&r1=1293789&r2=1293790&view=diff
==============================================================================
--- xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/index.xml (original)
+++ xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/index.xml Sun Feb 26 09:12:45 2012
@@ -1,298 +1,298 @@
-<?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 % entity-c-values SYSTEM "../entities-c.ent" >
-%entity-c-values; ]>
-
-<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>
-
-<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:xalan-dev@xml.apache.org">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:xalan-c-users@xml.apache.org">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.
-</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 will work with the stable releases of
-<jump href="http://xerces.apache.org/xerces-c">Xerces-C/C++</jump> Version 2.8.0 and Version 3.1.1.
-</p>
-<p>The previous Xalan-C/C++ Version 1.10 works with Xerces-C/C++ Version 2.7.0.
-</p>
-<p>If you are having problems using the product,
-send your comments to the <jump href="mailto:xalan-c-users@xml.apache.org">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:xalan-dev@xml.apache.org">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 (XSLT) library
-should be the same as the platform used to build the Xerces-C (XML) parser library.
-</p>
-<p>Xalan-C (XSLT) library requires a working Xerces-C (XML) parser library.
-The supported versions of Xerces-C are 2.8 and 3.1.1.
-</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 a 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 (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>
+<?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 % entity-c-values SYSTEM "../entities-c.ent" >
+%entity-c-values; ]>
+
+<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>
+
+<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:xalan-dev@xml.apache.org">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:xalan-c-users@xml.apache.org">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.
+</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 will work with the stable releases of
+<jump href="http://xerces.apache.org/xerces-c">Xerces-C/C++</jump> Version 2.8.0 and Version 3.1.1.
+</p>
+<p>The previous Xalan-C/C++ Version 1.10 works with Xerces-C/C++ Version 2.7.0.
+</p>
+<p>If you are having problems using the product,
+send your comments to the <jump href="mailto:xalan-c-users@xml.apache.org">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:xalan-dev@xml.apache.org">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 (XSLT) library
+should be the same as the platform used to build the Xerces-C (XML) parser library.
+</p>
+<p>Xalan-C (XSLT) library requires a working Xerces-C (XML) parser library.
+The supported versions of Xerces-C are 2.8 and 3.1.1.
+</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 a 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 (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>
Modified: xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/install.xml
URL: http://svn.apache.org/viewvc/xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/install.xml?rev=1293790&r1=1293789&r2=1293790&view=diff
==============================================================================
--- xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/install.xml (original)
+++ xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/install.xml Sun Feb 26 09:12:45 2012
@@ -1,76 +1,76 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd"
-[<!ENTITY % entity-c-values SYSTEM "../entities-c.ent" >
-%entity-c-values; ]>
-
-<!--
- * 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;">
-<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>
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd"
+[<!ENTITY % entity-c-values SYSTEM "../entities-c.ent" >
+%entity-c-values; ]>
+
+<!--
+ * 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;">
+<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>
Modified: xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/license.xml
URL: http://svn.apache.org/viewvc/xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/license.xml?rev=1293790&r1=1293789&r2=1293790&view=diff
==============================================================================
--- xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/license.xml (original)
+++ xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/license.xml Sun Feb 26 09:12:45 2012
@@ -1,40 +1,40 @@
-<?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 % entity-c-values SYSTEM "../entities-c.ent" >
-%entity-c-values;
-<!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>
+<?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 % entity-c-values SYSTEM "../entities-c.ent" >
+%entity-c-values;
+<!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
Modified: xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/overview.xml
URL: http://svn.apache.org/viewvc/xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/overview.xml?rev=1293790&r1=1293789&r2=1293790&view=diff
==============================================================================
--- xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/overview.xml (original)
+++ xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/overview.xml Sun Feb 26 09:12:45 2012
@@ -1,175 +1,175 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd"
-[<!ENTITY % entity-c-values SYSTEM "../entities-c.ent" >
-%entity-c-values; ]>
-
-<!--
- * 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="build_instruct">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>XSLT - XSL Transformations in
- <jump href="http://www.brics.dk/~amoeller/XML/">The XML Revolution: Technologies for the future Web</jump> by
- Anders Møller and Michael I. Schwartzbach (Web pages, but designed for sequential reading)</li>
- <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>Michael Kay's <jump href="http://www.wrox.com/Books/Book_Details.asp?ISBN=1861005067">XSLT Programmer's
- Reference</jump>, 2nd ed., Wrox Press, 2001<br/><br/></li>
- <!--
- <li>Steven Holzner's <jump href="http://www.newriders.com/books/title.cfm?isbn=0735711364">Inside XSLT</jump>,
- New Riders, 2001<br/><br/></li>
- -->
- <li>Neil Bradley's <jump href="http://www.aw-bc.com/catalog/academic/product/0,1144,0201770830,00.html">XSL Companion</jump>,
- Addison-Wesley, 2000<br/><br/></li>
- <!--
- <li>Khun Yee Fung's <jump href="http://www.awlonline.com/product/0,2627,0201711036,00.html">XSLT: Working with XML and
- HTML</jump>, Addison-Wesley, 2001<br/><br/></li>
- -->
- <li>Dave Pawson's <resource-ref idref="dpawsonxslfaq"/> to search out particular answers and techniques<br/><br/></li>
- <li>Miloslav Nic's <jump href="http://zvon.vscht.cz/HTMLonly/XSLTutorial/Books/Book1/index.html">XSL Tutorial</jump>,
- a collection of stylesheet examples<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>Donald Ball's <jump href="http://www.webslingerZ.com/balld/xsl/designer_manual.xml">A Guide to XML and XSL for
- Designers</jump><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>
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd"
+[<!ENTITY % entity-c-values SYSTEM "../entities-c.ent" >
+%entity-c-values; ]>
+
+<!--
+ * 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="build_instruct">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>XSLT - XSL Transformations in
+ <jump href="http://www.brics.dk/~amoeller/XML/">The XML Revolution: Technologies for the future Web</jump> by
+ Anders Møller and Michael I. Schwartzbach (Web pages, but designed for sequential reading)</li>
+ <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>Michael Kay's <jump href="http://www.wrox.com/Books/Book_Details.asp?ISBN=1861005067">XSLT Programmer's
+ Reference</jump>, 2nd ed., Wrox Press, 2001<br/><br/></li>
+ <!--
+ <li>Steven Holzner's <jump href="http://www.newriders.com/books/title.cfm?isbn=0735711364">Inside XSLT</jump>,
+ New Riders, 2001<br/><br/></li>
+ -->
+ <li>Neil Bradley's <jump href="http://www.aw-bc.com/catalog/academic/product/0,1144,0201770830,00.html">XSL Companion</jump>,
+ Addison-Wesley, 2000<br/><br/></li>
+ <!--
+ <li>Khun Yee Fung's <jump href="http://www.awlonline.com/product/0,2627,0201711036,00.html">XSLT: Working with XML and
+ HTML</jump>, Addison-Wesley, 2001<br/><br/></li>
+ -->
+ <li>Dave Pawson's <resource-ref idref="dpawsonxslfaq"/> to search out particular answers and techniques<br/><br/></li>
+ <li>Miloslav Nic's <jump href="http://zvon.vscht.cz/HTMLonly/XSLTutorial/Books/Book1/index.html">XSL Tutorial</jump>,
+ a collection of stylesheet examples<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>Donald Ball's <jump href="http://www.webslingerZ.com/balld/xsl/designer_manual.xml">A Guide to XML and XSL for
+ Designers</jump><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>
Modified: xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/programming.xml
URL: http://svn.apache.org/viewvc/xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/programming.xml?rev=1293790&r1=1293789&r2=1293790&view=diff
==============================================================================
--- xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/programming.xml (original)
+++ xalan/c/branches/XalanDocs/xalan/java/trunk/xdocs/sources/xalan-c/programming.xml Sun Feb 26 09:12:45 2012
@@ -1,97 +1,97 @@
-<?xml version="1.0" standalone="no"?>
-<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd"
-[<!ENTITY % entity-c-values SYSTEM "../entities-c.ent" >
-%entity-c-values; ]>
-
-<!--
- * 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 was based on feedback and questions
-posted on the xalan-c-users newsgroup postings. 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 &xslt4c-current;. 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 &xml4c;. For more
-information on the &xml4c; memory management feature, please see <resource-ref idref="xercesmm"/>.</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>
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE s1 SYSTEM "../../style/dtd/document.dtd"
+[<!ENTITY % entity-c-values SYSTEM "../entities-c.ent" >
+%entity-c-values; ]>
+
+<!--
+ * 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 was based on feedback and questions
+posted on the xalan-c-users newsgroup postings. 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 &xslt4c-current;. 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 &xml4c;. For more
+information on the &xml4c; memory management feature, please see <resource-ref idref="xercesmm"/>.</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>
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org