Subject: Re: [xsl] What's the best feature in XSLT 3?|
From: "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 4 Oct 2019 07:37:20 -0000
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. Michael Kay Saxonica > On 4 Oct 2019, at 04:31, Liam R. E. Quin liam@xxxxxxxxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > On Thu, 2019-10-03 at 17:00 +0000, Liam R. E. Quin > liam@xxxxxxxxxxxxxxxx wrote: >> What do you find most useful? Or like the best? > > Many thanks to everyone who has answered so far - itbs been really > interesting. > > maps, fn:transform, arrays, expand-text, streaming, seem to be the top > few, with arrays & json, the new operators & other functions coming > next. > > 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 > > -- > 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.