On Fri, 2020-09-18 at 19:31 +0000, Wendell Piez
wapiez(_at_)wendellpiez(_dot_)com
wrote:
Hi,
In addition to Liam's list I think there are a couple more vital
features
one needs to get a taste of in XSLT 2.0 or XSLT 3.0, if one has been
subsisting on an XSLT 1.0 diet:
* <xsl:for-each-group> and its uses
* temporary trees -
* regex support in functions and xsl:analyze-string
* tunnel parameters?
Yeah, those are all huge, although i think easier to learn than things
like ($a, 'none')[1], which are startling because XSLT 1 didn't have
sequences.
For those wondering, ($a, $b, $c, ...)[1] returns the first non-empty
non-false item out of $a, $b and $c, so it's a shortcut for
<xsl:sequence select="if ($a) then $a else $b" />
On regular expressions - it's huge, but it's also dangerous, as e.g.
replace(price div 100, '\.\d*$', '') is not a good way to write
math:floor().
An XSLT-3-from-scratch course could easily take a full week and be
woefully incomplete. Or totally overwhelming. Or both.
On the other hand, i try & include "don't be afraid of the specs" in
the courses i teach, and then not cover every detail. So maybe it's
possible.
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
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--