[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Bruce,
At 01:22 AM 9/16/2004, you wrote:
As you surmised, $source should refer to the node in the mods data, not the cs data, so this should be
As you traverse down the branches of the cs: tree, you need to keep track of what branch of the mods: tree you were in before you jumped into the other tree, so that inside these templates you can get their data.
If we could talk this true at a whiteboard I could make this clear in a minute ... unfortunately, as I said, this processing-two-trees stuff is like XSLT on steroids.
In any case, yes ...
Exactly right.
Tunneling parameters would only mean that your cs:origin template need not actually declare and pass $source, so
(i.e. the built-in template) would work as well as what I have above.
Re: [xsl] dynamically applying templates
Subject: Re: [xsl] dynamically applying templates From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx> Date: Thu, 16 Sep 2004 12:00:27 -0400 |
Bruce,
At 01:22 AM 9/16/2004, you wrote:
<reftype name="book"> <title font-style="italic" after=", "/> <creator> <names form="full"/> </creator> <origin before="(" after="), "> <place after=":"/> <publisher/> </origin>
With this template ...
<xsl:template match="cs:origin"> <xsl:param name="source"/> <xsl:apply-templates> <xsl:with-param name="source" select="."/> </xsl:apply-templates> </xsl:template>
As you surmised, $source should refer to the node in the mods data, not the cs data, so this should be
<xsl:template match="cs:origin"> <xsl:param name="source"/> <xsl:apply-templates> <xsl:with-param name="source" select="$source"/> </xsl:apply-templates> </xsl:template>
As you traverse down the branches of the cs: tree, you need to keep track of what branch of the mods: tree you were in before you jumped into the other tree, so that inside these templates you can get their data.
If we could talk this true at a whiteboard I could make this clear in a minute ... unfortunately, as I said, this processing-two-trees stuff is like XSLT on steroids.
In any case, yes ...
.... am I right that I am passing cs:origin as the source to the children, where I really need to be passing the original mods:mods source. A child looks like:
<xsl:template match="cs:place"> <xsl:param name="source"/> <xsl:apply-templates select="$source/mods:originInfo/mods:place"/> </xsl:template>
I'm not sure, but is this where tunneling should come in? And if yes, how do I actually use it in this context?
Exactly right.
Tunneling parameters would only mean that your cs:origin template need not actually declare and pass $source, so
<xsl:template match="cs:origin"> <xsl:apply-templates/> </xsl:template>
(i.e. the built-in template) would work as well as what I have above.
Bob DuCharme has a nice column about tunneling parameters on XML.com: http://www.xml.com/pub/a/2004/03/24/tr.html
Cheers, Wendell
====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================
--+------------------------------------------------------------------ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/ or e-mail: <mailto:xsl-list-unsubscribe@xxxxxxxxxxxxxxxxxxxxxx> --+--
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] dynamically applying temp, Bruce D'Arcus | Thread | [xsl] Re: xsl-list Digest 10 Sep 20, Sundar Narasimhan |
RE: [xsl] not getting expected matc, Crouch, Luke H. | Date | Re: [xsl] not getting expected matc, Wendell Piez |
Month |