![]() |
|
Модераторы: diadiavova |
![]()
|
|
| lusever |
|
||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 12.4.2007 Репутация: нет Всего: 3 |
Дан xml:
Нужно, чтобы строковые значения с атрибутом span="...", оборачивались xslt в мой <span class="class-name"></span>. Проблема вообщем-то в том, что исходный xslt файл нам неизвестен, т.е. править его нельзя. Мы его импортируем например из: <xsl:import href="xz.xsl"/> в my.xsl. Далее, в my.xsl я делаю так:
Но есть загвоздка. Код обрабатывает лишь те ноды, которые в xz.xsl обрабатываются так:
А те что в xz.xsl:
Как мне это побороть? xz.xsl менять нельзя. |
||||||||
|
|||||||||
| lusever |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 12.4.2007 Репутация: нет Всего: 3 |
Спасибо за то, что создали новую тему и ответили мне. Советую, при необходимости ответить, использовать другой браузер. У меня Firefox тоже местами глючит. Мне block не надо обрамлять. Надо, что бы <xsl:value-of select="all"/> уже содержал необходимый <span class="class-name">. |
|||
|
||||
| _Valery |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 5.2.2007 Репутация: нет Всего: нет |
lusever, шаблон
выберет:
и
А xz.xsl обработает только первый из них. Это сообщение отредактировал(а) _Valery - 29.5.2007, 20:31 |
||||||
|
|||||||
| lusever |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 12.4.2007 Репутация: нет Всего: 3 |
Я прекрасно понимаю, что этот метод сработает только для первого случая. А как нужно мне сделать, чтобы первый и второй случай работали (как можно универсальнее).
|
|||
|
||||
| _Valery |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 5.2.2007 Репутация: нет Всего: нет |
lusever, изменить/дополнить xz.xsl, потому что тот же
непонятно зачем нужен в контексте данной задачи. |
|||
|
||||
| lusever |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 12.4.2007 Репутация: нет Всего: 3 |
Повторюсь. xz.xsl, к сожалению, изменять нельзя. Не знаю уже как вывернуться. Неделю бьюсь.
|
|||
|
||||
| _Valery |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 5.2.2007 Репутация: нет Всего: нет |
lusever, обработка узлов, содержащих атрибут span должна происходить именно в xz.xsl?
Вообще говоря, вижу два возможных варианта: • дописать дополнительные шаблоны в my.xsl; • переписать уже имеющуюся выборку узлов в my.xsl и ничего не менять в xz.xsl, но это будет работать только в предоставленном вами xml-документе, то есть даже смена порядка следования узлов all все собьет. |
|||
|
||||
| lusever |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 12.4.2007 Репутация: нет Всего: 3 |
Если можно, попjдробнее про дописать шаблон в my.xsl.
|
|||
|
||||
| _Valery |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 5.2.2007 Репутация: нет Всего: нет |
Например:
|
|||
|
||||
| lusever |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 12.4.2007 Репутация: нет Всего: 3 |
Очень хорошо.
Вы забыли про <xsl:apply-imports/>. Никто не знает что они там в xz.tpl натворят. |
|||
|
||||
| _Valery |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 5.2.2007 Репутация: нет Всего: нет |
||||
|
||||
| lusever |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 12.4.2007 Репутация: нет Всего: 3 |
К примеру, в xz.xsl кто-то написал:
И надо чудесным образом, превратить в:
|
||||
|
|||||
![]()
|
| Правила форума "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. |