Здравствуйте, outsourcer, Вы писали:
O>Привет All, Великий и Ужасный!
O>Вопрос такой:
O>Есть задача отображать пользователю некие данные, которые изначально представлены в виде xml примерно такой структуры:
O>O><?xml version="1.0" encoding="utf-8" ?>
O><roottag>
O> <entry date="30.11.2004">
O> Hello, World!
O> </entry>
O></roottag>
O>
O>Естественно, что например с помощью xslt можно превратить данный xml в сколь угодно красивый html, но вот в чем загвоздка: внутри тэга entry могут храниться данные, которые сами по себе требуют некоторой обработки. Например (как на многих форумах) имеются вложенные "тэги" [link /] или [br], которые надо на ходу превращать в <a /> и <br> и тп.
O>Есть очевидное решение "обработать" исходный xml на сервере и превратить его сразу в html. Я пошел более извратным путем и в принципе победил проблему с помощью JavaScript + xslt, но результат не вдохновляет: для каждого тэга нужно писать неслабый кусок JavaScript-кода, в котором-таки приходится делать document.write, что ничуть не лучше "ручной" обработки xml на сервере. Да еще и к клиенту скачивается невообразимое безобразие из смеси html/xml/JavaScript, которое потом насилует его браузер.
O>В общем, ищу изящное решение.
O>P.S. Как это сделано на форуме RSDN пока "ниасилил"
O>P.P.S. Конкретная технология не важна, интересен подход. Т.е. вопросы типа "а на чем у тя сервак, на IIS или Apache?" не задавать!
Незнаю, лучшее по мне решение это при создании XML сразу обработать данное поле и получить html.
А так юзаем функции обработки строк в XSLT. Ищем все те же [br] и т.п. и заменяем их на <br/> и т.п..
Почему первый вариант для меня предпочтительный, из сооброженний производительности.