Annotation of embedaddon/libxml2/doc/site.xsl, revision 1.1
1.1 ! misho 1: <?xml version="1.0"?>
! 2: <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
! 3: <xsl:output method="xml" encoding="UTF-8" indent="yes"
! 4: doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
! 5: doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
! 6:
! 7: <xsl:variable name="href_base" select="''"/>
! 8: <xsl:variable name="menu_name">Main Menu</xsl:variable>
! 9: <!--
! 10: - returns the filename associated to an ID in the original file
! 11: -->
! 12: <xsl:template name="tocfilename">
! 13: <xsl:param name="name" select="string(@href)"/>
! 14: <xsl:choose>
! 15: <xsl:when test="$name = '#Introducti'">
! 16: <xsl:text>intro.html</xsl:text>
! 17: </xsl:when>
! 18: <xsl:when test="$name = '#Documentat'">
! 19: <xsl:text>docs.html</xsl:text>
! 20: </xsl:when>
! 21: <xsl:when test="$name = '#Reporting'">
! 22: <xsl:text>bugs.html</xsl:text>
! 23: </xsl:when>
! 24: <xsl:when test="$name = '#help'">
! 25: <xsl:text>help.html</xsl:text>
! 26: </xsl:when>
! 27: <xsl:when test="$name = '#Help'">
! 28: <xsl:text>help.html</xsl:text>
! 29: </xsl:when>
! 30: <xsl:when test="$name = '#Downloads'">
! 31: <xsl:text>downloads.html</xsl:text>
! 32: </xsl:when>
! 33: <xsl:when test="$name = '#News'">
! 34: <xsl:text>news.html</xsl:text>
! 35: </xsl:when>
! 36: <xsl:when test="$name = '#Contributi'">
! 37: <xsl:text>contribs.html</xsl:text>
! 38: </xsl:when>
! 39: <xsl:when test="$name = '#xsltproc'">
! 40: <xsl:text>xsltproc2.html</xsl:text>
! 41: </xsl:when>
! 42: <xsl:when test="$name = '#API'">
! 43: <xsl:text></xsl:text>
! 44: </xsl:when>
! 45: <xsl:when test="$name = '#XSLT'">
! 46: <xsl:text>XSLT.html</xsl:text>
! 47: </xsl:when>
! 48: <xsl:when test="$name = '#XML'">
! 49: <xsl:text>XMLinfo.html</xsl:text>
! 50: </xsl:when>
! 51: <xsl:when test="$name = '#Validation'">
! 52: <xsl:text>xmldtd.html</xsl:text>
! 53: </xsl:when>
! 54: <xsl:when test="$name = '#tree'">
! 55: <xsl:text></xsl:text>
! 56: </xsl:when>
! 57: <xsl:when test="$name = '#library'">
! 58: <xsl:text></xsl:text>
! 59: </xsl:when>
! 60: <xsl:when test="$name = '#interface'">
! 61: <xsl:text></xsl:text>
! 62: </xsl:when>
! 63: <xsl:when test="$name = '#Example'">
! 64: <xsl:text></xsl:text>
! 65: </xsl:when>
! 66: <xsl:when test="$name = '#Entities'">
! 67: <xsl:text></xsl:text>
! 68: </xsl:when>
! 69: <xsl:when test="$name = '#architecture'">
! 70: <xsl:text></xsl:text>
! 71: </xsl:when>
! 72: <xsl:when test="$name = '#Namespaces'">
! 73: <xsl:text>namespaces.html</xsl:text>
! 74: </xsl:when>
! 75: <xsl:when test="$name = '#DOM'">
! 76: <xsl:text></xsl:text>
! 77: </xsl:when>
! 78: <xsl:when test="$name = '#Catalog'">
! 79: <xsl:text>catalog.html</xsl:text>
! 80: </xsl:when>
! 81: <xsl:when test="$name = '#Upgrading'">
! 82: <xsl:text></xsl:text>
! 83: </xsl:when>
! 84: <xsl:when test="$name = '#Encodings'">
! 85: <xsl:text>encoding.html</xsl:text>
! 86: </xsl:when>
! 87: <xsl:when test="$name = '#IO'">
! 88: <xsl:text></xsl:text>
! 89: </xsl:when>
! 90: <xsl:when test="$name = '#Memory'">
! 91: <xsl:text></xsl:text>
! 92: </xsl:when>
! 93: <xsl:when test="$name = '#Thread'">
! 94: <xsl:text></xsl:text>
! 95: </xsl:when>
! 96: <xsl:when test="$name = '#FAQ'">
! 97: <xsl:text>FAQ.html</xsl:text>
! 98: </xsl:when>
! 99: <xsl:when test="$name = '#Python'">
! 100: <xsl:text></xsl:text>
! 101: </xsl:when>
! 102: <xsl:when test="$name = ''">
! 103: <xsl:text>unknown.html</xsl:text>
! 104: </xsl:when>
! 105: <xsl:otherwise>
! 106: <xsl:value-of select="$name"/>
! 107: </xsl:otherwise>
! 108: </xsl:choose>
! 109: </xsl:template>
! 110: <xsl:template name="docfilename">
! 111: <xsl:param name="name" select="string(@href)"/>
! 112: <xsl:choose>
! 113: <xsl:when test="$name = '#Introducti'">
! 114: <xsl:text></xsl:text>
! 115: </xsl:when>
! 116: <xsl:when test="$name = '#Documentat'">
! 117: <xsl:text></xsl:text>
! 118: </xsl:when>
! 119: <xsl:when test="$name = '#Reporting'">
! 120: <xsl:text></xsl:text>
! 121: </xsl:when>
! 122: <xsl:when test="$name = '#help'">
! 123: <xsl:text></xsl:text>
! 124: </xsl:when>
! 125: <xsl:when test="$name = '#Help'">
! 126: <xsl:text></xsl:text>
! 127: </xsl:when>
! 128: <xsl:when test="$name = '#Downloads'">
! 129: <xsl:text></xsl:text>
! 130: </xsl:when>
! 131: <xsl:when test="$name = '#News'">
! 132: <xsl:text></xsl:text>
! 133: </xsl:when>
! 134: <xsl:when test="$name = '#Contributi'">
! 135: <xsl:text></xsl:text>
! 136: </xsl:when>
! 137: <xsl:when test="$name = '#xsltproc'">
! 138: <xsl:text>xsltproc2.html</xsl:text>
! 139: </xsl:when>
! 140: <xsl:when test="$name = '#API'">
! 141: <xsl:text>API.html</xsl:text>
! 142: </xsl:when>
! 143: <xsl:when test="$name = '#XSLT'">
! 144: <xsl:text>XSLT.html</xsl:text>
! 145: </xsl:when>
! 146: <xsl:when test="$name = '#XML'">
! 147: <xsl:text></xsl:text>
! 148: </xsl:when>
! 149: <xsl:when test="$name = '#Validation'">
! 150: <xsl:text></xsl:text>
! 151: </xsl:when>
! 152: <xsl:when test="$name = '#tree'">
! 153: <xsl:text>tree.html</xsl:text>
! 154: </xsl:when>
! 155: <xsl:when test="$name = '#library'">
! 156: <xsl:text>library.html</xsl:text>
! 157: </xsl:when>
! 158: <xsl:when test="$name = '#interface'">
! 159: <xsl:text>interface.html</xsl:text>
! 160: </xsl:when>
! 161: <xsl:when test="$name = '#Example'">
! 162: <xsl:text>example.html</xsl:text>
! 163: </xsl:when>
! 164: <xsl:when test="$name = '#Entities'">
! 165: <xsl:text>entities.html</xsl:text>
! 166: </xsl:when>
! 167: <xsl:when test="$name = '#architecture'">
! 168: <xsl:text>architecture.html</xsl:text>
! 169: </xsl:when>
! 170: <xsl:when test="$name = '#Namespaces'">
! 171: <xsl:text>namespaces.html</xsl:text>
! 172: </xsl:when>
! 173: <xsl:when test="$name = '#DOM'">
! 174: <xsl:text>DOM.html</xsl:text>
! 175: </xsl:when>
! 176: <xsl:when test="$name = '#Catalog'">
! 177: <xsl:text></xsl:text>
! 178: </xsl:when>
! 179: <xsl:when test="$name = '#Upgrading'">
! 180: <xsl:text>upgrade.html</xsl:text>
! 181: </xsl:when>
! 182: <xsl:when test="$name = '#Encodings'">
! 183: <xsl:text></xsl:text>
! 184: </xsl:when>
! 185: <xsl:when test="$name = '#IO'">
! 186: <xsl:text>xmlio.html</xsl:text>
! 187: </xsl:when>
! 188: <xsl:when test="$name = '#Memory'">
! 189: <xsl:text>xmlmem.html</xsl:text>
! 190: </xsl:when>
! 191: <xsl:when test="$name = '#Thread'">
! 192: <xsl:text>threads.html</xsl:text>
! 193: </xsl:when>
! 194: <xsl:when test="$name = '#FAQ'">
! 195: <xsl:text></xsl:text>
! 196: </xsl:when>
! 197: <xsl:when test="$name = '#Python'">
! 198: <xsl:text>python.html</xsl:text>
! 199: </xsl:when>
! 200: <xsl:when test="$name = ''">
! 201: <xsl:text>unknown.html</xsl:text>
! 202: </xsl:when>
! 203: <xsl:otherwise>
! 204: <xsl:value-of select="$name"/>
! 205: </xsl:otherwise>
! 206: </xsl:choose>
! 207: </xsl:template>
! 208: <xsl:template name="filename">
! 209: <xsl:param name="name" select="string(@href)"/>
! 210: <xsl:choose>
! 211: <xsl:when test="$name = '#Introducti'">
! 212: <xsl:text>intro.html</xsl:text>
! 213: </xsl:when>
! 214: <xsl:when test="$name = '#Documentat'">
! 215: <xsl:text>docs.html</xsl:text>
! 216: </xsl:when>
! 217: <xsl:when test="$name = '#Reporting'">
! 218: <xsl:text>bugs.html</xsl:text>
! 219: </xsl:when>
! 220: <xsl:when test="$name = '#help'">
! 221: <xsl:text>help.html</xsl:text>
! 222: </xsl:when>
! 223: <xsl:when test="$name = '#Help'">
! 224: <xsl:text>help.html</xsl:text>
! 225: </xsl:when>
! 226: <xsl:when test="$name = '#Downloads'">
! 227: <xsl:text>downloads.html</xsl:text>
! 228: </xsl:when>
! 229: <xsl:when test="$name = '#News'">
! 230: <xsl:text>news.html</xsl:text>
! 231: </xsl:when>
! 232: <xsl:when test="$name = '#Contributi'">
! 233: <xsl:text>contribs.html</xsl:text>
! 234: </xsl:when>
! 235: <xsl:when test="$name = '#xsltproc'">
! 236: <xsl:text>xsltproc2.html</xsl:text>
! 237: </xsl:when>
! 238: <xsl:when test="$name = '#API'">
! 239: <xsl:text>API.html</xsl:text>
! 240: </xsl:when>
! 241: <xsl:when test="$name = '#XSLT'">
! 242: <xsl:text>XSLT.html</xsl:text>
! 243: </xsl:when>
! 244: <xsl:when test="$name = '#XML'">
! 245: <xsl:text>XMLinfo.html</xsl:text>
! 246: </xsl:when>
! 247: <xsl:when test="$name = '#Validation'">
! 248: <xsl:text>xmldtd.html</xsl:text>
! 249: </xsl:when>
! 250: <xsl:when test="$name = '#tree'">
! 251: <xsl:text>tree.html</xsl:text>
! 252: </xsl:when>
! 253: <xsl:when test="$name = '#library'">
! 254: <xsl:text>library.html</xsl:text>
! 255: </xsl:when>
! 256: <xsl:when test="$name = '#interface'">
! 257: <xsl:text>interface.html</xsl:text>
! 258: </xsl:when>
! 259: <xsl:when test="$name = '#Example'">
! 260: <xsl:text>example.html</xsl:text>
! 261: </xsl:when>
! 262: <xsl:when test="$name = '#Entities'">
! 263: <xsl:text>entities.html</xsl:text>
! 264: </xsl:when>
! 265: <xsl:when test="$name = '#architecture'">
! 266: <xsl:text>architecture.html</xsl:text>
! 267: </xsl:when>
! 268: <xsl:when test="$name = '#Namespaces'">
! 269: <xsl:text>namespaces.html</xsl:text>
! 270: </xsl:when>
! 271: <xsl:when test="$name = '#DOM'">
! 272: <xsl:text>DOM.html</xsl:text>
! 273: </xsl:when>
! 274: <xsl:when test="$name = '#Catalog'">
! 275: <xsl:text>catalog.html</xsl:text>
! 276: </xsl:when>
! 277: <xsl:when test="$name = '#Upgrading'">
! 278: <xsl:text>upgrade.html</xsl:text>
! 279: </xsl:when>
! 280: <xsl:when test="$name = '#Encodings'">
! 281: <xsl:text>encoding.html</xsl:text>
! 282: </xsl:when>
! 283: <xsl:when test="$name = '#IO'">
! 284: <xsl:text>xmlio.html</xsl:text>
! 285: </xsl:when>
! 286: <xsl:when test="$name = '#Memory'">
! 287: <xsl:text>xmlmem.html</xsl:text>
! 288: </xsl:when>
! 289: <xsl:when test="$name = '#Thread'">
! 290: <xsl:text>threads.html</xsl:text>
! 291: </xsl:when>
! 292: <xsl:when test="$name = '#FAQ'">
! 293: <xsl:text>FAQ.html</xsl:text>
! 294: </xsl:when>
! 295: <xsl:when test="$name = '#Python'">
! 296: <xsl:text>python.html</xsl:text>
! 297: </xsl:when>
! 298: <xsl:when test="$name = ''">
! 299: <xsl:text>unknown.html</xsl:text>
! 300: </xsl:when>
! 301: <xsl:otherwise>
! 302: <xsl:value-of select="$name"/>
! 303: </xsl:otherwise>
! 304: </xsl:choose>
! 305: </xsl:template>
! 306: <!--
! 307: - The global title
! 308: -->
! 309: <xsl:variable name="globaltitle" select="string(/html/body/h1[1])"/>
! 310: <!--
! 311: - The table of content
! 312: -->
! 313: <xsl:variable name="toc">
! 314: <form action="search.php"
! 315: enctype="application/x-www-form-urlencoded" method="get">
! 316: <input name="query" type="text" size="20" value=""/>
! 317: <input name="submit" type="submit" value="Search ..."/>
! 318: </form>
! 319: <ul><!-- style="margin-left: -1em" -->
! 320: <li><a href="index.html">Home</a></li>
! 321: <!--<li><a href="http://xmlsoft.org/wiki">Wiki</a></li> -->
! 322: <li><a href="html/index.html">Reference Manual</a></li>
! 323: <xsl:for-each select="/html/body/h2">
! 324: <xsl:variable name="filename">
! 325: <xsl:call-template name="tocfilename">
! 326: <xsl:with-param name="name" select="concat('#', string(a[1]/@name))"/>
! 327: </xsl:call-template>
! 328: </xsl:variable>
! 329: <xsl:if test="$filename != ''">
! 330: <li>
! 331: <xsl:element name="a">
! 332: <xsl:attribute name="href">
! 333: <xsl:value-of select="$filename"/>
! 334: </xsl:attribute>
! 335: <xsl:if test="$filename = 'docs.html'">
! 336: <xsl:attribute name="style">font-weight:bold</xsl:attribute>
! 337: </xsl:if>
! 338: <xsl:value-of select="."/>
! 339: </xsl:element>
! 340: </li>
! 341: </xsl:if>
! 342: </xsl:for-each>
! 343: <li><a href="examples/index.html" style="font-weight:bold">Code Examples</a></li>
! 344: <li><a href="html/index.html" style="font-weight:bold">API Menu</a></li>
! 345: <li><a href="guidelines.html">XML Guidelines</a></li>
! 346: <li><a href="ChangeLog.html">Recent Changes</a></li>
! 347: </ul>
! 348: </xsl:variable>
! 349: <xsl:variable name="develtoc">
! 350: <form action="search.php"
! 351: enctype="application/x-www-form-urlencoded" method="get">
! 352: <input name="query" type="text" size="20" value=""/>
! 353: <input name="submit" type="submit" value="Search ..."/>
! 354: </form>
! 355: <ul><!-- style="margin-left: -1em" -->
! 356: <li><a href="index.html" style="font-weight:bold">Main Menu</a></li>
! 357: <li><a href="html/index.html" style="font-weight:bold">Reference Manual</a></li>
! 358: <li><a href="examples/index.html" style="font-weight:bold">Code Examples</a></li>
! 359: <li><a href="guidelines.html">XML Guidelines</a></li>
! 360: <li><a href="tutorial/index.html">Tutorial</a></li>
! 361: <li><a href="xmlreader.html">The Reader Interface</a></li>
! 362: <li><a href="ChangeLog.html">ChangeLog</a></li>
! 363: <xsl:for-each select="/html/body/h2">
! 364: <xsl:variable name="filename">
! 365: <xsl:call-template name="docfilename">
! 366: <xsl:with-param name="name" select="concat('#', string(a[1]/@name))"/>
! 367: </xsl:call-template>
! 368: </xsl:variable>
! 369: <xsl:if test="$filename != ''">
! 370: <li>
! 371: <xsl:element name="a">
! 372: <xsl:attribute name="href">
! 373: <xsl:value-of select="$filename"/>
! 374: </xsl:attribute>
! 375: <xsl:value-of select="."/>
! 376: </xsl:element>
! 377: </li>
! 378: </xsl:if>
! 379: </xsl:for-each>
! 380: <li><a href="xml.html">flat page</a>, <a href="site.xsl">stylesheet</a></li>
! 381: </ul>
! 382: </xsl:variable>
! 383: <xsl:variable name="api">
! 384: <ul><!-- style="margin-left: -1em" -->
! 385: <li><a href="{$href_base}APIchunk0.html">Alphabetic</a></li>
! 386: <li><a href="{$href_base}APIconstructors.html">Constructors</a></li>
! 387: <li><a href="{$href_base}APIfunctions.html">Functions/Types</a></li>
! 388: <li><a href="{$href_base}APIfiles.html">Modules</a></li>
! 389: <li><a href="{$href_base}APIsymbols.html">Symbols</a></li>
! 390: </ul>
! 391: </xsl:variable>
! 392: <xsl:variable name="related">
! 393: <ul><!-- style="margin-left: -1em" -->
! 394: <li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li>
! 395: <li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li>
! 396: <li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li>
! 397: <li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li>
! 398: <li><a href="ftp://xmlsoft.org/">FTP</a></li>
! 399: <li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li>
! 400: <li><a href="http://opencsw.org/packages/libxml2">Solaris binaries</a></li>
! 401: <li><a href="http://www.explain.com.au/oss/libxml2xslt.html">MacOsX binaries</a></li>
! 402: <li><a href="http://codespeak.net/lxml/">lxml Python bindings</a></li>
! 403: <li><a href="http://cpan.uwinnipeg.ca/dist/XML-LibXML">Perl bindings</a></li>
! 404: <li><a href="http://libxmlplusplus.sourceforge.net/">C++ bindings</a></li>
! 405: <li><a href="http://www.zend.com/php5/articles/php5-xmlphp.php#Heading4">PHP bindings</a></li>
! 406: <li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li>
! 407: <li><a href="http://libxml.rubyforge.org/">Ruby bindings</a></li>
! 408: <li><a href="http://tclxml.sourceforge.net/">Tcl bindings</a></li>
! 409: <li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li>
! 410: </ul>
! 411: </xsl:variable>
! 412: <xsl:template name="toc">
! 413: <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000">
! 414: <tr>
! 415: <td>
! 416: <table width="100%" border="0" cellspacing="1" cellpadding="3">
! 417: <tr>
! 418: <td colspan="1" bgcolor="#eecfa1" align="center">
! 419: <center>
! 420: <b><xsl:value-of select="$menu_name"/></b>
! 421: </center>
! 422: </td>
! 423: </tr>
! 424: <tr>
! 425: <td bgcolor="#fffacd">
! 426: <xsl:copy-of select="$toc"/>
! 427: </td>
! 428: </tr>
! 429: </table>
! 430: <table width="100%" border="0" cellspacing="1" cellpadding="3">
! 431: <tr>
! 432: <td colspan="1" bgcolor="#eecfa1" align="center">
! 433: <center>
! 434: <b>Related links</b>
! 435: </center>
! 436: </td>
! 437: </tr>
! 438: <tr>
! 439: <td bgcolor="#fffacd">
! 440: <xsl:copy-of select="$related"/>
! 441: </td>
! 442: </tr>
! 443: </table>
! 444: </td>
! 445: </tr>
! 446: </table>
! 447: </xsl:template>
! 448: <xsl:template name="develtoc">
! 449: <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000">
! 450: <tr>
! 451: <td>
! 452: <table width="100%" border="0" cellspacing="1" cellpadding="3">
! 453: <tr>
! 454: <td colspan="1" bgcolor="#eecfa1" align="center">
! 455: <center>
! 456: <b>Developer Menu</b>
! 457: </center>
! 458: </td>
! 459: </tr>
! 460: <tr>
! 461: <td bgcolor="#fffacd">
! 462: <xsl:copy-of select="$develtoc"/>
! 463: </td>
! 464: </tr>
! 465: </table>
! 466: <table width="100%" border="0" cellspacing="1" cellpadding="3">
! 467: <tr>
! 468: <td colspan="1" bgcolor="#eecfa1" align="center">
! 469: <center>
! 470: <b>API Indexes</b>
! 471: </center>
! 472: </td>
! 473: </tr>
! 474: <tr>
! 475: <td bgcolor="#fffacd">
! 476: <xsl:copy-of select="$api"/>
! 477: </td>
! 478: </tr>
! 479: </table>
! 480: <table width="100%" border="0" cellspacing="1" cellpadding="3">
! 481: <tr>
! 482: <td colspan="1" bgcolor="#eecfa1" align="center">
! 483: <center>
! 484: <b>Related links</b>
! 485: </center>
! 486: </td>
! 487: </tr>
! 488: <tr>
! 489: <td bgcolor="#fffacd">
! 490: <xsl:copy-of select="$related"/>
! 491: </td>
! 492: </tr>
! 493: </table>
! 494: </td>
! 495: </tr>
! 496: </table>
! 497: </xsl:template>
! 498: <xsl:template mode="head" match="title">
! 499: <title>
! 500: <xsl:apply-templates/>
! 501: </title>
! 502: </xsl:template>
! 503: <xsl:template mode="head" match="meta">
! 504: </xsl:template>
! 505: <!--
! 506: - Write the styles in the head
! 507: -->
! 508: <xsl:template name="style">
! 509: <link rel="SHORTCUT ICON" href="/favicon.ico"/>
! 510: <style type="text/css">
! 511: TD {font-family: Verdana,Arial,Helvetica}
! 512: BODY {font-family: Verdana,Arial,Helvetica; margin-top: 2em; margin-left: 0em; margin-right: 0em}
! 513: H1 {font-family: Verdana,Arial,Helvetica}
! 514: H2 {font-family: Verdana,Arial,Helvetica}
! 515: H3 {font-family: Verdana,Arial,Helvetica}
! 516: A:link, A:visited, A:active { text-decoration: underline }
! 517: </style>
! 518: </xsl:template>
! 519: <!--
! 520: - Write the title box on top
! 521: -->
! 522: <xsl:template name="titlebox">
! 523: <xsl:param name="title" select="'Main Page'"/>
! 524: <table border="0" width="100%" cellpadding="5" cellspacing="0" align="center">
! 525: <tr>
! 526: <td width="120">
! 527: <a href="http://swpat.ffii.org/"><img src="{$href_base}epatents.png" alt="Action against software patents"/></a>
! 528: </td>
! 529: <td width="180">
! 530: <a href="http://www.gnome.org/"><img src="{$href_base}gnome2.png" alt="Gnome2 Logo"/></a>
! 531: <a href="http://www.w3.org/Status"><img src="{$href_base}w3c.png" alt="W3C Logo"/></a>
! 532: <a href="http://www.redhat.com/"><img src="{$href_base}redhat.gif" alt="Red Hat Logo"/></a>
! 533: <div align="left">
! 534: <a href="http://xmlsoft.org/"><img src="{$href_base}Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo"/></a>
! 535: </div>
! 536: </td>
! 537: <td>
! 538: <table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000">
! 539: <tr>
! 540: <td>
! 541: <table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd">
! 542: <tr>
! 543: <td align="center">
! 544: <xsl:element name="h1">
! 545: <xsl:value-of select="$globaltitle"/>
! 546: </xsl:element>
! 547: <xsl:element name="h2">
! 548: <xsl:value-of select="$title"/>
! 549: </xsl:element>
! 550: </td>
! 551: </tr>
! 552: </table>
! 553: </td>
! 554: </tr>
! 555: </table>
! 556: </td>
! 557: </tr>
! 558: </table>
! 559: </xsl:template>
! 560: <!--
! 561: - Handling of nodes in the body before the first H2, table of content
! 562: - Everything is just copied over, except href which may get rewritten
! 563: - and h1/h2/a at the top level
! 564: -->
! 565: <xsl:template priority="2" mode="subcontent" match="a">
! 566: <xsl:variable name="filename">
! 567: <xsl:call-template name="filename">
! 568: <xsl:with-param name="name" select="string(@href)"/>
! 569: </xsl:call-template>
! 570: </xsl:variable>
! 571: <xsl:copy>
! 572: <xsl:attribute name="href">
! 573: <xsl:value-of select="$filename"/>
! 574: </xsl:attribute>
! 575: <xsl:apply-templates mode="subcontent" select="node()"/>
! 576: </xsl:copy>
! 577: </xsl:template>
! 578: <xsl:template mode="subcontent" match="@*|node()">
! 579: <xsl:copy>
! 580: <xsl:apply-templates mode="subcontent" select="@*|node()"/>
! 581: </xsl:copy>
! 582: </xsl:template>
! 583: <xsl:template mode="content" match="@*|node()">
! 584: <xsl:if test="name() != 'h1' and name() != 'h2'">
! 585: <xsl:copy>
! 586: <xsl:apply-templates mode="subcontent" select="@*|node()"/>
! 587: </xsl:copy>
! 588: </xsl:if>
! 589: </xsl:template>
! 590: <!--
! 591: - Handling of nodes in the body after an H2
! 592: - Open a new file and dump all the siblings up to the next H2
! 593: -->
! 594: <xsl:template name="subfile">
! 595: <xsl:param name="header" select="following-sibling::h2[1]"/>
! 596: <xsl:variable name="filename">
! 597: <xsl:call-template name="filename">
! 598: <xsl:with-param name="name" select="concat('#', string($header/a[1]/@name))"/>
! 599: </xsl:call-template>
! 600: </xsl:variable>
! 601: <xsl:variable name="tocfilename">
! 602: <xsl:call-template name="tocfilename">
! 603: <xsl:with-param name="name" select="concat('#', string($header/a[1]/@name))"/>
! 604: </xsl:call-template>
! 605: </xsl:variable>
! 606: <xsl:variable name="title">
! 607: <xsl:value-of select="$header"/>
! 608: </xsl:variable>
! 609: <xsl:document href="{$filename}" method="xml" encoding="UTF-8"
! 610: doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
! 611: doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
! 612: <html>
! 613: <head>
! 614: <xsl:call-template name="style"/>
! 615: <xsl:element name="title">
! 616: <xsl:value-of select="$title"/>
! 617: </xsl:element>
! 618: </head>
! 619: <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000">
! 620: <xsl:call-template name="titlebox">
! 621: <xsl:with-param name="title" select="$title"/>
! 622: </xsl:call-template>
! 623: <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center">
! 624: <tr>
! 625: <td bgcolor="#8b7765">
! 626: <table border="0" cellspacing="0" cellpadding="2" width="100%">
! 627: <tr>
! 628: <td valign="top" width="200" bgcolor="#8b7765">
! 629: <xsl:choose>
! 630: <xsl:when test="$filename = 'docs.html'">
! 631: <xsl:call-template name="develtoc"/>
! 632: </xsl:when>
! 633: <xsl:when test="$tocfilename = ''">
! 634: <xsl:call-template name="develtoc"/>
! 635: </xsl:when>
! 636: <xsl:otherwise>
! 637: <xsl:call-template name="toc"/>
! 638: </xsl:otherwise>
! 639: </xsl:choose>
! 640: </td>
! 641: <td valign="top" bgcolor="#8b7765">
! 642: <table border="0" cellspacing="0" cellpadding="1" width="100%">
! 643: <tr>
! 644: <td>
! 645: <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000">
! 646: <tr>
! 647: <td>
! 648: <table border="0" cellpadding="3" cellspacing="1" width="100%">
! 649: <tr>
! 650: <td bgcolor="#fffacd">
! 651: <xsl:apply-templates mode="subfile" select="$header/following-sibling::*[preceding-sibling::h2[1] = $header and name() != 'h2' ]"/>
! 652: <p><a href="bugs.html">Daniel Veillard</a></p>
! 653: </td>
! 654: </tr>
! 655: </table>
! 656: </td>
! 657: </tr>
! 658: </table>
! 659: </td>
! 660: </tr>
! 661: </table>
! 662: </td>
! 663: </tr>
! 664: </table>
! 665: </td>
! 666: </tr>
! 667: </table>
! 668: </body>
! 669: </html>
! 670: </xsl:document>
! 671: </xsl:template>
! 672: <xsl:template mode="subfile" match="@*|node()">
! 673: <xsl:copy>
! 674: <xsl:apply-templates mode="content" select="@*|node()"/>
! 675: </xsl:copy>
! 676: </xsl:template>
! 677: <!--
! 678: - Handling of the initial body and head HTML document
! 679: -->
! 680: <xsl:template match="body">
! 681: <xsl:variable name="firsth2" select="./h2[1]"/>
! 682: <xsl:variable name="rest2" select="./h2[position()>1]"/>
! 683: <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000">
! 684: <xsl:call-template name="titlebox">
! 685: <xsl:with-param name="title" select="'libxml'"/>
! 686: </xsl:call-template>
! 687: <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center">
! 688: <tr>
! 689: <td bgcolor="#8b7765">
! 690: <table border="0" cellspacing="0" cellpadding="2" width="100%">
! 691: <tr>
! 692: <td valign="top" width="200" bgcolor="#8b7765">
! 693: <xsl:call-template name="toc"/>
! 694: </td>
! 695: <td valign="top" bgcolor="#8b7765">
! 696: <table border="0" cellspacing="0" cellpadding="1" width="100%">
! 697: <tr>
! 698: <td>
! 699: <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000">
! 700: <tr>
! 701: <td>
! 702: <table border="0" cellpadding="3" cellspacing="1" width="100%">
! 703: <tr>
! 704: <td bgcolor="#fffacd">
! 705: <xsl:apply-templates mode="content" select="($firsth2/preceding-sibling::*)"/>
! 706: <xsl:for-each select="./h2">
! 707: <xsl:call-template name="subfile">
! 708: <xsl:with-param name="header" select="."/>
! 709: </xsl:call-template>
! 710: </xsl:for-each>
! 711: <p><a href="bugs.html">Daniel Veillard</a></p>
! 712: </td>
! 713: </tr>
! 714: </table>
! 715: </td>
! 716: </tr>
! 717: </table>
! 718: </td>
! 719: </tr>
! 720: </table>
! 721: </td>
! 722: </tr>
! 723: </table>
! 724: </td>
! 725: </tr>
! 726: </table>
! 727: </body>
! 728: </xsl:template>
! 729: <xsl:template match="head">
! 730: <head>
! 731: <xsl:call-template name="style"/>
! 732: <xsl:apply-templates mode="head"/>
! 733: </head>
! 734: </xsl:template>
! 735: <xsl:template match="html">
! 736: <xsl:message>Generating the Web pages</xsl:message>
! 737: <html>
! 738: <xsl:apply-templates/>
! 739: </html>
! 740: </xsl:template>
! 741: </xsl:stylesheet>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>