[Portfolio] parsing template ?
botimer at umich.edu
Mon Jul 27 13:41:14 PDT 2009
Erica just asked me to provide clarification to this. Although I
suggest looking at my other response for what I would do in this
specific case, string parsing comes up often, and isn't obvious to
most folks in XSLT.
You essentially end up programming like you're in Lisp (CAR and CDR,
anyone?). That is, the template Erica mentions would be recursive.
Since you're looking for stuff after the last slash, one way is to
check if there is a slash and, if so, run the same template on the
stuff after it, otherwise just returning the input. You could do it
<xsl:when test="contains($someText, '/')"><xsl:call-template
name="last-slash"><xsl:with-param name="someText" select="substring-
You then just call the after-last-slash template with the parameter
someText being whatever you need to parse. You'll either end up
outputting it immediately or capturing it in an xsl:variable for
output somewhere else.
On Jul 27, 2009, at 4:13 PM, Ackerman, Erica wrote:
> Jon, I think you want to create a template that calls substring-
> before and substring-after to break the string up, saving the
> substring-before and the substring-after parts in variables. The
> template would then call itself again until there was no substring-
> after part.
> From: portfolio-bounces at collab.sakaiproject.org [mailto:portfolio-
> bounces at collab.sakaiproject.org] On Behalf Of Jon Wheat
> Sent: Monday, July 27, 2009 4:01 PM
> To: portfolio at collab.sakaiproject.org
> Subject: [Portfolio] parsing template ?
> I have a portfolio form that collects multiple attachments.
> The resulting XML looks like this -
> <docReflection> snipped </docReflection>
> I'm now attempting to grab just the filenames for these files and
> am having difficulty both looping though the fileSelect(s) and
> parsing the urls so I can create simple a lang_c1.pdf link.
> Does anyone have any template code that does this ?
> - Jon
> portfolio mailing list
> portfolio at collab.sakaiproject.org
> TO UNSUBSCRIBE: send email to portfolio-
> unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the portfolio