xalan-j/xsltc/xsl_comment_design.html (184 lines of code) (raw):

<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <title>ASF: &lt;xsl:comment&gt; / &lt;xsl:message&gt;</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <link rel="stylesheet" type="text/css" href="resources/apache-xalan.css" /> </head> <!-- * 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. --> <body> <div id="title"> <table class="HdrTitle"> <tbody> <tr> <th rowspan="2"> <a href="../index.html"> <img alt="Trademark Logo" src="resources/XalanJ-Logo-tm.png" width="190" height="90" /> </a> </th> <th text-align="center" width="75%"> <a href="index.html">XSLTC Design</a> </th> </tr> <tr> <td valign="middle">&lt;xsl:comment&gt; / &lt;xsl:message&gt;</td> </tr> </tbody> </table> <table class="HdrButtons" align="center" border="1"> <tbody> <tr> <td> <a href="http://www.apache.org">Apache Foundation</a> </td> <td> <a href="http://xalan.apache.org">Xalan Project</a> </td> <td> <a href="http://xerces.apache.org">Xerces Project</a> </td> <td> <a href="http://www.w3.org/TR">Web Consortium</a> </td> <td> <a href="http://www.oasis-open.org/standards">Oasis Open</a> </td> </tr> </tbody> </table> </div> <div id="navLeft"> <ul> <li> <a href="index.html">Overview</a> </li></ul><hr /><ul> <li> <a href="xsltc_compiler.html">Compiler design</a> </li></ul><hr /><ul> <li> <a href="xsl_whitespace_design.html">Whitespace</a> </li> <li> <a href="xsl_sort_design.html">xsl:sort</a> </li> <li> <a href="xsl_key_design.html">Keys</a> </li> <li>Comment design<br /> </li></ul><hr /><ul> <li> <a href="xsl_lang_design.html">lang()</a> </li> <li> <a href="xsl_unparsed_design.html">Unparsed entities</a> </li></ul><hr /><ul> <li> <a href="xsl_if_design.html">If design</a> </li> <li> <a href="xsl_choose_design.html">Choose|When|Otherwise design</a> </li> <li> <a href="xsl_include_design.html">Include|Import design</a> </li> <li> <a href="xsl_variable_design.html">Variable|Param design</a> </li></ul><hr /><ul> <li> <a href="xsltc_runtime.html">Runtime</a> </li></ul><hr /><ul> <li> <a href="xsltc_dom.html">Internal DOM</a> </li> <li> <a href="xsltc_namespace.html">Namespaces</a> </li></ul><hr /><ul> <li> <a href="xsltc_trax.html">Translet &amp; TrAX</a> </li> <li> <a href="xsltc_predicates.html">XPath Predicates</a> </li> <li> <a href="xsltc_iterators.html">Xsltc Iterators</a> </li> <li> <a href="xsltc_native_api.html">Xsltc Native API</a> </li> <li> <a href="xsltc_trax_api.html">Xsltc TrAX API</a> </li> <li> <a href="xsltc_performance.html">Performance Hints</a> </li> </ul> </div> <div id="content"> <h2>&lt;xsl:comment&gt; / &lt;xsl:message&gt;</h2> <ul> <li> <a href="#functionality">Functionality</a> </li> <li> <a href="#implementation">Implementation</a> </li> </ul> <a name="functionality">‌</a> <p align="right" size="2"> <a href="#content">(top)</a> </p> <h3>Functionality</h3> <p>The <code>&lt;xsl:comment&gt;</code> element is used to insert XML comments into the result document. The comment is inserted as follows in the XSL stylesheet:</p> <blockquote class="source"> <pre> &lt;element&gt; &lt;xsl:comment&gt;This is a comment!&lt;/xsl:comment&gt; &lt;/element&gt;</pre> </blockquote> <p>and it will be output in the result document as follows:</p> <blockquote class="source"> <pre> &lt;element&gt; &lt;!-- This is a comment! --&gt; &lt;/element&gt;</pre> </blockquote> <p>The <code>&lt;xsl:message&gt;</code> element is used to send messages to who/whatever is performing the transformation. The message can be displayed in a terminal, a dialog box, etc. The <code>&lt;xsl:message&gt;</code> element is used in the same way as the <code>&lt;xsl:comment&gt;</code> element, however the message is <b>not</b> output in the result document.</p> <p>The <code>&lt;xsl:message&gt;</code> element has an attribute <code>"terminate"</code> which can be used to terminate the transformation at any given stage. This is useful when using message to give information about illegal values in the input document.</p> <a name="implementation">‌</a> <p align="right" size="2"> <a href="#content">(top)</a> </p> <h3>Implementation</h3> <p>The output handler class has a method for outputting comments in the output document and messages to the operator. The code compiled for a comment gathers all text that goes into the comment in a StringValueHandler object, retrieves the full text string from this handler, and then finally sends it to the output handler. Similarly the code compiled for a message will simply send the message to the output handler in use.</p> <p>Messages will be output to the terminal (stdout) when a transformation is run in a terminal. The message will be output before the beginning of the output document. Messages will be shown in a dialog box if a transformation is run in an applet.</p> <p> <code>&lt;xsl:message&gt;</code> elements that use the <code>"terminate"</code> attribute to abort transformations cause an exception to be thrown. A RuntimeException is used for this, and the exception text is:</p> <p> <code>Termination forced by an xsl:message instruction</code> </p> <p align="right" size="2"> <a href="#content">(top)</a> </p> </div> <div id="footer">Copyright © 1999-2014 The Apache Software Foundation<br />Apache, Xalan, and the Feather logo are trademarks of The Apache Software Foundation<div class="small">Web Page created on - Thu 2014-05-15</div> </div> </body> </html>