Импорт файлов xslt с неизвестным именем в основной файл xslt
То, что я пытаюсь и не могу сделать, это импортировать список файлов xslt в другой файл xslt, и я не буду знать имена файлов, которые нужно импортировать, пока программа не запустится.
Фон: я пишу механизм расширения для чужого (python) проекта. Проект использует скрипт xslt для преобразования документа xml в html. Я создал каталог под названием "расширения" в рамках проекта, и я хочу, чтобы пользователи могли размещать произвольные подкаталоги в этом каталоге расширений. Каждый подкаталог представляет расширение и будет иметь ряд различных файлов, включая, возможно, файл xslt.
У меня есть скрипт, который сканирует все подкаталоги для файлов xslt, а затем записывает новый файл xslt ('комбинированный. Xsl') с серией тегов, ссылающихся на все найденные файлы xslt. Затем я импортирую файл "комбинированный. Xsl" в основной файл проекта xslt.
Моя первая проблема заключалась в том, что проект, как правило, будет устанавливаться в каталог администратора (например, /usr/local/lib/python3.5/dist-packages/ или аналогичный), но вызываться обычными пользователями. Это означает, что когда сценарий пытается создать 'комбинированный.xsl', он не может быть записан из-за недостаточных разрешений.
Моей следующей мыслью было сделать 'комбинированный.xsl' временным файлом (используя модуль tempfile), но я не могу ссылаться на него из основного файла xslt проекта, потому что временные файлы создаются в разных местах в разных системах.
Есть ли способ заставить любой из этих подходов работать, или есть какой-то совершенно другой подход, который мне не хватает? Я чувствую, что это должно быть необычной проблемой, но это слишком абстрактно для Google, чтобы быть очень полезным.
1 ответ
Так что в конце концов я нашел совершенно другой способ решения проблемы, который не включал запись в файл. Однако, если кто-то имеет дело с подобной проблемой, ответ на этот вопрос стоит посмотреть.