Questions tagged [xslt-3.0]

Use this tag for questions specific to XSL Transformations version 3.0 and no other version.


News: Since June 8th, 2017, XSLT 3.0 is a W3C Recommendation, implemented by Saxon since the release 9.8 the same week and subsequently by the releases Saxon 9.9 and Saxon 10.8 on the Java and .NET framework platform as well as by the now stable Saxon 11.5 release now available as Saxon Java 11.5 for Java, SaxonC 11.5 for C++/C, Python, PHP and as SaxonCS 11.5 for the .NET Core 6 or 7 platform and finally since 2023 in the latest Saxon 12.0 releases for Java (HE, PE, EE), C/C++, PHP, Python (SaxonC 12.0 HE, PE, EE as well as PyPi packages saxonche, saxoncpe, saxonche). XSLT 3.0 is also largely (except streaming) implemented by the current release of Altova (XMLSpy, Raptor version since 2017 release 3 or any later release).


XSLT 3.0 introduces the following new features via elements, attributes, and expressions:

References

XSLT 3 processors

  • Saxon 9.8, 9.9, 10, 11, 12 by Saxonica, exists in the free, open-source HE edition and the commercial PE and EE editions, for 9.8 all editions are available for Java or .NET framework or C/C++, the current stable releases 10.8 and 11.5 are available for Java and .NET framework; Saxon 11.5 also for as SaxonC 11.5 for C/C++/PHP/Python. The 9.9 release Java has been cross-compiled as Saxon-C 1.2 for C/C++ with bindings to be used as a PHP extension and as a Python 3 module. The latest stable Saxon releases 10 and 11 available for Java and C/C++/Python/PHP as well as via SaxonCS for .NET 5/6/7 make xsl:evaluate and functions expressions and higher-order functions available in all editions. The newest release in 2022 was Saxon 11, the first for .NET Core 5 or .NET 6, using an XSLT 3.0 based transpiler approach to convert the Java code base into C# code to be compiled and built for .NET Core 5. Unfortunately SaxonCS 11 is currently only available as the EE edition. The C/C++/Python/PHP SaxonC 11.5 and the latest Java Saxon 11.5 release have been published in February 2023. The newest release is 12.0 available since January 2023 for Java, .NET 6/7 as SaxonCS, SaxonC for C/C++/PHP/Python as well as on PyPi.org for Python 3.
  • Altova Raptor, Altova XMLSpy (the XSLT 3.0 implementation in Altova products supports the W3C recommendations of XSLT 3.0 and XPath 3.1, except streaming in XSLT 3)
  • Saxon-JS 2 is available for Node.js (npm install saxon-js, npm install xslt3) and the browser
  • Saxon HE 11 Java has also been successfully cross-compiled with the latest IKVM to .NET 6 to be usable from .NET 6 or 7 code

Online Editors

XSLT 3.0 support in editors and IDEs

Tuturials


Online Training

"What's New in XSLT 3.0: Part 1" -- A Pluralsight video-course (5.5h), by Dimitre Novatchev

"The Evolution of XPath: What’s New in XPath 3.0" -- A Pluralsight video-course (4.5h), by Dimitre Novatchev


731 questions
-1
votes
1 answer

traverse json data using xslt

Here is my xslt input:- { "array1": [ { "id": "banglore", "mappingData": [ { "name": "v1" }, { "name": "v2", …
vivek
  • 115
  • 2
  • 9
-1
votes
1 answer

How to Remove (0) from String in XSLT

I wanted to format the string in XSLT- Input 'ABC01312()wer**(0)**e66' Expected output - '0131266 I am using below code but here unable to remove**(0)** translate($String, translate($String, '0123456789', ''), '') Replace is not working, tried…
Awanish
  • 3
  • 2
-1
votes
1 answer

regex-group(last()) in XSLT

Working on linking of some text in input with analyze-string but not able to retrive regex-group(last()) in script. You can check transform at https://xsltfiddle.liberty-development.net/bnnZVG As you see, current output
Rupesh_Kr
  • 3,395
  • 2
  • 17
  • 32
-1
votes
2 answers

Grouping in XSLT3 with xsl streaming, but getting 'Template rule is not streamable' error

Please suggest how to do grouping withstream option xslt3. Here total height of each Table (grouping on its ID, if same table info repeated) needs calculate. Input XML:
Rudramuni TP
  • 1,268
  • 2
  • 16
  • 26
-1
votes
1 answer

XML to JSON Transformation in XSLT 3.0

I am trying to convert XML data to JSON in XSLT 3.0 using xml-to-json function. Can any one please provide me the Xslt 3.0 for the below requirement. Example XML is: on
-1
votes
2 answers

Does xslt be used to add space after lowercase followed by Uppercase letter

I have some simple strings: Ex: DeFacto, RightOfWay, HalfYearly etc How can i insert a space between the lowercase and the uppercase using a function in xslt 2.0 or xslt 3.0. Desire output: De Facto, Right Of Way, Half Yearly
DanielCSD
  • 73
  • 1
  • 8
-2
votes
2 answers

Need help on value comparison using XSLT

I have a XML which have two parent nodes (Base, Sub). I need to write a XSLT to get the values for below condition. Condition: If the value inside Sub contains in Base also XSLT should add that value to the output. Input XML:
-2
votes
2 answers

ASK XPATH 3.0 with WSO2-ESB

i want integration XSLT 3.0 with WSO2 Integration Studio 7.2, how to do that. i newbie with this tools studio. thanks
-2
votes
1 answer

How to identify tab space in xslt

I have working in xml to html conversion. But the table is a typeset format. In between text tab space presented. input format 15 30 35 12 40 65 Expected output …
Mahesh
  • 27
  • 2
  • 5
-2
votes
1 answer

IF Condition in XSLT by comparing the count of sub node in parent node

I am trying to perform loop A or Loop B based on the count of the nodes empjobcount -> "count(employmentNav/EmpEmployment/compInfoNav/EmpCompensation/startDate)" compcount -> "count(employmentNav/EmpEmployment/jobInfoNav/EmpJob/startDate)" how…
Krishna
  • 1
  • 2
-2
votes
1 answer

move element from an xml file to another xml element using xslt-3

Given the following example xml file: Gambardella, Matthew XML Developer's Guide Computer
user9413573
1 2 3
48
49
15 30 35