функция. Но, глядя на похожие вопросы, вы уже разобрались? Вместо этого вы должны использовать результаты из механизма xquery механизма eXist для обработки XSLT.

: eXist-db 4.2.1, XQuery 3.1, XSLT 2.0

В eXist-db я загружаю XSLT-файл, который содержит ссылку на коллекцию в eXist (чтобы выполнить поиск документов, найденных там, используя ключ). Эта ссылка, кажется, выбрасывает ошибку из Саксонии.

Exception while transforming node: Exception thrown by URIResolver

Документы XML расположены по адресу/db/apps/deheresi/data/Документы XSLT расположены по адресу/db/apps/deheresi/data/styles

В функции преобразования я передаю параметр из XQuery в файл XSLT дляабсолютный путь в папку данных:

<param name="paramDatauri" 
  value="xmldb:exist:///db/apps/deheresi/data/"/>

В файле XSLT этот параметр получен и введен в переменную:

 <xsl:variable name="coll" 
  select="collection(concat($paramDatauri,'?select=*.xml'))"/>

Я посмотрел на возможные параметры, которыеСаксонский может понадобиться, но я не нашел ни одного, который может решить эту проблему.

РЕДАКТИРОВАТЬ # 1: я пытался передать атрибут в XQuery transform ()

 <attributes>
    <attr name="paramSax" value="COLLECTION_URI_RESOLVER"/>
 </attributes>

вСаксонская документация, но я получаю сообщение

 `Unable to set up transformer: Unknown configuration property`

Я не знаю, является ли это избыточным / ненужным, или я неправильно настроил атрибут.

РЕДАКТИРОВАТЬ # 2: Я попытался жестко закодировать абсолютный путь в файл XSL:

<xsl:variable name="coll" 
  select="collection('xmldb:exist:///db/apps/deheresi/data/?select=*.xml')"/>

А также относительный путь:

<xsl:variable name="coll" 
  select="collection('/db/apps/deheresi/data/?select=*.xml')"/>

Всегда возвращаю одну и ту же ошибкуException thrown by URIResolver.

Это первый раз, когда я пытался использоватьcollection()&nbsp;функция в XSLT в eXist-db.

Большое спасибо.