316 lines
9 KiB
XML
Vendored
316 lines
9 KiB
XML
Vendored
<?xml version="1.0"?>
|
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
|
version="1.0">
|
|
|
|
<xsl:template match="head" mode="head.mode">
|
|
<xsl:variable name="nodes" select="*"/>
|
|
<head>
|
|
<meta name="generator" content="Website XSL Stylesheet V{$VERSION}"/>
|
|
<xsl:if test="$html.stylesheet != ''">
|
|
<link rel="stylesheet" href="{$html.stylesheet}" type="text/css">
|
|
<xsl:if test="$html.stylesheet.type != ''">
|
|
<xsl:attribute name="type">
|
|
<xsl:value-of select="$html.stylesheet.type"/>
|
|
</xsl:attribute>
|
|
</xsl:if>
|
|
</link>
|
|
</xsl:if>
|
|
|
|
<xsl:variable name="thisid" select="ancestor-or-self::webpage/@id"/>
|
|
<xsl:variable name="thisrelpath">
|
|
<xsl:apply-templates select="$autolayout//*[@id=$thisid]" mode="toc-rel-path"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:variable name="topid">
|
|
<xsl:call-template name="top.page"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:if test="$topid != ''">
|
|
<link rel="home">
|
|
<xsl:attribute name="href">
|
|
<xsl:call-template name="page.uri">
|
|
<xsl:with-param name="page" select="$autolayout//*[@id=$topid]"/>
|
|
<xsl:with-param name="relpath" select="$thisrelpath"/>
|
|
</xsl:call-template>
|
|
</xsl:attribute>
|
|
<xsl:attribute name="title">
|
|
<xsl:value-of select="$autolayout//*[@id=$topid]/title"/>
|
|
</xsl:attribute>
|
|
</link>
|
|
</xsl:if>
|
|
|
|
<xsl:variable name="upid">
|
|
<xsl:call-template name="up.page"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:if test="$upid != ''">
|
|
<link rel="up">
|
|
<xsl:attribute name="href">
|
|
<xsl:call-template name="page.uri">
|
|
<xsl:with-param name="page" select="$autolayout//*[@id=$upid]"/>
|
|
<xsl:with-param name="relpath" select="$thisrelpath"/>
|
|
</xsl:call-template>
|
|
</xsl:attribute>
|
|
<xsl:attribute name="title">
|
|
<xsl:value-of select="$autolayout//*[@id=$upid]/title"/>
|
|
</xsl:attribute>
|
|
</link>
|
|
</xsl:if>
|
|
|
|
<xsl:variable name="previd">
|
|
<xsl:call-template name="prev.page"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:if test="$previd != ''">
|
|
<link rel="previous">
|
|
<xsl:attribute name="href">
|
|
<xsl:call-template name="page.uri">
|
|
<xsl:with-param name="page" select="$autolayout//*[@id=$previd]"/>
|
|
<xsl:with-param name="relpath" select="$thisrelpath"/>
|
|
</xsl:call-template>
|
|
</xsl:attribute>
|
|
<xsl:attribute name="title">
|
|
<xsl:value-of select="$autolayout//*[@id=$previd]/title"/>
|
|
</xsl:attribute>
|
|
</link>
|
|
</xsl:if>
|
|
|
|
<xsl:variable name="nextid">
|
|
<xsl:call-template name="next.page"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:if test="$nextid != ''">
|
|
<link rel="next">
|
|
<xsl:attribute name="href">
|
|
<xsl:call-template name="page.uri">
|
|
<xsl:with-param name="page" select="$autolayout//*[@id=$nextid]"/>
|
|
<xsl:with-param name="relpath" select="$thisrelpath"/>
|
|
</xsl:call-template>
|
|
</xsl:attribute>
|
|
<xsl:attribute name="title">
|
|
<xsl:value-of select="$autolayout//*[@id=$nextid]/title"/>
|
|
</xsl:attribute>
|
|
</link>
|
|
</xsl:if>
|
|
|
|
<xsl:variable name="firstid">
|
|
<xsl:call-template name="first.page"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:if test="$firstid != ''">
|
|
<link rel="first">
|
|
<xsl:attribute name="href">
|
|
<xsl:call-template name="page.uri">
|
|
<xsl:with-param name="page" select="$autolayout//*[@id=$firstid]"/>
|
|
<xsl:with-param name="relpath" select="$thisrelpath"/>
|
|
</xsl:call-template>
|
|
</xsl:attribute>
|
|
<xsl:attribute name="title">
|
|
<xsl:value-of select="$autolayout//*[@id=$firstid]/title"/>
|
|
</xsl:attribute>
|
|
</link>
|
|
</xsl:if>
|
|
|
|
<xsl:variable name="lastid">
|
|
<xsl:call-template name="last.page"/>
|
|
</xsl:variable>
|
|
|
|
<xsl:if test="$lastid != ''">
|
|
<link rel="last">
|
|
<xsl:attribute name="href">
|
|
<xsl:call-template name="page.uri">
|
|
<xsl:with-param name="page" select="$autolayout//*[@id=$lastid]"/>
|
|
<xsl:with-param name="relpath" select="$thisrelpath"/>
|
|
</xsl:call-template>
|
|
</xsl:attribute>
|
|
<xsl:attribute name="title">
|
|
<xsl:value-of select="$autolayout//*[@id=$lastid]/title"/>
|
|
</xsl:attribute>
|
|
</link>
|
|
</xsl:if>
|
|
|
|
<xsl:apply-templates select="$autolayout/autolayout/style
|
|
|$autolayout/autolayout/script
|
|
|$autolayout/autolayout/headlink"
|
|
mode="head.mode">
|
|
<xsl:with-param name="webpage" select="ancestor::webpage"/>
|
|
</xsl:apply-templates>
|
|
<xsl:apply-templates mode="head.mode"/>
|
|
<xsl:call-template name="user.head.content">
|
|
<xsl:with-param name="node" select="ancestor::webpage"/>
|
|
</xsl:call-template>
|
|
</head>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="title" mode="head.mode">
|
|
<title><xsl:value-of select="."/></title>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="titleabbrev" mode="head.mode">
|
|
<!--nop-->
|
|
</xsl:template>
|
|
|
|
<xsl:template match="subtitle" mode="head.mode">
|
|
<!--nop-->
|
|
</xsl:template>
|
|
|
|
<xsl:template match="summary" mode="head.mode">
|
|
<!--nop-->
|
|
</xsl:template>
|
|
|
|
<xsl:template match="base" mode="head.mode">
|
|
<base href="{@href}">
|
|
<xsl:if test="@target">
|
|
<xsl:attribute name="target">
|
|
<xsl:value-of select="@target"/>
|
|
</xsl:attribute>
|
|
</xsl:if>
|
|
</base>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="keywords" mode="head.mode">
|
|
<meta name="keyword" content="{.}"/>
|
|
<meta name="keywords" content="{.}"/>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="copyright" mode="head.mode">
|
|
<!--nop-->
|
|
</xsl:template>
|
|
|
|
<xsl:template match="author" mode="head.mode">
|
|
<!--nop-->
|
|
</xsl:template>
|
|
|
|
<xsl:template match="edition" mode="head.mode">
|
|
<!--nop-->
|
|
</xsl:template>
|
|
|
|
<xsl:template match="meta" mode="head.mode">
|
|
<xsl:choose>
|
|
<xsl:when test="@http-equiv">
|
|
<meta http-equiv="{@http-equiv}" content="{@content}"/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<meta name="{@name}" content="{@content}"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="script" mode="head.mode">
|
|
<script>
|
|
<xsl:choose>
|
|
<xsl:when test="@language">
|
|
<xsl:attribute name="language">
|
|
<xsl:value-of select="@language"/>
|
|
</xsl:attribute>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:attribute name="language">JavaScript</xsl:attribute>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
<xsl:choose>
|
|
<xsl:when test="@type">
|
|
<xsl:attribute name="type">
|
|
<xsl:value-of select="@type"/>
|
|
</xsl:attribute>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:attribute name="type">text/javascript</xsl:attribute>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
<xsl:apply-templates/>
|
|
</script>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="script[@src]" mode="head.mode" priority="2">
|
|
<xsl:param name="webpage" select="ancestor::webpage"/>
|
|
<xsl:variable name="relpath">
|
|
<xsl:call-template name="root-rel-path">
|
|
<xsl:with-param name="webpage" select="$webpage"/>
|
|
</xsl:call-template>
|
|
</xsl:variable>
|
|
|
|
<xsl:variable name="language">
|
|
<xsl:choose>
|
|
<xsl:when test="@language">
|
|
<xsl:value-of select="@language"/>
|
|
</xsl:when>
|
|
<xsl:otherwise>JavaScript</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:variable>
|
|
|
|
<xsl:variable name="type">
|
|
<xsl:choose>
|
|
<xsl:when test="@type">
|
|
<xsl:value-of select="@type"/>
|
|
</xsl:when>
|
|
<xsl:otherwise>text/javascript</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:variable>
|
|
|
|
<script src="{$relpath}{@src}" language="{$language}" type="{$type}"/>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="style" mode="head.mode">
|
|
<style>
|
|
<xsl:if test="@type">
|
|
<xsl:attribute name="type">
|
|
<xsl:value-of select="@type"/>
|
|
</xsl:attribute>
|
|
</xsl:if>
|
|
|
|
<xsl:apply-templates/>
|
|
|
|
</style>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="style[@src]" mode="head.mode" priority="2">
|
|
<xsl:param name="webpage" select="ancestor::webpage"/>
|
|
<xsl:variable name="relpath">
|
|
<xsl:call-template name="root-rel-path">
|
|
<xsl:with-param name="webpage" select="$webpage"/>
|
|
</xsl:call-template>
|
|
</xsl:variable>
|
|
|
|
<xsl:choose>
|
|
<xsl:when test="starts-with(@src, '/')">
|
|
<link rel="stylesheet" href="{@src}">
|
|
<xsl:if test="@type">
|
|
<xsl:attribute name="type">
|
|
<xsl:value-of select="@type"/>
|
|
</xsl:attribute>
|
|
</xsl:if>
|
|
</link>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<link rel="stylesheet" href="{$relpath}{@src}">
|
|
<xsl:if test="@type">
|
|
<xsl:attribute name="type">
|
|
<xsl:value-of select="@type"/>
|
|
</xsl:attribute>
|
|
</xsl:if>
|
|
</link>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="headlink" mode="head.mode">
|
|
<link>
|
|
<xsl:copy-of select="@*"/>
|
|
</link>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="abstract" mode="head.mode">
|
|
<!--nop-->
|
|
</xsl:template>
|
|
|
|
<xsl:template match="revhistory" mode="head.mode">
|
|
<!--nop-->
|
|
</xsl:template>
|
|
|
|
<xsl:template match="rddl:*" mode="head.mode"
|
|
xmlns:rddl='http://www.rddl.org/'>
|
|
<!--nop-->
|
|
</xsl:template>
|
|
|
|
</xsl:stylesheet>
|