File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / libxml2 / doc / devhelp / html.xsl
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 23:37:59 2012 UTC (12 years, 7 months ago) by misho
Branches: libxml2, MAIN
CVS tags: v2_9_1p0, v2_9_1, v2_8_0p0, v2_8_0, v2_7_8, HEAD
libxml2

    1: <?xml version="1.0"?>
    2: <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
    3: 		xmlns:exsl="http://exslt.org/common"
    4: 		xmlns:str="http://exslt.org/strings"
    5: 		extension-element-prefixes="exsl str"
    6: 		exclude-result-prefixes="exsl str">
    7:   <xsl:output method="xml" encoding="UTF-8" indent="yes"/>
    8: 
    9:   <!-- This is convoluted but needed to force the current document to
   10:        be the API one and not the result tree from the tokenize() result,
   11:        because the keys are only defined on the main document -->
   12:   <xsl:template mode="dumptoken" match='*'>
   13:     <xsl:param name="token"/>
   14:     <xsl:variable name="ref" select="key('symbols', $token)"/>
   15:     <xsl:choose>
   16:       <xsl:when test="$ref">
   17:         <a href="libxml2-{$ref/@file}.html#{$ref/@name}"><xsl:value-of select="$token"/></a>
   18:       </xsl:when>
   19:       <xsl:otherwise>
   20:         <xsl:value-of select="$token"/>
   21:       </xsl:otherwise>
   22:     </xsl:choose>
   23:   </xsl:template>
   24: 
   25:   <!-- dumps a string, making cross-reference links -->
   26:   <xsl:template name="dumptext">
   27:     <xsl:param name="text"/>
   28:     <xsl:variable name="ctxt" select='.'/>
   29:     <!-- <xsl:value-of select="$text"/> -->
   30:     <xsl:for-each select="str:tokenize($text, ' &#9;')">
   31:       <xsl:apply-templates select="$ctxt" mode='dumptoken'>
   32:         <xsl:with-param name="token" select="string(.)"/>
   33:       </xsl:apply-templates>
   34:       <xsl:if test="position() != last()">
   35:         <xsl:text> </xsl:text>
   36:       </xsl:if>
   37:     </xsl:for-each>
   38:   </xsl:template>
   39: 
   40: <!--
   41: 
   42:              The following builds the Synopsis section
   43: 
   44: -->
   45:   <xsl:template mode="synopsis" match="function">
   46:     <xsl:variable name="name" select="string(@name)"/>
   47:     <xsl:variable name="nlen" select="string-length($name)"/>
   48:     <xsl:variable name="tlen" select="string-length(return/@type)"/>
   49:     <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
   50:     <xsl:call-template name="dumptext">
   51:       <xsl:with-param name="text" select="return/@type"/>
   52:     </xsl:call-template>
   53:     <xsl:text>&#9;</xsl:text>
   54:     <a href="#{@name}"><xsl:value-of select="@name"/></a>
   55:     <xsl:if test="$blen - 40 &lt; -8">
   56:       <xsl:text>&#9;</xsl:text>
   57:     </xsl:if>
   58:     <xsl:if test="$blen - 40 &lt; 0">
   59:       <xsl:text>&#9;</xsl:text>
   60:     </xsl:if>
   61:     <xsl:text>&#9;(</xsl:text>
   62:     <xsl:if test="not(arg)">
   63:       <xsl:text>void</xsl:text>
   64:     </xsl:if>
   65:     <xsl:for-each select="arg">
   66:       <xsl:call-template name="dumptext">
   67:         <xsl:with-param name="text" select="@type"/>
   68:       </xsl:call-template>
   69:       <xsl:text> </xsl:text>
   70:       <xsl:value-of select="@name"/>
   71:       <xsl:if test="position() != last()">
   72:         <xsl:text>, </xsl:text><br/>
   73: 	<xsl:if test="$blen - 40 &gt; 8">
   74: 	  <xsl:text>&#9;</xsl:text>
   75: 	</xsl:if>
   76: 	<xsl:if test="$blen - 40 &gt; 0">
   77: 	  <xsl:text>&#9;</xsl:text>
   78: 	</xsl:if>
   79: 	<xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
   80:       </xsl:if>
   81:     </xsl:for-each>
   82:     <xsl:text>);</xsl:text>
   83:     <xsl:text>
   84: </xsl:text>
   85:   </xsl:template>
   86: 
   87:   <xsl:template mode="synopsis" match="functype">
   88:     <xsl:variable name="name" select="string(@name)"/>
   89:     <xsl:variable name="nlen" select="string-length($name)"/>
   90:     <xsl:variable name="tlen" select="string-length(return/@type)"/>
   91:     <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
   92:     <xsl:text>typedef </xsl:text>
   93:     <xsl:call-template name="dumptext">
   94:       <xsl:with-param name="text" select="return/@type"/>
   95:     </xsl:call-template>
   96:     <xsl:text> </xsl:text>
   97:     <a href="#{@name}"><xsl:value-of select="@name"/></a>
   98:     <xsl:if test="$blen - 40 &lt; -8">
   99:       <xsl:text>&#9;</xsl:text>
  100:     </xsl:if>
  101:     <xsl:if test="$blen - 40 &lt; 0">
  102:       <xsl:text>&#9;</xsl:text>
  103:     </xsl:if>
  104:     <xsl:text>&#9;(</xsl:text>
  105:     <xsl:if test="not(arg)">
  106:       <xsl:text>void</xsl:text>
  107:     </xsl:if>
  108:     <xsl:for-each select="arg">
  109:       <xsl:call-template name="dumptext">
  110:         <xsl:with-param name="text" select="@type"/>
  111:       </xsl:call-template>
  112:       <xsl:text> </xsl:text>
  113:       <xsl:value-of select="@name"/>
  114:       <xsl:if test="position() != last()">
  115:         <xsl:text>, </xsl:text><br/>
  116: 	<xsl:if test="$blen - 40 &gt; 8">
  117: 	  <xsl:text>&#9;</xsl:text>
  118: 	</xsl:if>
  119: 	<xsl:if test="$blen - 40 &gt; 0">
  120: 	  <xsl:text>&#9;</xsl:text>
  121: 	</xsl:if>
  122: 	<xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
  123:       </xsl:if>
  124:     </xsl:for-each>
  125:     <xsl:text>);</xsl:text>
  126:     <xsl:text>
  127: </xsl:text>
  128:   </xsl:template>
  129: 
  130:   <xsl:template mode="synopsis" match="exports[@type='function']">
  131:     <xsl:variable name="def" select="key('symbols',@symbol)"/>
  132:     <xsl:apply-templates mode="synopsis" select="$def"/>
  133:   </xsl:template>
  134: 
  135:   <xsl:template mode="synopsis" match="exports[@type='typedef']">
  136:     <xsl:text>typedef </xsl:text>
  137:     <xsl:call-template name="dumptext">
  138:       <xsl:with-param name="text" select="string(key('symbols',@symbol)/@type)"/>
  139:     </xsl:call-template>
  140:     <xsl:text> </xsl:text>
  141:     <a href="#{@symbol}"><xsl:value-of select="@symbol"/></a>
  142:     <xsl:text>;
  143: </xsl:text>
  144:   </xsl:template>
  145: 
  146:   <xsl:template mode="synopsis" match="exports[@type='macro']">
  147:     <xsl:variable name="def" select="key('symbols',@symbol)"/>
  148:     <xsl:text>#define </xsl:text>
  149:     <a href="#{@symbol}"><xsl:value-of select="@symbol"/></a>
  150:     <xsl:if test="$def/arg">
  151:       <xsl:text>(</xsl:text>
  152:       <xsl:for-each select="$def/arg">
  153:         <xsl:value-of select="@name"/>
  154: 	<xsl:if test="position() != last()">
  155: 	  <xsl:text>, </xsl:text>
  156: 	</xsl:if>
  157:       </xsl:for-each>
  158:       <xsl:text>)</xsl:text>
  159:     </xsl:if>
  160:     <xsl:text>;
  161: </xsl:text>
  162:   </xsl:template>
  163:   <xsl:template mode="synopsis" match="exports[@type='enum']">
  164:   </xsl:template>
  165:   <xsl:template mode="synopsis" match="exports[@type='struct']">
  166:   </xsl:template>
  167: 
  168: <!--
  169: 
  170:              The following builds the Details section
  171: 
  172: -->
  173:   <xsl:template mode="details" match="struct">
  174:     <xsl:variable name="name" select="string(@name)"/>
  175:     <div class="refsect2" lang="en">
  176:     <h3><a name="{$name}">Structure </a><xsl:value-of select="$name"/></h3>
  177:     <pre class="programlisting">
  178:     <xsl:value-of select="@type"/><xsl:text> {
  179: </xsl:text>
  180:     <xsl:if test="not(field)">
  181:       <xsl:text>The content of this structure is not made public by the API.
  182: </xsl:text>
  183:     </xsl:if>
  184:     <xsl:for-each select="field">
  185:         <xsl:text>    </xsl:text>
  186: 	<xsl:call-template name="dumptext">
  187: 	  <xsl:with-param name="text" select="@type"/>
  188: 	</xsl:call-template>
  189: 	<xsl:text>&#9;</xsl:text>
  190: 	<xsl:value-of select="@name"/>
  191: 	<xsl:if test="@info != ''">
  192: 	  <xsl:text>&#9;: </xsl:text>
  193: 	  <xsl:call-template name="dumptext">
  194: 	    <xsl:with-param name="text" select="substring(@info, 1, 70)"/>
  195: 	  </xsl:call-template>
  196: 	</xsl:if>
  197: 	<xsl:text>
  198: </xsl:text>
  199:     </xsl:for-each>
  200:     <xsl:text>} </xsl:text>
  201:     <xsl:value-of select="$name"/>
  202:     <xsl:text>;
  203: </xsl:text>
  204:     </pre>
  205:     <p>
  206:     <xsl:call-template name="dumptext">
  207:       <xsl:with-param name="text" select="info"/>
  208:     </xsl:call-template>
  209:     </p><xsl:text>
  210: </xsl:text>
  211:     </div><hr/>
  212:   </xsl:template>
  213: 
  214:   <xsl:template mode="details" match="typedef[@type != 'enum']">
  215:     <xsl:variable name="name" select="string(@name)"/>
  216:     <div class="refsect2" lang="en">
  217:     <h3><a name="{$name}">Typedef </a><xsl:value-of select="$name"/></h3>
  218:     <pre class="programlisting">
  219:     <xsl:call-template name="dumptext">
  220:       <xsl:with-param name="text" select="string(@type)"/>
  221:     </xsl:call-template>
  222:     <xsl:text> </xsl:text>
  223:     <xsl:value-of select="$name"/>
  224:     <xsl:text>;
  225: </xsl:text>
  226:     </pre>
  227:     <p>
  228:     <xsl:call-template name="dumptext">
  229:       <xsl:with-param name="text" select="info"/>
  230:     </xsl:call-template>
  231:     </p><xsl:text>
  232: </xsl:text>
  233:     </div><hr/>
  234:   </xsl:template>
  235: 
  236:   <xsl:template mode="details" match="variable">
  237:     <xsl:variable name="name" select="string(@name)"/>
  238:     <div class="refsect2" lang="en">
  239:     <h3><a name="{$name}">Variable </a><xsl:value-of select="$name"/></h3>
  240:     <pre class="programlisting">
  241:     <xsl:call-template name="dumptext">
  242:       <xsl:with-param name="text" select="string(@type)"/>
  243:     </xsl:call-template>
  244:     <xsl:text> </xsl:text>
  245:     <xsl:value-of select="$name"/>
  246:     <xsl:text>;
  247: </xsl:text>
  248:     </pre>
  249:     <p>
  250:     <xsl:call-template name="dumptext">
  251:       <xsl:with-param name="text" select="info"/>
  252:     </xsl:call-template>
  253:     </p><xsl:text>
  254: </xsl:text>
  255:     </div><hr/>
  256:   </xsl:template>
  257: 
  258:   <xsl:template mode="details" match="typedef[@type = 'enum']">
  259:     <xsl:variable name="name" select="string(@name)"/>
  260:     <div class="refsect2" lang="en">
  261:     <h3><a name="{$name}">Enum </a><xsl:value-of select="$name"/></h3>
  262:     <pre class="programlisting">
  263:     <xsl:text>enum </xsl:text>
  264:     <a href="#{$name}"><xsl:value-of select="$name"/></a>
  265:     <xsl:text> {
  266: </xsl:text>
  267:     <xsl:for-each select="/api/symbols/enum[@type=$name]">
  268:       <xsl:sort select="@value" data-type="number" order="ascending"/>
  269:       <xsl:text>    </xsl:text>
  270:       <a name="{@name}"><xsl:value-of select="@name"/></a>
  271:       <xsl:if test="@value">
  272:         <xsl:text> = </xsl:text>
  273: 	<xsl:value-of select="@value"/>
  274:       </xsl:if>
  275:       <xsl:if test="@info">
  276:         <xsl:text> /* </xsl:text>
  277: 	<xsl:value-of select="@info"/>
  278:         <xsl:text> */</xsl:text>
  279:       </xsl:if>
  280:       <xsl:text>
  281: </xsl:text>
  282:     </xsl:for-each>
  283:     <xsl:text>};
  284: </xsl:text>
  285:     </pre>
  286:     <p>
  287:     <xsl:call-template name="dumptext">
  288:       <xsl:with-param name="text" select="info"/>
  289:     </xsl:call-template>
  290:     </p><xsl:text>
  291: </xsl:text>
  292:     </div><hr/>
  293:   </xsl:template>
  294: 
  295:   <xsl:template mode="details" match="macro">
  296:     <xsl:variable name="name" select="string(@name)"/>
  297:     <div class="refsect2" lang="en">
  298:     <h3><a name="{$name}">Macro </a><xsl:value-of select="$name"/></h3>
  299:     <pre class="programlisting">
  300:     <xsl:text>#define </xsl:text>
  301:     <a href="#{$name}"><xsl:value-of select="$name"/></a>
  302:     <xsl:if test="arg">
  303:       <xsl:text>(</xsl:text>
  304:       <xsl:for-each select="arg">
  305:         <xsl:value-of select="@name"/>
  306: 	<xsl:if test="position() != last()">
  307: 	  <xsl:text>, </xsl:text>
  308: 	</xsl:if>
  309:       </xsl:for-each>
  310:       <xsl:text>)</xsl:text>
  311:     </xsl:if>
  312:     <xsl:text>;
  313: </xsl:text>
  314:     </pre>
  315:     <p>
  316:     <xsl:call-template name="dumptext">
  317:       <xsl:with-param name="text" select="info"/>
  318:     </xsl:call-template>
  319:     </p>
  320:     <xsl:if test="arg">
  321:       <div class="variablelist"><table border="0"><col align="left"/><tbody>
  322:       <xsl:for-each select="arg">
  323:         <tr>
  324:           <td><span class="term"><i><tt><xsl:value-of select="@name"/></tt></i>:</span></td>
  325: 	  <td>
  326: 	    <xsl:call-template name="dumptext">
  327: 	      <xsl:with-param name="text" select="@info"/>
  328: 	    </xsl:call-template>
  329: 	  </td>
  330:         </tr>
  331:       </xsl:for-each>
  332:       </tbody></table></div>
  333:     </xsl:if>
  334:     <xsl:text>
  335: </xsl:text>
  336:     </div><hr/>
  337:   </xsl:template>
  338: 
  339:   <xsl:template mode="details" match="function">
  340:     <xsl:variable name="name" select="string(@name)"/>
  341:     <xsl:variable name="nlen" select="string-length($name)"/>
  342:     <xsl:variable name="tlen" select="string-length(return/@type)"/>
  343:     <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
  344:     <div class="refsect2" lang="en">
  345:     <h3><a name="{$name}"></a><xsl:value-of select="$name"/> ()</h3>
  346:     <pre class="programlisting">
  347:     <xsl:call-template name="dumptext">
  348:       <xsl:with-param name="text" select="return/@type"/>
  349:     </xsl:call-template>
  350:     <xsl:text>&#9;</xsl:text>
  351:     <xsl:value-of select="@name"/>
  352:     <xsl:if test="$blen - 40 &lt; -8">
  353:       <xsl:text>&#9;</xsl:text>
  354:     </xsl:if>
  355:     <xsl:if test="$blen - 40 &lt; 0">
  356:       <xsl:text>&#9;</xsl:text>
  357:     </xsl:if>
  358:     <xsl:text>&#9;(</xsl:text>
  359:     <xsl:if test="not(arg)">
  360:       <xsl:text>void</xsl:text>
  361:     </xsl:if>
  362:     <xsl:for-each select="arg">
  363:       <xsl:call-template name="dumptext">
  364:         <xsl:with-param name="text" select="@type"/>
  365:       </xsl:call-template>
  366:       <xsl:text> </xsl:text>
  367:       <xsl:value-of select="@name"/>
  368:       <xsl:if test="position() != last()">
  369:         <xsl:text>, </xsl:text><br/>
  370: 	<xsl:if test="$blen - 40 &gt; 8">
  371: 	  <xsl:text>&#9;</xsl:text>
  372: 	</xsl:if>
  373: 	<xsl:if test="$blen - 40 &gt; 0">
  374: 	  <xsl:text>&#9;</xsl:text>
  375: 	</xsl:if>
  376: 	<xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
  377:       </xsl:if>
  378:     </xsl:for-each>
  379:     <xsl:text>)</xsl:text><br/>
  380:     <xsl:text>
  381: </xsl:text>
  382:     </pre>
  383:     <p>
  384:     <xsl:call-template name="dumptext">
  385:       <xsl:with-param name="text" select="info"/>
  386:     </xsl:call-template>
  387:     </p><xsl:text>
  388: </xsl:text>
  389:     <xsl:if test="arg | return/@info">
  390:       <div class="variablelist"><table border="0"><col align="left"/><tbody>
  391:       <xsl:for-each select="arg">
  392:         <tr>
  393:           <td><span class="term"><i><tt><xsl:value-of select="@name"/></tt></i>:</span></td>
  394: 	  <td>
  395: 	    <xsl:call-template name="dumptext">
  396: 	      <xsl:with-param name="text" select="@info"/>
  397: 	    </xsl:call-template>
  398: 	  </td>
  399:         </tr>
  400:       </xsl:for-each>
  401:       <xsl:if test="return/@info">
  402:         <tr>
  403:           <td><span class="term"><i><tt>Returns</tt></i>:</span></td>
  404: 	  <td>
  405: 	    <xsl:call-template name="dumptext">
  406: 	      <xsl:with-param name="text" select="return/@info"/>
  407: 	    </xsl:call-template>
  408: 	  </td>
  409:         </tr>
  410:       </xsl:if>
  411:       </tbody></table></div>
  412:     </xsl:if>
  413:     </div><hr/>
  414:   </xsl:template>
  415: 
  416:   <xsl:template mode="details" match="functype">
  417:     <xsl:variable name="name" select="string(@name)"/>
  418:     <xsl:variable name="nlen" select="string-length($name)"/>
  419:     <xsl:variable name="tlen" select="string-length(return/@type)"/>
  420:     <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
  421:     <div class="refsect2" lang="en">
  422:     <h3><a name="{$name}"></a>Function type <xsl:value-of select="$name"/> </h3>
  423:     <pre class="programlisting">
  424:     <xsl:call-template name="dumptext">
  425:       <xsl:with-param name="text" select="return/@type"/>
  426:     </xsl:call-template>
  427:     <xsl:text>&#9;</xsl:text>
  428:     <xsl:value-of select="@name"/>
  429:     <xsl:if test="$blen - 40 &lt; -8">
  430:       <xsl:text>&#9;</xsl:text>
  431:     </xsl:if>
  432:     <xsl:if test="$blen - 40 &lt; 0">
  433:       <xsl:text>&#9;</xsl:text>
  434:     </xsl:if>
  435:     <xsl:text>&#9;(</xsl:text>
  436:     <xsl:if test="not(arg)">
  437:       <xsl:text>void</xsl:text>
  438:     </xsl:if>
  439:     <xsl:for-each select="arg">
  440:       <xsl:call-template name="dumptext">
  441:         <xsl:with-param name="text" select="@type"/>
  442:       </xsl:call-template>
  443:       <xsl:text> </xsl:text>
  444:       <xsl:value-of select="@name"/>
  445:       <xsl:if test="position() != last()">
  446:         <xsl:text>, </xsl:text><br/>
  447: 	<xsl:if test="$blen - 40 &gt; 8">
  448: 	  <xsl:text>&#9;</xsl:text>
  449: 	</xsl:if>
  450: 	<xsl:if test="$blen - 40 &gt; 0">
  451: 	  <xsl:text>&#9;</xsl:text>
  452: 	</xsl:if>
  453: 	<xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
  454:       </xsl:if>
  455:     </xsl:for-each>
  456:     <xsl:text>)</xsl:text><br/>
  457:     <xsl:text>
  458: </xsl:text>
  459:     </pre>
  460:     <p>
  461:     <xsl:call-template name="dumptext">
  462:       <xsl:with-param name="text" select="info"/>
  463:     </xsl:call-template>
  464:     </p><xsl:text>
  465: </xsl:text>
  466:     <xsl:if test="arg | return/@info">
  467:       <div class="variablelist"><table border="0"><col align="left"/><tbody>
  468:       <xsl:for-each select="arg">
  469:         <tr>
  470:           <td><span class="term"><i><tt><xsl:value-of select="@name"/></tt></i>:</span></td>
  471: 	  <td>
  472: 	    <xsl:call-template name="dumptext">
  473: 	      <xsl:with-param name="text" select="@info"/>
  474: 	    </xsl:call-template>
  475: 	  </td>
  476:         </tr>
  477:       </xsl:for-each>
  478:       <xsl:if test="return/@info">
  479:         <tr>
  480:           <td><span class="term"><i><tt>Returns</tt></i>:</span></td>
  481: 	  <td>
  482: 	    <xsl:call-template name="dumptext">
  483: 	      <xsl:with-param name="text" select="return/@info"/>
  484: 	    </xsl:call-template>
  485: 	  </td>
  486:         </tr>
  487:       </xsl:if>
  488:       </tbody></table></div>
  489:     </xsl:if>
  490:     </div><hr/>
  491:   </xsl:template>
  492: 
  493: <!--
  494: 
  495:              The following builds the general.html page
  496: 
  497: -->
  498:   <xsl:template name="generate_general">
  499:     <xsl:variable name="next" select="string(/api/files/file[position()=1]/@name)"/>
  500:     <xsl:document xmlns="" href="general.html" method="xml" indent="yes" encoding="UTF-8">
  501:       <html>
  502:         <head>
  503: 	  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  504: 	  <title><xsl:value-of select="concat(@name, ': ', summary)"/></title>
  505: 	  <meta name="generator" content="Libxml2 devhelp stylesheet"/>
  506: 	  <link rel="start" href="index.html" title="libxml2 Reference Manual"/>
  507: 	  <link rel="up" href="index.html" title="libxml2 Reference Manual"/>
  508: 	  <link rel="stylesheet" href="style.css" type="text/css"/>
  509: 	  <link rel="chapter" href="index.html" title="libxml2 Reference Manual"/>
  510:         </head>
  511: 	<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
  512: 
  513:           <table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
  514: 	    <tr valign="middle">
  515:               <td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up"/></a></td>
  516:               <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"/></a></td>
  517: 	      <xsl:if test="$next != ''">
  518: 		<td><a accesskey="n" href="libxml2-{$next}.html"><img src="right.png" width="24" height="24" border="0" alt="Next"/></a></td>
  519: 	      </xsl:if>
  520:               <th width="100%" align="center">libxml2 Reference Manual</th>
  521:             </tr>
  522: 	  </table>
  523: 	  <h2><span class="refentrytitle">libxml2 API Modules</span></h2>
  524: 	  <p>
  525: 	  <xsl:for-each select="/api/files/file">
  526: 	    <a href="libxml2-{@name}.html"><xsl:value-of select="@name"/></a> - <xsl:value-of select="summary"/><br/>
  527: 	  </xsl:for-each>
  528: 	  </p>
  529: 	</body>
  530:       </html>
  531:     </xsl:document>
  532:   </xsl:template>
  533: 
  534: <!--
  535: 
  536:              The following builds the index.html page
  537: 
  538: -->
  539:   <xsl:template name="generate_index">
  540:     <xsl:document xmlns="" href="index.html" method="xml" indent="yes" encoding="UTF-8">
  541:       <html>
  542:         <head>
  543: 	  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  544: 	  <title>libxml2 Reference Manual</title>
  545: 	  <meta name="generator" content="Libxml2 devhelp stylesheet"/>
  546: 	  <link rel="stylesheet" href="style.css" type="text/css"/>
  547:         </head>
  548: 	<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
  549: 
  550:           <table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
  551: 	    <tr valign="middle">
  552:               <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"/></a></td>
  553: 	      <td><a accesskey="n" href="general.html"><img src="right.png" width="24" height="24" border="0" alt="Next"/></a></td>
  554:               <th width="100%" align="center">libxml2 Reference Manual</th>
  555:             </tr>
  556: 	  </table>
  557: 	  <h2><span class="refentrytitle">libxml2 Reference Manual</span></h2>
  558: <p>Libxml2 is the XML C parser and toolkit developed for the Gnome project
  559: (but usable outside of the Gnome platform), it is free software available
  560: under the <a href="http://www.opensource.org/licenses/mit-license.html">MIT
  561: License</a>. XML itself is a metalanguage to design markup languages, i.e.
  562: text language where semantic and structure are added to the content using
  563: extra "markup" information enclosed between angle brackets. HTML is the most
  564: well-known markup language. Though the library is written in C <a href="http://xmlsoft.org/python.html">a variety of language bindings</a> make it available in
  565: other environments.</p>
  566: <p>Libxml2 implements a number of existing standards related to markup
  567: languages:</p>
  568: <ul><li>the XML standard: <a href="http://www.w3.org/TR/REC-xml">http://www.w3.org/TR/REC-xml</a></li>
  569: <li>Namespaces in XML: <a href="http://www.w3.org/TR/REC-xml-names/">http://www.w3.org/TR/REC-xml-names/</a></li>
  570: <li>XML Base: <a href="http://www.w3.org/TR/xmlbase/">http://www.w3.org/TR/xmlbase/</a></li>
  571: <li><a href="http://www.cis.ohio-state.edu/rfc/rfc2396.txt">RFC 2396</a> :
  572: Uniform Resource Identifiers <a href="http://www.ietf.org/rfc/rfc2396.txt">http://www.ietf.org/rfc/rfc2396.txt</a></li>
  573: <li>XML Path Language (XPath) 1.0: <a href="http://www.w3.org/TR/xpath">http://www.w3.org/TR/xpath</a></li>
  574: <li>HTML4 parser: <a href="http://www.w3.org/TR/html401/">http://www.w3.org/TR/html401/</a></li>
  575: <li>XML Pointer Language (XPointer) Version 1.0: <a href="http://www.w3.org/TR/xptr">http://www.w3.org/TR/xptr</a></li>
  576: <li>XML Inclusions (XInclude) Version 1.0: <a href="http://www.w3.org/TR/xinclude/">http://www.w3.org/TR/xinclude/</a></li>
  577: <li>ISO-8859-x encodings, as well as <a href="http://www.cis.ohio-state.edu/rfc/rfc2044.txt">rfc2044</a> [UTF-8]
  578: and <a href="http://www.cis.ohio-state.edu/rfc/rfc2781.txt">rfc2781</a>
  579: [UTF-16] Unicode encodings, and more if using iconv support</li>
  580: <li>part of SGML Open Technical Resolution TR9401:1997</li>
  581: <li>XML Catalogs Working Draft 06 August 2001: <a href="http://www.oasis-open.org/committees/entity/spec-2001-08-06.html">http://www.oasis-open.org/committees/entity/spec-2001-08-06.html</a></li>
  582: <li>Canonical XML Version 1.0: <a href="http://www.w3.org/TR/xml-c14n">http://www.w3.org/TR/xml-c14n</a>
  583: and the Exclusive XML Canonicalization CR draft <a href="http://www.w3.org/TR/xml-exc-c14n">http://www.w3.org/TR/xml-exc-c14n</a></li>
  584: <li>Relax NG, ISO/IEC 19757-2:2003, <a href="http://www.oasis-open.org/committees/relax-ng/spec-20011203.html">http://www.oasis-open.org/committees/relax-ng/spec-20011203.html</a></li>
  585: <li>W3C XML Schemas Part 2: Datatypes <a href="http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/">REC 02 May
  586: 2001</a></li>
  587: <li>W3C <a href="http://www.w3.org/TR/xml-id/">xml:id</a> Working Draft 7
  588: April 2004</li>
  589: </ul>
  590: 	  <p> As a result the <a href="general.html">libxml2 API</a> is very
  591: 	      large. If you get lost searching for some specific API use
  592: 	      <a href="http://xmlsoft.org/search.php">the online search
  593: 	      engine</a> hosted on <a href="http://xmlsoft.org/">xmlsoft.org</a>
  594: 	      the libxml2 and libxslt project page. </p>
  595: 	</body>
  596:       </html>
  597:     </xsl:document>
  598:   </xsl:template>
  599: 
  600: </xsl:stylesheet>
  601: 
  602: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>