![]() |
Модераторы: diadiavova |
![]() ![]() ![]() |
|
lankin |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 377 Регистрация: 13.12.2006 Репутация: нет Всего: нет |
Нужно создать вот такую строку:
где myNS - мой нэмспэйс, который я буду использовать внутри RSS, расширяя его. щас пока вот что есть:
Результат:
Как видите, щас нэмспэйс прописывается каждый раз внутри элемента myNS:, а мне нужно, чтобы он был прописан один раз как атрибут корневого элемента RSS: <rss version="2.0" xmlns:myNS:"http://......."> Как? Это сообщение отредактировал(а) lankin - 28.10.2009, 11:54 |
||||||
|
|||||||
diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 22 Всего: 142 |
Это управляется атрибутом exclude-result-prefixes в корневом элементе XSLT. Включённые в его значение прификсы ведут себя так как ты описываешь, а те, которых там нет декларируются в корневом элементе(как тебе надо). Дефолтное поведение видмо от XSLT-процессора зависит. Попробуй объявить этот атрибут с пустым значением.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
|||
|
||||
NiТR0 |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 28.6.2005 Репутация: нет Всего: нет |
Не знаю как у lankinа, а у меня не сработало.
Позволю себе немного расширить тему. Тема избитая, но есть один важный ньюанс: в исходном XML нет namespaces. Их не надо их вытаскивать из исходного XML, только создать новые namespaces в выходном XML. Помогите пожалуйста решить задачу. Второй день мучаюсь. Исходный XML Note: Обратите внимание, что никаких namespaces нет
На выходе должен быть такой XML
XSLT
В документации сказано: Example: Namespaces are not Attributes It is not an error to write: <xsl:attribute name="xmlns:xsl" namespace="file://some.namespace"> http://www.w3.org/1999/XSL/Transform </xsl:attribute> However, this will not result in the namespace declaration xmlns:xsl="http://www.w3.org/1999/XSL/Transform" being output. Instead, it will produce an attribute node with local name xsl, and with a system-allocated namespace prefix mapped to the namespace URI file://some.namespace. This is because the namespace fixup process is not allowed to use xmlns as the name of a namespace node. Но не сказано как добавить namespaces типа xmlns:xsi и xsi:schemaLocation. ![]() |
||||||
|
|||||||
diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 22 Всего: 142 |
NiТR0, декларации пространств имен добавляются автоматически, если в документе присутствуют элементы, относящиеся к этим пространствам. Тебе надо объявить эти пространства в XSLT-документе и формировать нужные элементы придерживаясь тех префиксов, которые объявлены в XSLT. Остальное - задача хсл-процессора.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
|||
|
||||
NiТR0 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 28.6.2005 Репутация: нет Всего: нет |
Да, вы правы.
Большое спасибо |
|||
|
||||
magelan |
|
|||
![]() потерял xPath ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 5.4.2010 Репутация: 7 Всего: 16 |
NiТR0,
будет время погуглите:
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "XML/XSLT" | |
|
Прежде чем опубликовать вопрос, попробуйте воспользоваться поиском - возможно тема уже поднималась. Также рекомендуем Вам зайти в раздел FAQ ,раздел дополняется и, возможно, там вы увидите готовое решение. Для ответов на часто задаваемые вопросы существует FAQ раздела. Новости можно публиковать в разделе новостей. Для статей так же есть специальный раздел Желаем удачи в Вашем деле! Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, diadiavova. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | XML, XSL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |