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 - no more extension node-set() function needed (huge!)
* regex support in functions and xsl:analyze-string
* tunnel parameters?
I am sure there is more ... and I think anyone still using XSLT 1.0 owes it
to eirself to learn that XSLT 2.0 has had these features since 2007 (and
On Fri, Sep 18, 2020 at 1:55 PM Liam R. E. Quin
On Fri, 2020-09-18 at 15:04 +0000, Graydon graydon(_at_)marost(_dot_)ca wrote:
Having seen XSLT course announcements here, I hope this is not an
I think it very appropriate.
On the theory that sending someone to learn XSLT 3.0 before they've
got the XSLT 2.0 concepts is neither kind nor useful, are there
worthwhile, online, "You've been using XSLT 1.0 since forever, here's
XSLT 2.0" courses still available?
A few have been posted. The "XSLT two to three" course i've run in
person assumes basic XSLT, but i don't yet have that online. When i do,
probably next month, i plan to add some help for XSLT 1 users, since
people can't stop and ask questions¹.
Probably the biggest differences to learn in the move from XSLT 1 to
either 2 or 3 are...
* value-of should have been <xsl:text select=..../> really
* sequences and types
* XSLT functions
* massively bigger function library
* a few idioms, such as (e1, e2) and if..then...else in XPath
* a few differences, such as string(seq) no longer using only the first
item in the sequence
Although i don't think it necessary to become proficient in XSLT 2
before learning XSLT 3, a course focusing on what's new in 3 won't talk
about grouping, tunnel parameters, the uses of types for variables, and
so on. But the more of that the teacher adds, the longer the course.
¹ Note: i’m finding it harder than i expected to move from custom
courses or courses very tailored to the attendees, to television mode.
People expect to pay much less for prerecorded courses, quite
reasonably, but i think attendees get less out of them. A chemistry
teacher i had used to say, “To read is to forget; to see is to
remember; to do is to learn” which is why we do experiments. Seeing a
room of people run 9,000+ transformations in a few seconds using
fn:transform(). or understanding accumulators, reminded me of this.
A mixture of pre-recorded sessions and QA sessions might be a
compromise, or possibly hiring someone to do a one-day custom
interactive session after people have done a course. What do you think?
Or are my concerns without merit and TV-style is fine?
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
...Wendell Piez... ...wendell -at- nist -dot- gov...
...wendellpiez.com... ...pellucidliterature.org... ...pausepress.org...
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com