Создание таблицы стилей XSL, чтобы сделать атрибут пути к файлу активным

В ряде каталогов, таких как "AAA", "BBB" и "CCC", находятся сотни ежемесячных папок с датами, таких как "201209", "201310" и "201701". В каждой из этих ежемесячных папок есть сотни PDF-файлов, каждый из которых называется GUID (123e4567-e89b-12d3-a456-426655440000).

Это ситуация на диске. Таким образом, каждый PDF-файл имеет путь типа "AAA/201704/{123e4567-e89b-12d3-a456-426655440000}"

Из основного XML-файла я смог разбить каждый номер дела на папку, такую ​​как "KN2012_00435", "FN2015_01234" и "BN2017_08762", и в каждой из этих папок есть один XML-файл для каждого PDF-файла. с этим номером дела.

В этих XML-файлах местоположение PDF-файла указывается в виде атрибута XML DocumentID="{123e4567-e89b-12d3-a456-426655440000}".

Моя первая проблема - создать таблицу стилей XSL, чтобы сделать этот атрибут кликабельным. Можно ли это сделать?

Вторая проблема заключается в том, что я хотел бы поместить эти папки в каталог в дереве каталогов из PDF-файлов.

В файле:

//casenumbers/KN2012_00435/{123e4567-e89b-12d3-a456-426655440000}

.... есть кликабельный GUID, идущий в....

//docs/AAA/201704/{123e4567-e89b-12d3-a456-426655440000}

Можно ли это сделать?

2 ответа

Я смог решить первую часть моей проблемы с помощью этого куска кода:

<xsl:for-each select="//dbo.Documents/@DocumentID">
    <tr bgcolor="#FBF5A4">
        <td><xsl:value-of select="local-name()" /></td>
        <td><a href="{.}"><xsl:value-of select="." /></a></td>
    </tr>
</xsl:for-each>

Вторая проблема состоит в том, чтобы настроить скорректированный href так, чтобы он ссылался (в файловой системе Windows) на K:\docs\anydirectory\anydirectory\{.}

Я не думаю, что вы предоставили достаточно информации, чтобы дать вам какой-либо код, но да, в XSLT 2.0 это возможно. Вам нужен XSLT 2.0, чтобы (а) вы могли использовать функцию collection(), чтобы вернуть все файлы в каталоге, и (б) вы можете использовать инструкцию xsl:result-document для записи нескольких выходных файлов.

Когда вы говорите, что хотите, чтобы что-то было "кликабельным", я предполагаю, что это означает, что вы генерируете HTML и просматриваете его в браузере. Но это предположение. Вещи также могут быть кликабельны, например, в PDF. Я не знаю, как это сделать, хотя, вероятно, это можно сделать.

Другие вопросы по тегам