or, if you prefer, you could even use a function for this, see https://docs.basex.org/wiki/Output_Module

 

out:nl()

 

Von: BaseX-Talk <basex-talk-bounces@mailman.uni-konstanz.de> Im Auftrag von Bridger Dyson-Smith
Gesendet: Donnerstag, 24. Februar 2022 16:57
An: Ben.Engbers@be-logical.nl
Cc: Basex Mail-lijst <basex-talk@mailman.uni-konstanz.de>
Betreff: Re: [basex-talk] string-join with a newline separator?

 

Hi Ben,

 

On Thu, Feb 24, 2022 at 10:44 AM Ben Engbers <Ben.Engbers@be-logical.nl> wrote:

Hi,

My xml has the structure
<base>
   <element1>
     <al-group>
       <al>bla</al>
     </al-group>
   </element1>
   <element1>
     <al-group>
       <al>bla</al>
     </al-group>
     <al-group>
       <al>bla</al>
     </al-group>
   </element1>
</base>

The <al-group> element contains 1 to many <al> elements.

let $tekst := fn:string-join(fn:data($par//al/text()), ".") concatenates
this to:
bla.bla.bla
But I want it to return:
bla
bla
bla

Is it possible to add a newline item-separator to fn:string-join?

how about string-join($input//al/text(), '&#10;')?

 

Ben Engbers

Best,

Bridger