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