Hi, 

I am using BaseX 7.8 beta 3b557bd. When I pass a variable where the value is provided by a function ( let $string-variable := freeze-test:get-localized-string('en-us''application')) that extracts the data from the database, I cannot pass it as a parameter to an xslt. It nulls the value.

I attached a code sample and a simple database that holds a single file.

In the sample, if you replace the line : let $string-variable := freeze-test:get-localized-string('en-us', 'application') with let $string-variable := 'application', you'll notice that the value is output correctly. 

The issue is not with getting the value. When using the original variable setting (let $string-variable := freeze-test:get-localized-string('en-us''application')), the debug line (let $debug := file:write('debug-string-var.txt', $string-variable)) does output the extracted value in the .txt file correctly, which means the variable $string-variable has been set, it just doesn't survive being passed as a parameter to xslt:transform. 

Note that this used to work in BaseX 7.7.2. The fact that the variable gets nulled is a completely new phenomena.

To access the test function: http://localhost:8984/test/xsl-params


--
France Baril
Architecte documentaire / Documentation architect
france.baril@architextus.com
(514) 572-0341