I think it's useful to distinguish (a) features that appeal immediately to
existing users because they make it easier to do the things that you do a lot,
and (b) features that are more strategic in nature, making it possible to do
new things that you weren't doing before, or to get significant benefits (in
say productivity, performance, or maintainability) but which may be difficult
to adopt immediately because it needs a whole different approach.
expand-text, new operators, and things like contains-token() and xsl:iterate
definitely fall in the first category.
Streaming and packages definitely fall into the second.
Maps, JSON, fn:transform, fn:serialize, xsl:evaluate, and accumulators etc are
perhaps intermediate. You probably won't change your existing code to take
advantage of them, and you probably won't use them until the next time you
write a new stylesheet that's a bit more challenging than the ones you've
written before. As John Lumley noted, we couldn't have written an XSLT compiler
in XSLT without these features - but we managed to get by without streaming and
packages. In fact, we only realised after doing it quite how much packages
could have made the job easier.
On 4 Oct 2019, at 04:31, Liam R. E. Quin liam(_at_)fromoldbooks(_dot_)org
On Thu, 2019-10-03 at 17:00 +0000, Liam R. E. Quin
What do you find most useful? Or like the best?
Many thanks to everyone who has answered so far - it’s been really
maps, fn:transform, arrays, expand-text, streaming, seem to be the top
few, with arrays & json, the new operators & other functions coming
For my part it's fn:transform() and expand-text first, and then
fn:serialize combined with expath functions that have a new usefulness
now... some of the streaming use cases i can do with xproc or xquery
but not all... i suspect packages would be a big win if we had lots of
them floating round. And i have a predilection for contains-token() :-)
Liam Quin, https://www.delightfulcomputing.com/
Upcoming courses: XSLT Two to Three, Rockville MD, Oct 2019
More courses coming in the Spring in Prague and maybe London.
Courses may also be available by video or by hot-air balloon.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com