diff options
author | William Joye <wjoye@cfa.harvard.edu> | 2016-11-17 21:10:17 (GMT) |
---|---|---|
committer | William Joye <wjoye@cfa.harvard.edu> | 2016-11-17 21:10:17 (GMT) |
commit | 574585fa78070b0cc6b5ad22543e21a3502a122b (patch) | |
tree | 0e96ee0e38f68bcd7662e7815f96e0151740056f /doc/api.xsl | |
download | blt-574585fa78070b0cc6b5ad22543e21a3502a122b.zip blt-574585fa78070b0cc6b5ad22543e21a3502a122b.tar.gz blt-574585fa78070b0cc6b5ad22543e21a3502a122b.tar.bz2 |
Squashed 'libxml2/' content from commit d9321d2
git-subtree-dir: libxml2
git-subtree-split: d9321d23d75a97f655f9325007ea7837f101100f
Diffstat (limited to 'doc/api.xsl')
-rw-r--r-- | doc/api.xsl | 394 |
1 files changed, 394 insertions, 0 deletions
diff --git a/doc/api.xsl b/doc/api.xsl new file mode 100644 index 0000000..6f9007f --- /dev/null +++ b/doc/api.xsl @@ -0,0 +1,394 @@ +<?xml version="1.0"?> +<!-- this stylesheet builds the API*.html , it works based on libxml2-refs.xml + --> +<xsl:stylesheet version="1.0" + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:exsl="http://exslt.org/common" + extension-element-prefixes="exsl" + exclude-result-prefixes="exsl"> + + <!-- Import the rest of the site stylesheets --> + <xsl:import href="site.xsl"/> + + <!-- Generate XHTML-1.0 transitional --> + <xsl:output method="xml" encoding="UTF-8" indent="yes" + doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" + doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/> + + <xsl:variable name="href_base" select="''"/> + <xsl:variable name="apirefs" select="document('libxml2-refs.xml')"/> + <xsl:variable name="module" select="$apirefs/apirefs/@name"/> + <xsl:key name="refhref" match="reference" use="@name"/> + + <xsl:template match="ref" mode="anchor"> + <xsl:variable name="name" select="@name"/> + <xsl:for-each select="document('libxml2-refs.xml')"> + <a href="{key('refhref', $name)/@href}"><xsl:value-of select="$name"/></a><br/> + </xsl:for-each> + </xsl:template> + <xsl:template match="type" mode="reflist"> + <h2>Type <xsl:value-of select="@name"/>:</h2> + <p> + <xsl:for-each select="ref"> + <xsl:apply-templates mode="anchor" select="."/> + <xsl:text> +</xsl:text> + </xsl:for-each> + </p> + </xsl:template> + <xsl:template match="letter" mode="reflist"> + <h2>Letter <xsl:value-of select="@name"/>:</h2> + <p> + <xsl:for-each select="ref"> + <xsl:apply-templates mode="anchor" select="."/> + <xsl:text> +</xsl:text> + </xsl:for-each> + </p> + </xsl:template> + <xsl:template match="file" mode="reflist"> + <h2><a name="{@name}">Module <xsl:value-of select="@name"/></a>:</h2> + <p> + <xsl:for-each select="ref"> + <xsl:apply-templates mode="anchor" select="."/> + <xsl:text> +</xsl:text> + </xsl:for-each> + </p> + </xsl:template> + <xsl:template match="letter" mode="wordlist"> + <h2>Letter <xsl:value-of select="@name"/>:</h2> + <dl> + <xsl:for-each select="word"> + <dt><xsl:value-of select="@name"/></dt> + <dd> + <xsl:for-each select="ref"> + <xsl:apply-templates mode="anchor" select="."/> + <xsl:text> +</xsl:text> + </xsl:for-each> + </dd> + </xsl:for-each> + </dl> + </xsl:template> + + <xsl:template match="constructors"> + <xsl:message>Generating API Constructors</xsl:message> + <xsl:variable name="title">List of constructors for <xsl:value-of select="$module"/></xsl:variable> + <xsl:document href="APIconstructors.html" method="xml" encoding="UTF-8" + doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" + doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> + <html> + <head> + <xsl:call-template name="style"/> + <xsl:element name="title"> + <xsl:value-of select="$title"/> + </xsl:element> + </head> + <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"> + <xsl:call-template name="titlebox"> + <xsl:with-param name="title" select="$title"/> + </xsl:call-template> + <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"> + <tr> + <td bgcolor="#8b7765"> + <table border="0" cellspacing="0" cellpadding="2" width="100%"> + <tr> + <td valign="top" width="200" bgcolor="#8b7765"> + <xsl:call-template name="develtoc"/> + </td> + <td valign="top" bgcolor="#8b7765"> + <table border="0" cellspacing="0" cellpadding="1" width="100%"> + <tr> + <td> + <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"> + <tr> + <td> + <table border="0" cellpadding="3" cellspacing="1" width="100%"> + <tr> + <td bgcolor="#fffacd"> + <xsl:apply-templates mode="reflist" select="type"/> + <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </body> + </html> + </xsl:document> + </xsl:template> + <xsl:template match="files"> + <xsl:message>Generating API List of synbols per file</xsl:message> + <xsl:variable name="title">List of Symbols per Module for <xsl:value-of select="$module"/></xsl:variable> + <xsl:document href="APIfiles.html" method="xml" encoding="UTF-8" + doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" + doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> + <html> + <head> + <xsl:call-template name="style"/> + <xsl:element name="title"> + <xsl:value-of select="$title"/> + </xsl:element> + </head> + <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"> + <xsl:call-template name="titlebox"> + <xsl:with-param name="title" select="$title"/> + </xsl:call-template> + <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"> + <tr> + <td bgcolor="#8b7765"> + <table border="0" cellspacing="0" cellpadding="2" width="100%"> + <tr> + <td valign="top" width="200" bgcolor="#8b7765"> + <xsl:call-template name="develtoc"/> + </td> + <td valign="top" bgcolor="#8b7765"> + <table border="0" cellspacing="0" cellpadding="1" width="100%"> + <tr> + <td> + <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"> + <tr> + <td> + <table border="0" cellpadding="3" cellspacing="1" width="100%"> + <tr> + <td bgcolor="#fffacd"> + <xsl:apply-templates mode="reflist" select="file"/> + <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </body> + </html> + </xsl:document> + </xsl:template> + <xsl:template match="functions"> + <xsl:message>Generating API Functions by Type</xsl:message> + <xsl:variable name="title">List of function manipulating types in <xsl:value-of select="$module"/></xsl:variable> + <xsl:document href="APIfunctions.html" method="xml" encoding="UTF-8" + doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" + doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> + <html> + <head> + <xsl:call-template name="style"/> + <xsl:element name="title"> + <xsl:value-of select="$title"/> + </xsl:element> + </head> + <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"> + <xsl:call-template name="titlebox"> + <xsl:with-param name="title" select="$title"/> + </xsl:call-template> + <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"> + <tr> + <td bgcolor="#8b7765"> + <table border="0" cellspacing="0" cellpadding="2" width="100%"> + <tr> + <td valign="top" width="200" bgcolor="#8b7765"> + <xsl:call-template name="develtoc"/> + </td> + <td valign="top" bgcolor="#8b7765"> + <table border="0" cellspacing="0" cellpadding="1" width="100%"> + <tr> + <td> + <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"> + <tr> + <td> + <table border="0" cellpadding="3" cellspacing="1" width="100%"> + <tr> + <td bgcolor="#fffacd"> + <xsl:apply-templates mode="reflist" select="type"/> + <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </body> + </html> + </xsl:document> + </xsl:template> + <xsl:template match="alpha"> + <xsl:message>Generating API Alphabetic list</xsl:message> + <xsl:variable name="title">Alphabetic List of Symbols in <xsl:value-of select="$module"/></xsl:variable> + <xsl:document href="APIsymbols.html" method="xml" encoding="UTF-8" + doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" + doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> + <html> + <head> + <xsl:call-template name="style"/> + <xsl:element name="title"> + <xsl:value-of select="$title"/> + </xsl:element> + </head> + <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"> + <xsl:call-template name="titlebox"> + <xsl:with-param name="title" select="$title"/> + </xsl:call-template> + <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"> + <tr> + <td bgcolor="#8b7765"> + <table border="0" cellspacing="0" cellpadding="2" width="100%"> + <tr> + <td valign="top" width="200" bgcolor="#8b7765"> + <xsl:call-template name="develtoc"/> + </td> + <td valign="top" bgcolor="#8b7765"> + <table border="0" cellspacing="0" cellpadding="1" width="100%"> + <tr> + <td> + <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"> + <tr> + <td> + <table border="0" cellpadding="3" cellspacing="1" width="100%"> + <tr> + <td bgcolor="#fffacd"> + <xsl:apply-templates mode="reflist" select="letter"/> + <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </body> + </html> + </xsl:document> + </xsl:template> + <xsl:template name="apichunks"> + <h2 align="center"> + <xsl:for-each select="/apirefs/index/chunks/chunk"> + <xsl:variable name="name" select="@name"/> + <xsl:variable name="start" select="@start"/> + <xsl:variable name="end" select="@end"/> + <xsl:variable name="block" select="concat($start, '-', $end)"/> + <a href="API{$name}.html"><xsl:value-of select="$block"/></a> + <xsl:text> +</xsl:text> + </xsl:for-each> + </h2> + </xsl:template> + <xsl:template match="chunk"> + <xsl:variable name="name" select="@name"/> + <xsl:variable name="start" select="@start"/> + <xsl:variable name="end" select="@end"/> + <xsl:variable name="block" select="concat($start, '-', $end)"/> + <xsl:variable name="target" select="/apirefs/index/chunk[@name = $name]"/> + <xsl:variable name="title">API Alphabetic Index <xsl:value-of select="$block"/> for <xsl:value-of select="$module"/></xsl:variable> + <xsl:document href="API{$name}.html" method="xml" encoding="UTF-8" + doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" + doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> + <html> + <head> + <xsl:call-template name="style"/> + <xsl:element name="title"> + <xsl:value-of select="$title"/> + </xsl:element> + </head> + <body bgcolor="#8b7765" text="#000000" link="#a06060" vlink="#000000"> + <xsl:call-template name="titlebox"> + <xsl:with-param name="title" select="$title"/> + </xsl:call-template> + <table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"> + <tr> + <td bgcolor="#8b7765"> + <table border="0" cellspacing="0" cellpadding="2" width="100%"> + <tr> + <td valign="top" width="200" bgcolor="#8b7765"> + <xsl:call-template name="develtoc"/> + </td> + <td valign="top" bgcolor="#8b7765"> + <table border="0" cellspacing="0" cellpadding="1" width="100%"> + <tr> + <td> + <table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"> + <tr> + <td> + <table border="0" cellpadding="3" cellspacing="1" width="100%"> + <tr> + <td bgcolor="#fffacd"> + <xsl:call-template name="apichunks"/> + <xsl:apply-templates mode="wordlist" + select="$target/letter"/> + <xsl:call-template name="apichunks"/> + <p><a href="{$href_base}bugs.html">Daniel Veillard</a></p> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </td> + </tr> + </table> + </body> + </html> + </xsl:document> + </xsl:template> + + <xsl:template match="index"> + <xsl:message>Generating API Index</xsl:message> + <xsl:apply-templates select="chunks/chunk"/> + </xsl:template> + + <xsl:template match="apirefs"> + <xsl:message>Generating API Cross References</xsl:message> + <xsl:apply-templates select="constructors"/> + <xsl:apply-templates select="functions"/> + <xsl:apply-templates select="alpha"/> + <xsl:apply-templates select="files"/> + <xsl:apply-templates select="index"/> + </xsl:template> + + <xsl:template match="/"> + <xsl:apply-templates select="$apirefs/apirefs"/> + </xsl:template> + +</xsl:stylesheet> |