Я использую XSLT для разбора текстового содержимого элемента XML.Этот текст содержит новые строки, но я не могу их правильно проанализировать.Я использую код, который нашел в Интернете, чтобы разделить текст.Вот соответствующая часть кода.
<xsl:variable name="first">
<xsl:value-of select="substring-before($source, $newline)"/>
</xsl:variable>
<xsl:variable name="rest">
<xsl:value-of select="substring-after($source, $newline)"/>
</xsl:variable>
Это часть шаблона recusrive, который помещает в себя $ rest.
Проблема в том, что образец кода не определяет $ newline,Если я установлю $ newline на букву, например, 's', текст будет очень просто разделен (например, он превратит входные данные «звучащие» в «re» и «раунд»).Но когда я пытаюсь установить $ newline на символ новой строки, то есть 

или  
, он повторяется вечно и вызывает переполнение стека.Я также попытался определить ENTITY для новой строки, но это не имеет значения.
На входе есть обычный CR / LF в конце каждой строки (я нахожусь в окне Windows).
Кто-нибудь имеет представление о том, что я делаю неправильно, или предложить подход?
Спасибо, Mathijs