По какой-то причине base-uri() не возвращает uri исходного файла, когда я запускаю XSLT (используя XSLT2, Saxon 9.4 PE).base-uri не возвращает uri исходного документа
Вот мой XSLT тест
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:fn="http://www.w3.org/2005/xpath-functions"
xmlns:xdt="http://www.w3.org/2005/xpath-datatypes"
xmlns:err="http://www.w3.org/2005/xqt-errors"
exclude-result-prefixes="xs xdt err fn">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<xsl:value-of select="base-uri()"></xsl:value-of>
</xsl:template>
Когда я бегу это на исходном файле XML, я просто получить
<?xml version="1.0" encoding="UTF-8"?>
Обратите внимание, что я в состоянии восстановить таблицу стилей URI просто отлично использует base-uri (document ('')).
У меня также не было успеха, используя документ-uri (/).
ОБНОВЛЕНИЕ: похоже, что что-то не так. Кажется, что я ничего не получаю, чтобы процессор выглядел в каталоге SOURCE.
Когда я пытаюсь «документ („Dummy.xml“,.), он говорит, что не может найти„Dummy.xml“несмотря на то, что это имя исходного файла.
Может быть, я должен заново установить файл jar или адрес электронной почты EditiX.
Мне нужно получить базуру, пожалуйста, помогите мне дать m e some suggestion ... –
Чтобы получить базовый uri исходного xml, вы должны просто использовать base-uri(). Это то, что я использую для надежного получения каталога исходного XML-файла: –
Если вы ищете uri таблицы стилей XSL, static-base-uri() должен работать большую часть времени. –