Re: Ищу изящное решение для обработки "хитрого" xml
От: Tourist Россия  
Дата: 30.11.04 12:39
Оценка:
Здравствуйте, 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/> и т.п..
Почему первый вариант для меня предпочтительный, из сооброженний производительности.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.