Я пишу таблицу стилей, которая в конечном итоге объединяется (посредством кода) с различными другими таблицами стилей вне моего контроля и области действия, прежде чем преобразовывать XML.
Я пишу "xsl: element" в шаблонах, однако я не знаю, определены ли уже другие шаблоны, которые я не контролирую, пространство имен, прикрепленное к элементу-предку (т.е. xmlns = "blah").
В этом случае, если я не укажу пространство имен в элементе xsl:, я получу xmlns = "", возвращая этот элемент без пространства имен. Однако я не хочу, чтобы это происходило, но я не могу специально установить для пространства имен буквальное значение, а также не могу установить пространство имен по умолчанию для таблицы стилей.
Я видел множество сообщений, в которых пытались удалить xmlns = "", но я не считаю, что какие-либо решения подходят для этой ситуации. В основном это связано с настройкой пространств имен на всех узлах, настройкой значений по умолчанию или исключением префиксов результатов для #default.
Я использую XSLT 1.0 и с удовольствием ищу предков для ближайшего элемента, для которого определено пространство имен, отличное от пространства имен, и использую его в качестве пространства имен элемента. К сожалению, мне не удалось этого добиться, поэтому любая помощь приветствуется. Спасибо, извиняюсь, если я пропустил существующее решение.