Subject: Re: [xsl] dynamically applying templates From: Bruce D'Arcus <bdarcus@xxxxxxxxxxxxx> Date: Wed, 15 Sep 2004 13:14:47 -0400 |
Could you include a snippet of source (actually both sources) so we have a clue as to what the input looks like?
==== config ==== <citationstyle xmlns="http://xbiblio.sourceforge.net/xcs"> <content> <bibliography author-as-sort-order="yes"> <entry> <reftype name="book"> <title font-style="italic" after=", "/> <creator/> </reftype> </entry> </bibliography> </content> <citationstyle>
<doc> <!-- this would normally be docbook ng; but keep it simple for now --> <mods xmlns="http://www.loc.gov/mods/v3"> <name type="personal"> <namePart type="given">Jane</namePart> <namePart type="family">Doe</namePart> </name> <titleInfo> <title>Main Title</title> <subTitle>Subtitle</subTitle> </titleInfo> </mods> </doc>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:db="http://docbook.org/docbook-ng" xmlns:mods="http://www.loc.gov/mods/v3" xmlns="http://www.w3.org/1999/xhtml" xmlns:bib="http://xbiblio.sourceforge.net/xbib" xmlns:cs="http://xbiblio.sourceforge.net/xcs" exclude-result-prefixes="mods db bib xs cs">
<!-- read the external citation style file --> <xsl:param name="citation-style" required="yes" as="xs:string" />
<xsl:variable name="styles" as="document-node()" select="doc(concat($citation-style, '.csl'))" />
<xsl:template match="/"> <xsl:param name="source"/> <html> <div> <xsl:apply-templates mode="bibliography"> <xsl:with-param name="source" select="$style-biblio"/> </xsl:apply-templates> </div> </html> </xsl:template>
<xsl:template match="cs:title"> <xsl:param name="source"/> <xsl:apply-templates select="$source/mods:titleInfo" mode="full"/> </xsl:template>
<xsl:template match="mods:titleInfo" mode="full"> <span class="title"> <xsl:apply-templates select="mods:title"/> <xsl:apply-templates select="mods:subTitle"/> </span> </xsl:template>
<xsl:template match="cs:creator" mode="full"> <xsl:param name="source"/> <xsl:apply-templates select="$source/mods:name" mode="full"/> </xsl:template>
<xsl:template match="mods:name" mode="full"> <span class="creator"> <xsl:apply-templates select="mods:namePart"/> </span> </xsl:template>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] dynamically applying temp, Wendell Piez | Thread | Re: [xsl] dynamically applying temp, Wendell Piez |
Re: [xsl] Accessing embedded XSL is, Emmanouil Batsis | Date | Re: [xsl] dynamically applying temp, Wendell Piez |
Month |