![]() |
|
Модераторы: diadiavova |
![]()
|
|
| izOne |
|
||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 22.8.2003 Где: Украина, Киев Репутация: 1 Всего: 4 |
Возможно ли сделать преобразвание что бы из:
model.xml
и view.html.xml
Получить на выходе:
Если да, то как связать два входных xml + один xsl? --------------------
Успех ждет каждого, но иногда всю жизнь. |
||||||
|
|||||||
| maxim1000 |
|
||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 7 Всего: 110 |
1-й xml - тот, который обрабатывается 2-й - через функцию document пример:
честно говоря, так и не понял, какое именно преобразование нужно лучше бы его описать, а не просто примером... -------------------- qqq |
||||||
|
|||||||
| izOne |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 22.8.2003 Где: Украина, Киев Репутация: 1 Всего: 4 |
maxim1000
Хочется того, чтобы блоки в шаблоне web-странички задавались кодером посредством аттрибутов id, а небыло чего-то типа
В идеале: 1. скриптом генерить данные(model.xml) 2. кодер пишет шаблон(view.html.xml, view.xul.xml). 3. xsl'ем заполняем шаблон данными, причем сам xsl не должен содержать никаких html(xul)-тегов, а только выполнить трансформацию шаблона в готовую страничку... --------------------
Успех ждет каждого, но иногда всю жизнь. |
|||
|
||||
| izOne |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 22.8.2003 Где: Украина, Киев Репутация: 1 Всего: 4 |
Что-то дальше
не идет --------------------
Успех ждет каждого, но иногда всю жизнь. |
|||
|
||||
| IZ@TOP |
|
||||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: нет Всего: 73 |
izOne, чего то ты не то делаешь.
Может я в чем то отстал, но XSL на то и XSL чтбы использовать его совместно с HTML (генерить данные и т.п.), или для генерации XML. А при чем тут генерирование HTML из XML понять не могу. XML обычно содержит данные, XSL шаблон представление. Добавлено @ 17:00 Что то на подобии:
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
||||
|
|||||
| izOne |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 22.8.2003 Где: Украина, Киев Репутация: 1 Всего: 4 |
Не обязательно с хтмл, и скорее всего не для генерации хмл, а для преобразования одного xml'я в другой xml. Чем макет поступивший от верстальщика не XML(xHTML)? Его ведь можно преобразовать средствами xslt в шаблон. Мне это видится следующим образом: 1. xml(макет) + xslt1 = xslt2 2. xslt2 + xml(данные) = результат + в том, что идет четкое разделение работы дизайнера, верстальщика, кодера и программиста. Style-free XSLT Style Sheets --------------------
Успех ждет каждого, но иногда всю жизнь. |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 7 Всего: 110 |
пропустил сообщения от 6.01...
можно попробовать ввести специальные теги: MytagActiveHeader, MytagNonActiveHeader все, кроме них копировать, а вместо них вставлять информацию из XML с данными... кроме того, надо будет как-то формализовать, какая часть view.html.xml относится к страничке вообще, а какую часть нужно повторять для каждого элемента представь: т.к. мы не хотим работать с XHTML тегами в нашем XSL, то и их значения он знать не будет значит, надо ему объяснить, что список должен быть один, а элементов списка - столько, сколько заголовков, а не создавать, например, отдельную строку таблицы для каждого (тоже, кстати, выглядит логично) для этого тоже можно будет сделать тег... вроде MytagForEachHeader, т.е. все, что снаружи будет делаться один раз, а внутренняя часть - повторяться для каждого заголовка в результате мы получим надстройку, которая представляет собой парсер нашего языка над XSL, это еще можно было бы понять, если бы этот наш язык решал какие-то сильно другие задачи - тогда бы это можно было назвать упрощением, но делать ведь он будет практически то же самое, что и XSL (точнее, часть этого) т.е. получится парсер "своего XSL", построенный над обычным... у меня сильные сомнения в его эффективности... -------------------- qqq |
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: нет Всего: 73 |
Т.е. ты предлагаешь верстальщику вместо HTML страницы писать описание на XML для генерации оной? Мне почему то казалось что все есть несколько проще. И по поводу генерации XML. Я разве не тоже самое сказал? Из чего еще XSL может генерировать XML? Ответ: из XML'я! Добавлено @ 02:48 maxim1000, вот, вот. У меня тоже такие же сомнения -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| izOne |
|
||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 22.8.2003 Где: Украина, Киев Репутация: 1 Всего: 4 |
maxim1000
? Такое указание тегов ведь допусимо верстальщиком?... кодер знает что такие теги есть и знает какой формат model.xml. правильно? кодер пишет xsl и при встрече @tag=MytagForEachHeader вызывает шаблон с его обрабокой столько раз, сколько новостей в model.xml. Он также знает, что если у новости стоит @active="1", то надо к обработать li[@tag=MytagActiveHeader], иначе li[@tag=MytagNonActiveHeader].
так делать не совсем хочется... --------------------
Успех ждет каждого, но иногда всю жизнь. |
||||||
|
|||||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: нет Всего: 73 |
izOne, я немного не понял описанного кода... что он вообще делает?
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| izOne |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 22.8.2003 Где: Украина, Киев Репутация: 1 Всего: 4 |
IZ@TOP
Если насчет последнего поста, то это приблизительный код который выдирает из model.xml новости, и заполняет ими шаблон. Еще раз о, собственно, вопросе темы... не хочется вписывать xsl напрямую в шаблон от верстальщика. Хочется штобы верстальщик задавал тегами(напр. tag="") участки шаблона, чтобы потом кодер мог использовать их в xslt-листе. При этом если верстальщик изменяет структуру шаблона, то это изменение не требует изменения xslt. Такое вообще, в принципе возможно??? --------------------
Успех ждет каждого, но иногда всю жизнь. |
|||
|
||||
| maxim1000 |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 7 Всего: 110 |
ну, вообще-то, я имел в виду просто:
но можно и так, как у тебя... твой вариант уменьшает количество текста, которое надо написать, но ним неудобно будет пользоваться, если, например, какой-нибудь тэг (из нововведенных) будет содержать в себе несколько html-ских, тогда получится, что свойство tag относится только к первому, а дизайнер (к примеру) хотел, чтобы относился к этому и следующему...
основной вопрос - почему? может показаться, что я навязываю отказ от идеи этой темы - ни в коем случае, просто я считаю, что лучше здесь все-таки использовать xsl и мне интересны аргументы против этого... если вопрос в том, что для написания такого текста нужно знать xsl - совсем необязательно, можно просто рассказать дизайнеру про несколько тегов оттуда (xsl:for-each, xsl:if) или даже про несколько способов их использования: <xsl:for-each select="..."> <xsl:if test="@active=1"> <xsl:if test="@active=0"> и пусть они для него будут просто строчками ничего не значащего кода это, в некотором смысле, - просто заменители тех тегов, которые я предложил... -------------------- qqq |
||||
|
|||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: нет Всего: 73 |
izOne, если подобное возможно я бы хотел это увидеть собственными глазами Добавлено @ 23:18 Хотя по моему это изврат... да и если посмотреть предложения о найме верстальщиков, там почти всегда встречается требование о знании XSLT. Добавлено @ 23:21 izOne, тем более то что ты хочешь, по моему скромному мнению, это тоже самое что писать на РНР парсер мини РНР. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| izOne |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 22.8.2003 Где: Украина, Киев Репутация: 1 Всего: 4 |
IZ@TOP
Только я пока не понял почему не передается <xsl:param name="href" /> и <xsl:param name="title" /> при вызове шаблона <xsl:template match="a[@vid='url']"> вот здесь:
Кто-нибудь знает почему? maxim1000 просто сейчас приходиться самому и цмс писать/доделывать + перегонять html в шаблоны... времени не хватает на все и хочется немного облегчить себе работу Это сообщение отредактировал(а) izOne - 17.1.2006, 00:39 --------------------
Успех ждет каждого, но иногда всю жизнь. |
||||
|
|||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: нет Всего: 73 |
izOne, хочешь облегчить себе работу, встраивай HTML в XSL шаблоны.
Попробуй объявлять не variable а param. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
![]()
|
| Правила форума "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. |