В ряде каталогов, таких как "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 ответа2

0

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

<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\{.}

0

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .