|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: dynamically applying templates
On Sep 15, 2004, at 11:46 AM, Wendell Piez wrote:
Could you include a snippet of source (actually both sources) so we have a clue as to what the input looks like?
==== source ==== <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 ==== <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"><xsl:output method='xhtml' encoding='utf-8' indent='yes'/> <xsl:strip-space elements="*"/> <!-- 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:variable name="style-biblio" select="$styles/cs:citationstyle/cs:content/cs:bibliography"/> <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:entry/cs:reftype[@name='book']" mode="bibliography"> <xsl:param name="source"/> <test> <xsl:apply-templates> <xsl:with-param name="source" select="$source"/> </xsl:apply-templates> </test> </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></xsl:stylesheet>
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








