xslt - проверить, что документ существует - PullRequest
2 голосов
/ 28 ноября 2011

В XSL я обращаюсь к XML-файлу, который содержит переменную конфигурации, которая используется в таблице стилей с помощью функции документа.

<xsl:variable name="files" select="document(concat('../../../', utils:Replace(./@src, '/groceries/MarketingContent/', 'MarketingContent/'), '.xml'))/Files" />

<xsl:call-template name="script">
                    <xsl:with-param name="src" select="concat('/groceries/',$files/@outputPath,'/', utils:Replace($files/File/@name, '.js', concat('.', $files/@hashKey, '.js')))"/>
                  </xsl:call-template>

Проблема в том, что если этот XML-документ не существует, я получаю сообщение об ошибке, что делает сайт недоступным.

Я использую версию 1.0, есть ли способ проверить, существует ли файл, чтобы изящно решить эту проблему ??

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

Ответы [ 2 ]

2 голосов
/ 28 ноября 2011

Нет способа сделать это в XSLT 1.0 без специфичных для процессора расширений.

0 голосов
/ 28 ноября 2011

Я почти уверен, что в XSLT 1.0 нет стандартного способа сделать это. Но если вы сообщите нам, какой процессор XSLT вы используете, возможно, вы можете использовать расширения, специфичные для этого процессора.

например. см

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...