]> git.stg.codes - stg.git/blobdiff - doc/help/xslt/fo/axf.xsl
DocBook documentation stub added
[stg.git] / doc / help / xslt / fo / axf.xsl
diff --git a/doc/help/xslt/fo/axf.xsl b/doc/help/xslt/fo/axf.xsl
new file mode 100644 (file)
index 0000000..e63c3a6
--- /dev/null
@@ -0,0 +1,110 @@
+<?xml version='1.0'?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:fo="http://www.w3.org/1999/XSL/Format"
+                xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions"
+                version='1.0'>
+
+<!-- ********************************************************************
+     $Id: axf.xsl 6483 2007-01-08 18:00:22Z bobstayton $
+     ******************************************************************** -->
+
+<xsl:template name="axf-document-information">
+
+    <xsl:variable name="authors" select="(//author|//editor|
+                                          //corpauthor|//authorgroup)[1]"/>
+    <xsl:if test="$authors">
+      <xsl:variable name="author">
+        <xsl:choose>
+          <xsl:when test="$authors[self::authorgroup]">
+            <xsl:call-template name="person.name.list">
+              <xsl:with-param name="person.list" 
+                 select="$authors/*[self::author|self::corpauthor|
+                               self::othercredit|self::editor]"/>
+            </xsl:call-template>
+          </xsl:when>
+          <xsl:when test="$authors[self::corpauthor]">
+            <xsl:value-of select="$authors"/>
+          </xsl:when>
+          <xsl:otherwise>
+            <xsl:call-template name="person.name">
+              <xsl:with-param name="node" select="$authors"/>
+            </xsl:call-template>
+          </xsl:otherwise>
+        </xsl:choose>
+      </xsl:variable>
+
+      <xsl:element name="axf:document-info">
+        <xsl:attribute name="name">author</xsl:attribute>
+        <xsl:attribute name="value">
+          <xsl:value-of select="normalize-space($author)"/>
+        </xsl:attribute>
+      </xsl:element>
+    </xsl:if>
+
+    <xsl:variable name="title">
+      <xsl:apply-templates select="/*[1]" mode="label.markup"/>
+      <xsl:apply-templates select="/*[1]" mode="title.markup"/>
+    </xsl:variable>
+
+    <!-- * see bug report #1465301 - mzjn -->
+    <axf:document-info name="title">
+      <xsl:attribute name="value">
+        <xsl:value-of select="normalize-space($title)"/>
+      </xsl:attribute>
+    </axf:document-info>
+
+    <xsl:if test="//keyword">
+      <xsl:element name="axf:document-info">
+        <xsl:attribute name="name">keywords</xsl:attribute>
+        <xsl:attribute name="value">
+          <xsl:for-each select="//keyword">
+            <xsl:value-of select="normalize-space(.)"/>
+            <xsl:if test="position() != last()">
+              <xsl:text>, </xsl:text>
+            </xsl:if>
+          </xsl:for-each>
+        </xsl:attribute>
+      </xsl:element>
+    </xsl:if>
+
+    <xsl:if test="//subjectterm">
+      <xsl:element name="axf:document-info">
+        <xsl:attribute name="name">subject</xsl:attribute>
+        <xsl:attribute name="value">
+          <xsl:for-each select="//subjectterm">
+            <xsl:value-of select="normalize-space(.)"/>
+            <xsl:if test="position() != last()">
+              <xsl:text>, </xsl:text>
+            </xsl:if>
+          </xsl:for-each>
+        </xsl:attribute>
+      </xsl:element>
+    </xsl:if>
+
+</xsl:template>
+
+<!-- These properties are added to fo:simple-page-master -->
+<xsl:template name="axf-page-master-properties">
+  <xsl:param name="page.master" select="''"/>
+
+  <xsl:if test="$crop.marks != 0">
+    <xsl:attribute name="axf:printer-marks">crop</xsl:attribute>
+    <xsl:attribute name="axf:bleed"><xsl:value-of
+                          select="$crop.mark.bleed"/></xsl:attribute>
+    <xsl:attribute name="axf:printer-marks-line-width"><xsl:value-of
+                          select="$crop.mark.width"/></xsl:attribute>
+    <xsl:attribute name="axf:crop-offset"><xsl:value-of
+                          select="$crop.mark.offset"/></xsl:attribute>
+  </xsl:if>
+
+  <xsl:call-template name="user-axf-page-master-properties">
+    <xsl:with-param name="page.master" select="$page.master"/>
+  </xsl:call-template>
+
+</xsl:template>
+
+<xsl:template name="user-axf-page-master-properties">
+  <xsl:param name="page.master" select="''"/>
+</xsl:template>
+
+</xsl:stylesheet>