1<?xml version='1.0'?> 2<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 3 xmlns:fo="http://www.w3.org/1999/XSL/Format" 4 xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" 5 version='1.0'> 6 7<!-- ******************************************************************** 8 $Id: axf.xsl,v 1.3 2006/04/06 13:29:06 xmldoc Exp $ 9 ******************************************************************** --> 10 11<xsl:template name="axf-document-information"> 12 13 <xsl:variable name="authors" select="(//author|//editor| 14 //corpauthor|//authorgroup)[1]"/> 15 <xsl:if test="$authors"> 16 <xsl:variable name="author"> 17 <xsl:choose> 18 <xsl:when test="$authors[self::authorgroup]"> 19 <xsl:call-template name="person.name.list"> 20 <xsl:with-param name="person.list" 21 select="$authors/*[self::author|self::corpauthor| 22 self::othercredit|self::editor]"/> 23 </xsl:call-template> 24 </xsl:when> 25 <xsl:when test="$authors[self::corpauthor]"> 26 <xsl:value-of select="$authors"/> 27 </xsl:when> 28 <xsl:otherwise> 29 <xsl:call-template name="person.name"> 30 <xsl:with-param name="node" select="$authors"/> 31 </xsl:call-template> 32 </xsl:otherwise> 33 </xsl:choose> 34 </xsl:variable> 35 36 <xsl:element name="axf:document-info"> 37 <xsl:attribute name="name">author</xsl:attribute> 38 <xsl:attribute name="value"> 39 <xsl:value-of select="normalize-space($author)"/> 40 </xsl:attribute> 41 </xsl:element> 42 </xsl:if> 43 44 <xsl:variable name="title"> 45 <xsl:apply-templates select="/*[1]" mode="label.markup"/> 46 <xsl:apply-templates select="/*[1]" mode="title.markup"/> 47 </xsl:variable> 48 49 <!-- * see bug report #1465301 - mzjn --> 50 <axf:document-info name="title"> 51 <xsl:attribute name="value"> 52 <xsl:value-of select="normalize-space($title)"/> 53 </xsl:attribute> 54 </axf:document-info> 55 56 <xsl:if test="//keyword"> 57 <xsl:element name="axf:document-info"> 58 <xsl:attribute name="name">keywords</xsl:attribute> 59 <xsl:attribute name="value"> 60 <xsl:for-each select="//keyword"> 61 <xsl:value-of select="normalize-space(.)"/> 62 <xsl:if test="position() != last()"> 63 <xsl:text>, </xsl:text> 64 </xsl:if> 65 </xsl:for-each> 66 </xsl:attribute> 67 </xsl:element> 68 </xsl:if> 69 70 <xsl:if test="//subjectterm"> 71 <xsl:element name="axf:document-info"> 72 <xsl:attribute name="name">subject</xsl:attribute> 73 <xsl:attribute name="value"> 74 <xsl:for-each select="//subjectterm"> 75 <xsl:value-of select="normalize-space(.)"/> 76 <xsl:if test="position() != last()"> 77 <xsl:text>, </xsl:text> 78 </xsl:if> 79 </xsl:for-each> 80 </xsl:attribute> 81 </xsl:element> 82 </xsl:if> 83 84</xsl:template> 85 86</xsl:stylesheet> 87