XQuery - передать HTML в параметре в XSLT - PullRequest
0 голосов
/ 04 ноября 2018

В XQuery 3.1 у меня есть функция, которая выводит фрагмент HTML. Эта функция:

declare function document:doc-citation($currentdoc as xs:string)
{
  let $citation :=
        (<div>
                <p  class="cite-document">To cite this document: </span>
                <p>{common:cite-doc($currentdoc,"html")}</p>
        </div>)

 return $citation               
 };

Выводит это:

<div>
  <p class="cite-document"><span>To cite this document: </span></p>
  <p><span>Fooname. <i>Foo title</i>. Foopublisher. 2018.</span></p>
</div>

Теперь я хочу передать этот полный HTML-код в параметр для XSLT. Таким образом, в функции XQuery transform:transform(), которая в противном случае отлично работает для других (строковых) параметров, я пытаюсь передать HTML следующим образом:

<param name="paramCitation" value="{document:doc-citation($mydoc)}"/>

Какой XSLT 2.0 должен получить через:

<xsl:param name="paramCitation"/>

И вывести HTML через этот XSLT:

<xsl:value-of select="paramCitation"/>

Я никогда раньше не пытался передавать HTML через параметр XQuery / XSLT.

Мне кажется, что где-то я неправильно обрабатываю HTML в параметре XQuery или неправильно обрабатываю вывод параметра в XSLT (проблемы преобразования HTML / строк)?

Заранее спасибо.

...