Annotation of embedaddon/libxml2/doc/api.xsl, revision 1.1
1.1 ! misho 1: <?xml version="1.0"?>
! 2: <!-- this stylesheet builds the API*.html , it works based on libxml2-refs.xml
! 3: -->
! 4: <xsl:stylesheet version="1.0"
! 5: xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
! 6: xmlns:exsl="http://exslt.org/common"
! 7: extension-element-prefixes="exsl"
! 8: exclude-result-prefixes="exsl">
! 9:
! 10: <!-- Import the rest of the site stylesheets -->
! 11: <xsl:import href="site.xsl"/>
! 12:
! 13: <!-- Generate XHTML-1.0 transitional -->
! 14: <xsl:output method="xml" encoding="UTF-8" indent="yes"
! 15: doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
! 16: doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
! 17:
! 18: <xsl:variable name="href_base" select="''"/>
! 19: <xsl:variable name="apirefs" select="document('libxml2-refs.xml')"/>
! 20: <xsl:variable name="module" select="$apirefs/apirefs/@name"/>
! 21: <xsl:key name="refhref" match="reference" use="@name"/>
! 22:
! 23: <xsl:template match="ref" mode="anchor">
! 24: <xsl:variable name="name" select="@name"/>
! 25: <xsl:for-each select="document('libxml2-refs.xml')">
! 26: <a href="{key('refhref', $name)/@href}"><xsl:value-of select="$name"/></a><br/>
! 27: </xsl:for-each>
! 28: </xsl:template>
! 29: <xsl:template match="type" mode="reflist">
! 30: <h2>Type <xsl:value-of select="@name"/>:</h2>
! 31: <p>
! 32: <xsl:for-each select="ref">
! 33: <xsl:apply-templates mode="anchor" select="."/>
! 34: <xsl:text>
! 35: </xsl:text>
! 36: </xsl:for-each>
! 37: </p>
! 38: </xsl:template>
! 39: <xsl:template match="letter" mode="reflist">
! 40: <h2>Letter <xsl:value-of select="@name"/>:</h2>
! 41: <p>
! 42: <xsl:for-each select="ref">
! 43: <xsl:apply-templates mode="anchor" select="."/>
! 44: <xsl:text>
! 45: </xsl:text>
! 46: </xsl:for-each>
! 47: </p>
! 48: </xsl:template>
! 49: <xsl:template match="file" mode="reflist">
! 50: <h2><a name="{@name}">Module <xsl:value-of select="@name"/></a>:</h2>
! 51: <p>
! 52: <xsl:for-each select="ref">
! 53: <xsl:apply-templates mode="anchor" select="."/>
! 54: <xsl:text>
! 55: </xsl:text>
! 56: </xsl:for-each>
! 57: </p>
! 58: </xsl:template>
! 59: <xsl:template match="letter" mode="wordlist">
! 60: <h2>Letter <xsl:value-of select="@name"/>:</h2>
! 61: <dl>
! 62: <xsl:for-each select="word">
! 63: <dt><xsl:value-of select="@name"/></dt>
! 64: <dd>
! 65: <xsl:for-each select="ref">
! 66: <xsl:apply-templates mode="anchor" select="."/>
! 67: <xsl:text>
! 68: </xsl:text>
! 69: </xsl:for-each>
! 70: </dd>
! 71: </xsl:for-each>
! 72: </dl>
! 73: </xsl:template>
! 74:
! 75: <xsl:template match="constructors">
! 76: <xsl:message>Generating API Constructors</xsl:message>
! 77: <xsl:variable name="title">List of constructors for <xsl:value-of select="$module"/></xsl:variable>
! 78: <xsl:document href="APIconstructors.html" method="xml" encoding="UTF-8"
! 79: doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
! 80: doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
! 81: <html>
! 82: <head>
! 83: <xsl:call-template name="style"/>
! 84: <xsl:element name="title">
! 85: <xsl:value-of select="$title"/>
! 86: </xsl:element>
! 87: </head>
! 88: <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000">
! 89: <xsl:call-template name="titlebox">
! 90: <xsl:with-param name="title" select="$title"/>
! 91: </xsl:call-template>
! 92: <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center">
! 93: <tr>
! 94: <td bgcolor="#8b7765">
! 95: <table border="0" cellspacing="0" cellpadding="2" width="100%">
! 96: <tr>
! 97: <td valign="top" width="200" bgcolor="#8b7765">
! 98: <xsl:call-template name="develtoc"/>
! 99: </td>
! 100: <td valign="top" bgcolor="#8b7765">
! 101: <table border="0" cellspacing="0" cellpadding="1" width="100%">
! 102: <tr>
! 103: <td>
! 104: <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000">
! 105: <tr>
! 106: <td>
! 107: <table border="0" cellpadding="3" cellspacing="1" width="100%">
! 108: <tr>
! 109: <td bgcolor="#fffacd">
! 110: <xsl:apply-templates mode="reflist" select="type"/>
! 111: <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p>
! 112: </td>
! 113: </tr>
! 114: </table>
! 115: </td>
! 116: </tr>
! 117: </table>
! 118: </td>
! 119: </tr>
! 120: </table>
! 121: </td>
! 122: </tr>
! 123: </table>
! 124: </td>
! 125: </tr>
! 126: </table>
! 127: </body>
! 128: </html>
! 129: </xsl:document>
! 130: </xsl:template>
! 131: <xsl:template match="files">
! 132: <xsl:message>Generating API List of synbols per file</xsl:message>
! 133: <xsl:variable name="title">List of Symbols per Module for <xsl:value-of select="$module"/></xsl:variable>
! 134: <xsl:document href="APIfiles.html" method="xml" encoding="UTF-8"
! 135: doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
! 136: doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
! 137: <html>
! 138: <head>
! 139: <xsl:call-template name="style"/>
! 140: <xsl:element name="title">
! 141: <xsl:value-of select="$title"/>
! 142: </xsl:element>
! 143: </head>
! 144: <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000">
! 145: <xsl:call-template name="titlebox">
! 146: <xsl:with-param name="title" select="$title"/>
! 147: </xsl:call-template>
! 148: <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center">
! 149: <tr>
! 150: <td bgcolor="#8b7765">
! 151: <table border="0" cellspacing="0" cellpadding="2" width="100%">
! 152: <tr>
! 153: <td valign="top" width="200" bgcolor="#8b7765">
! 154: <xsl:call-template name="develtoc"/>
! 155: </td>
! 156: <td valign="top" bgcolor="#8b7765">
! 157: <table border="0" cellspacing="0" cellpadding="1" width="100%">
! 158: <tr>
! 159: <td>
! 160: <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000">
! 161: <tr>
! 162: <td>
! 163: <table border="0" cellpadding="3" cellspacing="1" width="100%">
! 164: <tr>
! 165: <td bgcolor="#fffacd">
! 166: <xsl:apply-templates mode="reflist" select="file"/>
! 167: <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p>
! 168: </td>
! 169: </tr>
! 170: </table>
! 171: </td>
! 172: </tr>
! 173: </table>
! 174: </td>
! 175: </tr>
! 176: </table>
! 177: </td>
! 178: </tr>
! 179: </table>
! 180: </td>
! 181: </tr>
! 182: </table>
! 183: </body>
! 184: </html>
! 185: </xsl:document>
! 186: </xsl:template>
! 187: <xsl:template match="functions">
! 188: <xsl:message>Generating API Functions by Type</xsl:message>
! 189: <xsl:variable name="title">List of function manipulating types in <xsl:value-of select="$module"/></xsl:variable>
! 190: <xsl:document href="APIfunctions.html" method="xml" encoding="UTF-8"
! 191: doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
! 192: doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
! 193: <html>
! 194: <head>
! 195: <xsl:call-template name="style"/>
! 196: <xsl:element name="title">
! 197: <xsl:value-of select="$title"/>
! 198: </xsl:element>
! 199: </head>
! 200: <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000">
! 201: <xsl:call-template name="titlebox">
! 202: <xsl:with-param name="title" select="$title"/>
! 203: </xsl:call-template>
! 204: <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center">
! 205: <tr>
! 206: <td bgcolor="#8b7765">
! 207: <table border="0" cellspacing="0" cellpadding="2" width="100%">
! 208: <tr>
! 209: <td valign="top" width="200" bgcolor="#8b7765">
! 210: <xsl:call-template name="develtoc"/>
! 211: </td>
! 212: <td valign="top" bgcolor="#8b7765">
! 213: <table border="0" cellspacing="0" cellpadding="1" width="100%">
! 214: <tr>
! 215: <td>
! 216: <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000">
! 217: <tr>
! 218: <td>
! 219: <table border="0" cellpadding="3" cellspacing="1" width="100%">
! 220: <tr>
! 221: <td bgcolor="#fffacd">
! 222: <xsl:apply-templates mode="reflist" select="type"/>
! 223: <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p>
! 224: </td>
! 225: </tr>
! 226: </table>
! 227: </td>
! 228: </tr>
! 229: </table>
! 230: </td>
! 231: </tr>
! 232: </table>
! 233: </td>
! 234: </tr>
! 235: </table>
! 236: </td>
! 237: </tr>
! 238: </table>
! 239: </body>
! 240: </html>
! 241: </xsl:document>
! 242: </xsl:template>
! 243: <xsl:template match="alpha">
! 244: <xsl:message>Generating API Alphabetic list</xsl:message>
! 245: <xsl:variable name="title">Alphabetic List of Symbols in <xsl:value-of select="$module"/></xsl:variable>
! 246: <xsl:document href="APIsymbols.html" method="xml" encoding="UTF-8"
! 247: doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
! 248: doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
! 249: <html>
! 250: <head>
! 251: <xsl:call-template name="style"/>
! 252: <xsl:element name="title">
! 253: <xsl:value-of select="$title"/>
! 254: </xsl:element>
! 255: </head>
! 256: <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000">
! 257: <xsl:call-template name="titlebox">
! 258: <xsl:with-param name="title" select="$title"/>
! 259: </xsl:call-template>
! 260: <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center">
! 261: <tr>
! 262: <td bgcolor="#8b7765">
! 263: <table border="0" cellspacing="0" cellpadding="2" width="100%">
! 264: <tr>
! 265: <td valign="top" width="200" bgcolor="#8b7765">
! 266: <xsl:call-template name="develtoc"/>
! 267: </td>
! 268: <td valign="top" bgcolor="#8b7765">
! 269: <table border="0" cellspacing="0" cellpadding="1" width="100%">
! 270: <tr>
! 271: <td>
! 272: <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000">
! 273: <tr>
! 274: <td>
! 275: <table border="0" cellpadding="3" cellspacing="1" width="100%">
! 276: <tr>
! 277: <td bgcolor="#fffacd">
! 278: <xsl:apply-templates mode="reflist" select="letter"/>
! 279: <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p>
! 280: </td>
! 281: </tr>
! 282: </table>
! 283: </td>
! 284: </tr>
! 285: </table>
! 286: </td>
! 287: </tr>
! 288: </table>
! 289: </td>
! 290: </tr>
! 291: </table>
! 292: </td>
! 293: </tr>
! 294: </table>
! 295: </body>
! 296: </html>
! 297: </xsl:document>
! 298: </xsl:template>
! 299: <xsl:template name="apichunks">
! 300: <h2 align="center">
! 301: <xsl:for-each select="/apirefs/index/chunks/chunk">
! 302: <xsl:variable name="name" select="@name"/>
! 303: <xsl:variable name="start" select="@start"/>
! 304: <xsl:variable name="end" select="@end"/>
! 305: <xsl:variable name="block" select="concat($start, '-', $end)"/>
! 306: <a href="API{$name}.html"><xsl:value-of select="$block"/></a>
! 307: <xsl:text>
! 308: </xsl:text>
! 309: </xsl:for-each>
! 310: </h2>
! 311: </xsl:template>
! 312: <xsl:template match="chunk">
! 313: <xsl:variable name="name" select="@name"/>
! 314: <xsl:variable name="start" select="@start"/>
! 315: <xsl:variable name="end" select="@end"/>
! 316: <xsl:variable name="block" select="concat($start, '-', $end)"/>
! 317: <xsl:variable name="target" select="/apirefs/index/chunk[@name = $name]"/>
! 318: <xsl:variable name="title">API Alphabetic Index <xsl:value-of select="$block"/> for <xsl:value-of select="$module"/></xsl:variable>
! 319: <xsl:document href="API{$name}.html" method="xml" encoding="UTF-8"
! 320: doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
! 321: doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
! 322: <html>
! 323: <head>
! 324: <xsl:call-template name="style"/>
! 325: <xsl:element name="title">
! 326: <xsl:value-of select="$title"/>
! 327: </xsl:element>
! 328: </head>
! 329: <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000">
! 330: <xsl:call-template name="titlebox">
! 331: <xsl:with-param name="title" select="$title"/>
! 332: </xsl:call-template>
! 333: <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center">
! 334: <tr>
! 335: <td bgcolor="#8b7765">
! 336: <table border="0" cellspacing="0" cellpadding="2" width="100%">
! 337: <tr>
! 338: <td valign="top" width="200" bgcolor="#8b7765">
! 339: <xsl:call-template name="develtoc"/>
! 340: </td>
! 341: <td valign="top" bgcolor="#8b7765">
! 342: <table border="0" cellspacing="0" cellpadding="1" width="100%">
! 343: <tr>
! 344: <td>
! 345: <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000">
! 346: <tr>
! 347: <td>
! 348: <table border="0" cellpadding="3" cellspacing="1" width="100%">
! 349: <tr>
! 350: <td bgcolor="#fffacd">
! 351: <xsl:call-template name="apichunks"/>
! 352: <xsl:apply-templates mode="wordlist"
! 353: select="$target/letter"/>
! 354: <xsl:call-template name="apichunks"/>
! 355: <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p>
! 356: </td>
! 357: </tr>
! 358: </table>
! 359: </td>
! 360: </tr>
! 361: </table>
! 362: </td>
! 363: </tr>
! 364: </table>
! 365: </td>
! 366: </tr>
! 367: </table>
! 368: </td>
! 369: </tr>
! 370: </table>
! 371: </body>
! 372: </html>
! 373: </xsl:document>
! 374: </xsl:template>
! 375:
! 376: <xsl:template match="index">
! 377: <xsl:message>Generating API Index</xsl:message>
! 378: <xsl:apply-templates select="chunks/chunk"/>
! 379: </xsl:template>
! 380:
! 381: <xsl:template match="apirefs">
! 382: <xsl:message>Generating API Cross References</xsl:message>
! 383: <xsl:apply-templates select="constructors"/>
! 384: <xsl:apply-templates select="functions"/>
! 385: <xsl:apply-templates select="alpha"/>
! 386: <xsl:apply-templates select="files"/>
! 387: <xsl:apply-templates select="index"/>
! 388: </xsl:template>
! 389:
! 390: <xsl:template match="/">
! 391: <xsl:apply-templates select="$apirefs/apirefs"/>
! 392: </xsl:template>
! 393:
! 394: </xsl:stylesheet>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>