The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Архив дискуссии в ru.php "XML. С чего начать" (web xml php)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: web, xml, php,  (найти похожие документы)
From: Паращенко Олег <http://xmlhack.ru/authors/OlPa/>; Subject: Архив дискуссии в ru.php "XML. С чего начать" Архив дискуссии "XML. С чего начать?" эхи fido7.ru.php Компановка информации: http://xmlhack.ru/ 05.08.01 Паращенко Олег <http://xmlhack.ru/authors/OlPa/>;
sad <sad@spider.ru> Втр 29 Май 2001 12:48:05 8 из 137 > Что неудовлетворяет в существующей ситуации? в аналогичных ситуациях меня лично неустраивает то, что представление сайта конечному зрителю сильно привязано к моим скриптам. А программеру с дизайнерами всегда трудно. Оторвать от скриптов в принципе удается только статические элементы результирую щего гипертекста и на выходе их просто подклеивать. Те же данные , которые скрипт вытаскивает из БД приходится ему же и размечать в хтмл (что очень нудно и непринципиально). Вот в этом свете я и нахожу полезным использование XML на стороне сервера. Приняв соглашение о представлении скриптом данных (достатых из БД) в рамках XML , я забываю о хтмл. А дизайнеры учат язык шаблонов. Для обработки ХМЛ и сращивания его с остальными частями оформления. Обращаюсь к Вам всем с просьбой поделиться своим опытом использования XML. Как Вы используете XML? Какие Вам известны "надевальщики" шаблонов? Технологии и языки шаблонов? Какае из них Вы предпочитаете? Очень прошу ответить. Я только слышу отовсюду вопли: "XML - уже стандарт!", "рулез" и прочее. НО не видел еще ни одного работающего решения на основе серверсайд-XML. вот и возникают сомнения разные... А может его никто и не использует по прямому назначению??? может имеет смысл занять "нишу" и написать свой надевальщик шаблонов с максимально упрощенным языком??
Yuri Makassiouk <racer@bfpg.ru> Срд 30 Май 2001 14:20:02 19 из 137 > YM> Есть решение и есть недавний положительный опыт использования того же движка > YM> для поддержки сайта со структурой фронт-енда принципиально другой - фреймы > YM> против простых страниц и т.п. Мне дико понравилось =) > > А можно об этом поподробнее ? Подход/инструментарий/etc. > Очень интересно. И не только мне, я полагаю. > Тут в последнее время об этом спрашивают постоянно. В двух словах пока - вообще, наверное, статью буду писать 1. Данные в реляционной базе (в виде данных, а не XML). 2. Есть движок, который формирует XML-документ. У меня - чисто динамически, хотя возможны и варианты, наверное. 3. Далее, саблотрон трансформирует этот документ по шаблону. Хитрый момент - как движок знает, какой шаблон использовать - тут есть варианты, как всегда, и надо, видимо, смотреть по природе приложения. Жестко задавать структуру набора шаблонов не советую - с тем же магазином - у одного три шаблона, у другого уже больше, и еще будет больше. Они зависят только друг от друга, потому что логическая структура хтмл-я в них тоже заложена. 4. Есть желание сделать на том же скрипте сервис для wap, тогда точно можно сказать, что идея побеждает. Инструментарий незатейлив - XMLSpy - самое специфическое средство. И то, я его использую почти только для проверки на well-formedness шаблона. Редактировать в нем невозможно.
Vladlen Bulatov <vlad@econ.msu.ru> Срд 30 Май 2001 22:01:14 34 из 137 > > > В итоге ты деньги получаешь, а XML-щики - нет. > И вообще, что это за подход? Юрий, постараюсь объяснить за тебя ;) 1) XMLщики делают 99% работы один раз 2) остальные от 1% до тех же 99, что в среднем - 50% когда же появляется или новый заказчик, или старый просит что-либо исправить, то - 1) XMLщики делают 1% работы 2) остальные - 50% 3) на стоимости же работ это почти не отражается 4) т.к. XMLщики делают это быстрее, то и заказчик к ним относится благосклонее
Yuri Makassiouk <racer@bfpg.ru> Птн 08 Июн 2001 03:48:53 104 из 137 > >> 1) простенький пример (хотя бы из моего предыдущего письма) - можно? > YM> Hапиши - чего пример хочешь, конкретно. > Пример: нужно вывести несколько переменных и фрагмент базы на экран > (скажем, список товаров каких-нибудь). Задание параметров выборки не > интересует, только вывод. Хочу увидеть текст шаблона (и сопутствующих Почему-то не спрашиваешь про структуру XML-документа, DTD я писать не буду, а выглядит он, пусть, как: <?xml version="1.0"?> <page> <title>My suppa-duppa page</title> <dataArray> <dataElement> <title>Agfa SnapScan 1236u</title> <price>799.99</price> </dataElement> <dataElement> <title>Lexmark Z52</title> <price>1499.99</price> </dataElement> </dataArray> </page> Твой шаблон: <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="[72]http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <title><xsl:value-of select="/page/title" /></title> <body> <table> <xsl:apply-templates select="page/dataArray/dataElement" /> </table> </body> </xsl:template> <xsl:template match="dataElement"> <tr> <td><xsl:value-of select="title" /></td> <td><xsl:value-of select="price" /></td> </tr> </xsl:template> </xsl:stylesheet> > файлов, if any), плюс указания на то, как это нужно парсить (ссылки > на нужные функции и/или extensions). В моем классе используется xslt_process: if (@xslt_process($this->xslText, $this->input, $result)) $this->output = $result; - это к вышеприведенным кускам никак не привязано, ессно. Кроме того, можешь парсить любым другим парсером, какой найдешь. Написал тебе этот пример и аж скучно стало самому - на демонстрацию возможностей оно никак не тянет... Так - тривиальщина. Обрати внимание - в результате будет html (не XHTML), потому как тег <html> тебе писать было, видимо, влом. Вот и я не написал. > >> 2) в результате в браузере что имеем, HTML или XHTML? > YM> Чего хочешь, то и генерируй, хоть голый текст... > YM> А что за разница для браузера между HTML и XHTML? > Я не уверен, что тот же Netscape сжует <br/>, а совместимость > с ним может потребоваться. Нет, не сжует. А <br /> сжует.
Vladlen Bulatov <vlad@econ.msu.ru> Птн 08 Июн 2001 15:32:01 108 из 137 > Пример: нужно вывести несколько переменных и фрагмент базы на экран > (скажем, список товаров каких-нибудь). Задание параметров выборки не > интересует, только вывод. Хочу увидеть текст шаблона (и сопутствующих > файлов, if any), плюс указания на то, как это нужно парсить (ссылки > на нужные функции и/или extensions). самый понятный пример (для вас - ПХПешников :) - ------------------------------------- <?xml version='1.0'?> <xsl:stylesheet xmlns:xsl="[75]http://www.w3.org/TR/WD-xsl"> <xsl:template match="/"> <HTML> <HEAD> <TITLE><xsl:value-of select="title"/></TITLE> </HEAD> <BODY> <TABLE> <TR> <TD>Title</TD> <TD>Price</TD> </TR> <xsl:for-each select="data/item" order-by="title"> <TR> <TD>с</TD> <TD><xsl:value-of select="price"/></TD> </TR> </xsl:for-each> </TABLE> </BODY> </HTML> </xsl:template> </xsl:stylesheet> ------------------------------------- а вот пример, который ближе душе XMLщика ;) - <?xml version='1.0'?> <xsl:stylesheet xmlns:xsl="[76]http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output encoding="windows-1251"/> <xsl:output indent="yes"/> <xsl:template match="/"> <HTML> <xsl:call-template name="doHead"> <xsl:with-param name="title" select="/title"/> </xsl:call-template> <xsl:call-template name="doBody"/> </HTML> </xsl:template> <xsl:template name="doHead"> <xsl:param name="title"/> <HEAD> <TITLE><xsl:value-of select="$title"/></TITLE> </HEAD> </xsl:template> <xsl:template name="doBody"> <BODY> <xsl:apply-templates select="//data"/> </BODY> </xsl:template> <xsl:template match="data"> <TABLE> <TR> <TD>Title</TD> <TD>Price</TD> </TR> <xsl:apply-templates select="//item"/> </TABLE> </xsl:template> <xsl:template match="item"> <TR> <TD><xsl:value-of select="title"/></TD> <TD><xsl:value-of select="price"/></TD> </TR> </xsl:template> </xsl:stylesheet> ------------------------------- а вот и исходный XML-файл - <?xml version='1.0'?> <pricelist> <title>Price List</title> <data> <item> <title>Prod B</title> <price>$200</price> </item> <item> <title>Prod A</title> <price>$100</price> </item> </data> </pricelist> ------------------------------- а вот XHML-результат <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=windows-1251"> <TITLE></TITLE> </HEAD> <BODY> <TABLE> <TR> <TD>Title</TD> <TD>Price</TD> </TR> <TR> <TD>Prod A</TD> <TD>$100</TD> </TR> <TR> <TD>Prod B</TD> <TD>$200</TD> </TR> </TABLE> </BODY> </HTML>

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру