XSLT in BaseX - no node parameters
Dear BaseX folks, the documentation of the XSLT module says: "Variables can be bound to a stylesheet via $arguments (only strings are supported when using XSLT 3.0 and Saxon). " That is a pity! Are there plans to remove this limitation?
Kind regards,Hans-Jürgen
Hi Hans-Jürgen,
It would be pretty much effort to provide a full bidirectional mapping for all BaseX and Saxon data types. In addition, we’d need to introduce custom implementations for different versions of Saxon, and we’d need to ensure that the binding works with each new version of Saxon.
Hope this helps, Christian
Quoted text · Hans-Juergen Rennau · 14 lines
On Mon, Sep 18, 2023 at 2:09 PM Hans-Juergen Rennau <hrennau at yahoo.de> wrote: > Dear BaseX folks, > > the documentation of the XSLT module says: > > "Variables can be bound to a stylesheet via $arguments (only strings are > supported when using XSLT 3.0 and Saxon). " > > That is a pity! Are there plans to remove this limitation? > > Kind regards, > Hans-Jürgen >
Thank you for this explanation. A pity it remains nevertheless, as the integration of XSLT into XQuery is very valuable, XSLT means Saxon, and the obligation to use string parameters is a most severe limitation. Fortunately, one can create workarounds, e.g. generate an edited version of the stylesheet containing the parameter values as default values. (Credit to Hauke Brandes for this original idea!)
Greetings, Hans-Jürgen
Am Montag, 25. September 2023 um 17:30:35 MESZ hat Christian Grün <christian.gruen at gmail.com> Folgendes geschrieben:
Hi Hans-Jürgen,
It would be pretty much effort to provide a full bidirectional mapping for all BaseX and Saxon data types. In addition, we’d need to introduce custom implementations for different versions of Saxon, and we’d need to ensure that the binding works with each new version of Saxon.
Hope this helps, Christian
Quoted text · Hans-Juergen Rennau · 16 lines
On Mon, Sep 18, 2023 at 2:09 PM Hans-Juergen Rennau <hrennau at yahoo.de> wrote: > Dear BaseX folks, > > > the documentation of the XSLT module says: > > > "Variables can be bound to a stylesheet via $arguments (only strings are supported when using XSLT 3.0 and Saxon). " > > > That is a pity! Are there plans to remove this limitation? > > > > Kind regards, > Hans-Jürgen
Contributions to our open-source project that improve the situation are welcome ;)
Hans-Juergen Rennau <hrennau at yahoo.de> schrieb am Mo., 25. Sept. 2023, 18:46:
Quoted text · Hans-Juergen Rennau · 40 lines
> Thank you for this explanation. A pity it remains nevertheless, as the > integration of XSLT into XQuery is very valuable, XSLT means Saxon, and the > obligation to use string parameters is a most severe limitation. > Fortunately, one can create workarounds, e.g. generate an edited version of > the stylesheet containing the parameter values as default values. (Credit > to Hauke Brandes for this original idea!) > > Greetings, Hans-Jürgen > > Am Montag, 25. September 2023 um 17:30:35 MESZ hat Christian Grün < > christian.gruen at gmail.com> Folgendes geschrieben: > > > Hi Hans-Jürgen, > > It would be pretty much effort to provide a full bidirectional mapping for > all BaseX and Saxon data types. In addition, we’d need to introduce custom > implementations for different versions of Saxon, and we’d need to ensure > that the binding works with each new version of Saxon. > > Hope this helps, > Christian > > > On Mon, Sep 18, 2023 at 2:09 PM Hans-Juergen Rennau <hrennau at yahoo.de> > wrote: > > Dear BaseX folks, > > the documentation of the XSLT module says: > > "Variables can be bound to a stylesheet via $arguments (only strings are > supported when using XSLT 3.0 and Saxon). " > > That is a pity! Are there plans to remove this limitation? > > Kind regards, > Hans-Jürgen > >
Written for BaseX 10.7. BaseX may have changed since: please check the current documentation.