Re: [xsl] Legibility, repetition, nesting

Subject: Re: [xsl] Legibility, repetition, nesting
From: "Alan Painter alan.painter@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 22 Jul 2020 11:58:29 -0000
Hi David,

I'm curious to know what approach you finally chose.

("Enquiring minds want to know.")

thanks and best regards

-alan


On Mon, Jul 20, 2020 at 11:00 PM Liam R. E. Quin liam@xxxxxxxxxxxxxxxx <
xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:

> On Mon, 2020-07-20 at 18:24 +0000, David Birnbaum djbpitt@xxxxxxxxx
> wrote:
> > Dear Syd (cc xsl-list),
> >
> > Thanks for the quick response. As you note, the actual main template
> > does a
> > lot of things that are common to all types before it gets to the
> > <xsl:choose>, and if I write completely separate templates for each
> > of the
> > types, I would need to repeat that shared code verbatim in each of
> > the
> > type-specific templates.
>
>
> Maybe write a function that returns a map containing the variables, so
> instead of $socksize you'd write, $metadata?socksize or whatever.
>
> Call that at the start of the template.  Now you have only one line,
> and you can use next-match with a parameter.  Or lots of templates, but
> each calling that common function at the start.
>
> Or you can invert it and have 30 lines of preamble and then call a
> function.
>
> It's possible to make a map (or array) whose entries are functions, so
> another possibility is a table-driven approach, where you look up in a
> table some combination of values and call the function that's listed
> there.
>
> Liam
>
> --
> Liam Quin, https://www.delightfulcomputing.com/
> Available for XML/Document/Information Architecture/XSLT/
> XSL/XQuery/Web/Text Processing/A11Y training, work & consulting.
> Barefoot Web-slave, antique illustrations:  http://www.fromoldbooks.org

Current Thread