Как и где применяют XML

User avatar
webdeveloper
Уже с Приветом
Posts: 2049
Joined: 12 Jul 2000 09:01
Location: Madison, Wisconsin USA

Как и где применяют XML

Post by webdeveloper »

Люди добрые,

Вот сижу и думаю, как и где правильно применять XML в webdevelopment. Я что то все никак не въеду, чем он лучше базы данных?

Единственое на что меня хватило, так это на то что с его помощью можно данные из одной базы данных в другую перетащить.

А когда существующая база данных имеется то тогда я вообще не понимаю для чего он нужен? по моему хранить информацию в нем не удобно.

Или я не прав? Просветите меня пожалйста [img:aadd4c45d3]images/smiles/icon_smile.gif[/img:aadd4c45d3]
Stick
Уже с Приветом
Posts: 774
Joined: 26 Dec 2000 10:01
Location: Minsk -> Милуоки, США

Как и где применяют XML

Post by Stick »

Саша.
Присоединяюсь к твоему вопросу.
Полгода назад на работе попросили написать простенький декодер Access -> XML. За чем он им? До сих пор не понимаю... [img:6f0ac3e5c4]images/smiles/icon_confused.gif[/img:6f0ac3e5c4]

Вот тут не плохо пишут. [img:6f0ac3e5c4]images/smiles/icon_wink.gif[/img:6f0ac3e5c4]

[ 06-10-2001: Message edited by: Stick ]
User avatar
webdeveloper
Уже с Приветом
Posts: 2049
Joined: 12 Jul 2000 09:01
Location: Madison, Wisconsin USA

Как и где применяют XML

Post by webdeveloper »

Да, я вот о том же. Если речь идет о двадцати-тридцати разных записах то тогда имеет смысл что то в нем хранить, а вот если о двадцати тысячах то тогда извините. Это никто не выдержит.

Я не говорю об обмене информацией между разными базами данных. Тут понятно что это хороший выход. А вот в обычной жизни то он зачем? Если я из SQL Server данные извлекаю то мне наверное сразу лучше их в HTML перевести. Что мучаться то с XML?
Frank
Уже с Приветом
Posts: 2019
Joined: 22 Jul 2000 09:01

Как и где применяют XML

Post by Frank »

Как мне видится, удобно отдавать данные разным "умным" программам, а не только браузеру.

Например, есть какой-то сайт с погодой. Чтобы сейчас мне слить с него данные для своего сайта, приходится стягивать всю страничку, а потом парсить по каким-то ключевым словам. Если что-то на этом сайте сменится, мне тоже придется парсер менять.

Вот если бы шли отдельные строчки для каждого города, с опоясанными тегами температурой, влажностью и т.д. - то бишь XML, то парсенье превратилось бы в песнь.

Другое дело, что в варианте с HTML особо не надо спрашивать разрешения контент-провайдера. Но и со вторым было бы не жалко ссылочку на исходник добавить.
Seryi
Ник закрыт как дубликат.
Posts: 6238
Joined: 14 Mar 2001 10:01
Location: .MD -> .SI -> .SE -> .AR.US -> .MD

Как и где применяют XML

Post by Seryi »

XML/XSLT можно использовать чтобы разделить представление от самих данных.
Я сейчас на проекте, где дизайн делает другая компания, которая вообще в другом городе находится. Мы предоставляем данные в XML-формате.
Stick
Уже с Приветом
Posts: 774
Joined: 26 Dec 2000 10:01
Location: Minsk -> Милуоки, США

Как и где применяют XML

Post by Stick »

Как мне представляется, защита XML какая-то не убедительная, друзья. [img:2b21373ba3]images/smiles/icon_biggrin.gif[/img:2b21373ba3]
Seryi
Ник закрыт как дубликат.
Posts: 6238
Joined: 14 Mar 2001 10:01
Location: .MD -> .SI -> .SE -> .AR.US -> .MD

Как и где применяют XML

Post by Seryi »

XML позволяет упростить разработку и сопровождение систем. Никто им базы данных заменять не собирался вроде.
User avatar
Gennadiy
Уже с Приветом
Posts: 11332
Joined: 30 Mar 2000 10:01
Location: Ice Storm Town

Как и где применяют XML

Post by Gennadiy »

Основное предназначение XML - ПЕРЕДАЧА данных. То есть обмен данными между програмами, в том числе и чужими.
Никто ХРАНИТЬ данные в XML вроде не заставляет.
Еще одно применение - хранение конфигурационной информации (очень удобно - структурированое хранилище).
Ну и наконец различные технологии построеные на базе XML - позволяют упростить преобразование данных (XSLT), презентацию (XSL), удаленные межплатформенные вызовы (SOAP, WSDL) и т.д.
User avatar
segaa
Уже с Приветом
Posts: 743
Joined: 20 Jul 2001 09:01
Location: Бл. В-сток, Ср. Море...

Как и где применяют XML

Post by segaa »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by Stick:
<STRONG>...защита XML какая-то не убедительная...</STRONG><HR></BLOCKQUOTE>

Вот знаете, в чем сейчас основная проблема hi-tech-а, по моему представлению? В том, что нет определенно выйгрышных направлений. Сейчас не менегеры ведут, а девелоперы. Менегеры сейчас пугливы и консервативны, они часто не знают, что им делать с новыми технологиями.
Вот этот вопрос с XML-ем он подобного плана - убедите нас, что XML это хорошо, тогда мы его выучим, будем на нем писать и заживем богато и счастливо (т.е. мэнэгерская постановка вопроса). Мне кажется, что не даст Вам сейчас ни кто панацеи и 100% гарантии.
User avatar
Homyak
Уже с Приветом
Posts: 194
Joined: 18 Feb 2001 10:01

Как и где применяют XML

Post by Homyak »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by webdeveloper:
<STRONG>Люди добрые,

Вот сижу и думаю, как и где правильно применять XML в webdevelopment. Я что то все никак не въеду, чем он лучше базы данных?

Единственое на что меня хватило, так это на то что с его помощью можно данные из одной базы данных в другую перетащить.

А когда существующая база данных имеется то тогда я вообще не понимаю для чего он нужен? по моему хранить информацию в нем не удобно.

Или я не прав? Просветите меня пожалйста [img:075f5b81ec]images/smiles/icon_smile.gif[/img:075f5b81ec]</STRONG><HR></BLOCKQUOTE>

Не прав. XML не только для того, что бы в нем хранить данные. То есть, хранить можно, я , к примеру, для своего редактора отчетов файлы репортов храню в xml, так гибче и удобнее.
Но не суть - ключевая идея не в хранении, а, как уже было сказано выше - в передаче.
Один из хороших примеров - данные хранятся
в базе - MSSQL, к примеру. Запросом FOR XML к ней получается выборка в XML формате, которая стравливается с XSLT И вуаля, у тебя HTML который ты отдаешь клиенту.
Stick
Уже с Приветом
Posts: 774
Joined: 26 Dec 2000 10:01
Location: Minsk -> Милуоки, США

Как и где применяют XML

Post by Stick »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by Homyak:
<STRONG>
...
Один из хороших примеров - данные хранятся
в базе - MSSQL, к примеру. Запросом FOR XML к ней получается выборка в XML формате, которая стравливается с XSLT И вуаля, у тебя HTML который ты отдаешь клиенту.</STRONG><HR></BLOCKQUOTE>
Вот так вот, с первого взгляда, проглядывается притянутость XML "за уши". Это ж было б проще, ИМХО, на прямую генерить HTML из SQL запроса? А? Или опять HTML ужасно не гибкий для таких простеньких задач?
[img:ec73af6e15]images/smiles/icon_wink.gif[/img:ec73af6e15]
User avatar
Gennadiy
Уже с Приветом
Posts: 11332
Joined: 30 Mar 2000 10:01
Location: Ice Storm Town

Как и где применяют XML

Post by Gennadiy »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by Stick:
<STRONG>
Вот так вот, с первого взгляда, проглядывается притянутость XML "за уши". Это ж было б проще, ИМХО, на прямую генерить HTML из SQL запроса? А? Или опять HTML ужасно не гибкий для таких простеньких задач?
[img:dec79b7d94]images/smiles/icon_wink.gif[/img:dec79b7d94]</STRONG><HR></BLOCKQUOTE>
Конечно не гибкий. А если тебе сегодня надо в одном виде а завтра совсем в другом. Что каждый раз переписывать будешь?
А так, получил XML и затем делаq с ним что хочешь - через XSLT процессор пропустил- получил HTML или другой XML или текстовый файл или RTF. А можешь выдирай из него нужную информацию - парсить HTML не такое уж приятное занятие.
georgev
Уже с Приветом
Posts: 330
Joined: 10 Aug 1999 09:01
Location: Seattle

Как и где применяют XML

Post by georgev »

Н-да, удивительно что XML вообще нуждается в защите.
Ну возьмем HTML для примера. Чтобы понять для чего понадобился XML надо вернуться на несколько годков назад и припомнить что он (HTML) создавался для представления данных, а сейчас превратился в язык визуального программирования - поэтому HTML страничку так парсить тяжело - там данных с гулькин нос, зато куча DHTML извращений и скриптов. Была правда попытка разделить структуру данных и их представление с помощью CSS, но увы - было уже поздно. Кроме того HTML в принципе не годится для того, чтобы интегрировать приложения от нескольких контор, что через пару лет станет главным направлениием в computing (а иначе акции MS с его Software-as-a-service будут по 2 доллара за pound). А вот XML позволяет это делать без усилий (SOAP+WSDL+UDDI+WSFL и прочие 4хсимвольные монстрЫ [img:899f258c35]images/smiles/icon_confused.gif[/img:899f258c35] ), при этом впервые действительно platform-independent.
Да и вопрос сбссно можно ставить и по другому - чем XML лучше CORBA например - и тоже есть о чем говорить... но это уже совсем другая история [img:899f258c35]images/smiles/icon_razz.gif[/img:899f258c35]

[ 07-10-2001: Message edited by: georgev ]
Jim
Уже с Приветом
Posts: 134
Joined: 19 Aug 2000 09:01
Location: PA

Как и где применяют XML

Post by Jim »

Меня недавно бросили на новый проект. Переписываем существующее приложение на ASP.

Начальник грит - так, будем юзать XML. COM-объект (бизнес-правила) запрашивает данные из SQL Server'а, передаёт ASP скриптам в виде XML, те эти данные парсят (то есть на серверной стороне) и генерят HTML страницы. Ну посмотрел я как сохранить рекордсет в виде XML (Recordset.Save чеготоXML). Ну знаю как распарсить XML в ASP странице (Parser object). Одного не знаю - какого фига нам это надо????....

Или если юзать XSL, то всё сразу смысл приобретает?..
User avatar
Леший
Уже с Приветом
Posts: 1928
Joined: 26 Oct 2000 09:01
Location: Ярославль - Канзас Сити

Как и где применяют XML

Post by Леший »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by Stick:
<STRONG>
Вот так вот, с первого взгляда, проглядывается притянутость XML "за уши". Это ж было б проще, ИМХО, на прямую генерить HTML из SQL запроса? А? Или опять HTML ужасно не гибкий для таких простеньких задач?
[img:2f4631ee94]images/smiles/icon_wink.gif[/img:2f4631ee94]</STRONG><HR></BLOCKQUOTE>
Да конечно .. а теперь тебе нужно слегка поменять дизайн всего сайта .. Что легче поменять код который из SQL HTML генерит или отдать дизайнеру одну XSL лину и ее поправить?
Panam
Уже с Приветом
Posts: 598
Joined: 30 Nov 2000 10:01
Location: Atlanta, GA

Как и где применяют XML

Post by Panam »

ресурсы надо уметь оптимально распределять. Для WWW оссобенно - увеличивать скорость обработки, уменьшать трафик и прочее.
К XML технологии это относится к примеру так:
клиентская часть программы получает xml файл и затем она легко может делать с ним всё что угодно (с помощью XSL и parser) без внешних запросов. И всё это на клиенте.

[ 07-10-2001: Message edited by: Panam ]
User avatar
segaa
Уже с Приветом
Posts: 743
Joined: 20 Jul 2001 09:01
Location: Бл. В-сток, Ср. Море...

Как и где применяют XML

Post by segaa »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by Frank:
<STRONG>...Если что-то на этом сайте сменится, мне тоже придется парсер менять...в варианте с HTML особо не надо спрашивать разрешения контент-провайдера...</STRONG><HR></BLOCKQUOTE>

вот этим и отличается сервис от простого сайта, что для первого структура и доступ к данным должен быть гарантированным...
User avatar
segaa
Уже с Приветом
Posts: 743
Joined: 20 Jul 2001 09:01
Location: Бл. В-сток, Ср. Море...

Как и где применяют XML

Post by segaa »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by Jim:
<STRONG>...Поддерживается только M$ Internet Explorer версия 5.5.0.3.65 билд 657й"...</STRONG><HR></BLOCKQUOTE>

Ну-ну, когда-то и IE3.5 казался новым, понятия "толстого" клиента не существовало, деревья были зеленее...
AK70
Уже с Приветом
Posts: 3127
Joined: 10 Apr 2001 09:01
Location: MD

Как и где применяют XML

Post by AK70 »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by webdeveloper:
<STRONG>Люди добрые,

Вот сижу и думаю, как и где правильно применять XML в webdevelopment. Я что то все никак не въеду, чем он лучше базы данных?

Единственое на что меня хватило, так это на то что с его помощью можно данные из одной базы данных в другую перетащить.

А когда существующая база данных имеется то тогда я вообще не понимаю для чего он нужен? по моему хранить информацию в нем не удобно.

Или я не прав? Просветите меня пожалйста [img:6191abb8b3]images/smiles/icon_smile.gif[/img:6191abb8b3]</STRONG><HR></BLOCKQUOTE>


можно иметь xml database, есть и такие базы, можешь их найти в инете. они используют язык запросов на основе sql и xpath.

если же речь о СУБД , то xml обычно может быть интерфейсом обмена данными с сторонними системами. мы так ее используем.

xml/xslt - тоже интересная связка, это из области веб приложений. представь себе что у тебя есть годовой отчет в xml, ты пишешь несколько xslt и css , на выходе получаешь различные отчеты для сотрудников, для менеджеров, для аудиторов [img:6191abb8b3]images/smiles/icon_smile.gif[/img:6191abb8b3]

для Access пример был. зачем интерфейс xml? не знаю как в том конкретном случае, но может быть вот зачем: для обмена данными с другими базами. писал я как-то систему которая имела вариант для лаптопа. люди выезжают в джунгли, собирают данные, вводят пользуясь программой. а потом приезжают в лагерь и происходит синхронизация с основной базой данных. тогда xml еще не было, я сделал простым текстовым форматом все. а сейчас бы я использовал xml. потому что удобно, полно всяких парсеров и прочих приблуд.
Panam
Уже с Приветом
Posts: 598
Joined: 30 Nov 2000 10:01
Location: Atlanta, GA

Как и где применяют XML

Post by Panam »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by Jim:
<STRONG>

Ага. То есть на таких страницах будет написано что-то вроде "Поддерживается только M$ Internet Explorer версия 5.5.0.3.65 билд 657й".</STRONG><HR></BLOCKQUOTE>

XML IE стал поддерживать с 5й версии. И как видишь начали его выпускать с 1й версии. Так что ничего не стоит на месте.

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by Jim:
<STRONG>
Функционал на клиента переносить - неправильно это...</STRONG><HR></BLOCKQUOTE>

ха ха. Понятия абсолюта нет в програмирование. Есть понятие оптимально/не оптимально, что не есть близко стоять к правильно/не правильно.
elk
Новичок
Posts: 29
Joined: 19 Aug 2001 09:01
Location: SF Bay Area

Как и где применяют XML

Post by elk »

У нас в конторе XML на полную катушку использовали. Как уже сказано, выбираются данные из базы в XML-формате, на них надевается XSLT-преобразование и готова страничка для клиента. Если надо поменять UI на страничке - меняется только преобразование. Для corporate-интерфейса мы могли выбрать броузер, и там данные хранились в XML-island прямо на странице, и преобразовывались, показывались и редактировались там же. На сервер отправлялся только отредактированный результат в XML'е же. Подобная схема позволяла очень оперативно изменять вид страниц не трогая данные.

Cheers,
elk.
Jim
Уже с Приветом
Posts: 134
Joined: 19 Aug 2000 09:01
Location: PA

Как и где применяют XML

Post by Jim »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by Panam:
<STRONG>ресурсы надо уметь оптимально распределять. Для WWW оссобенно - увеличивать скорость обработки, уменьшать трафик и прочее.
К XML технологии это относится к примеру так:
клиентская часть программы получает xml файл и затем она легко может делать с ним всё что угодно (с помощью XSL и parser) без внешних запросов. И всё это на клиенте.

[ 07-10-2001: Message edited by: Panam ]</STRONG><HR></BLOCKQUOTE>

Ага. То есть на таких страницах будет написано что-то вроде "Поддерживается только M$ Internet Explorer версия 5.5.0.3.65 билд 657й". [img:19296e06e1]images/smiles/icon_biggrin.gif[/img:19296e06e1] Функционал на клиента переносить - неправильно это...
User avatar
Gennadiy
Уже с Приветом
Posts: 11332
Joined: 30 Mar 2000 10:01
Location: Ice Storm Town

Как и где применяют XML

Post by Gennadiy »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by stockman:
<STRONG>
Сколько представлений данный столько у вас и XSL-ин будет. Тем не мене одно представление, один HTML файл и одна XSLT, много- и то и то представлена во множестве представлений. Так в чем поинт то?
</STRONG><HR></BLOCKQUOTE>
Если у вас данные статичны - то конечно поинта никакого нет. Если же как в большинстве современных систем HTML выглядит как туча JavaScript-а со вставлеными тут иногда данными, то отделение данных от их презентации очень даже полезно.
Опять таки - а что если ван нужен не HTML - то надо писать специальный генератор например RTF файлов. И если что то поменялось - то перекомпилировать его.
А тут в идеале картина такая.
XML (+XSLT описывающий внешний вид)--> XML (FO DTD extension) (+XSL стандартный для каждого выходного формата) --> HTML, RTF, XML, TXT, PostScript, etc.
Теперь если надо добавить другой внешний вид для ВСЕХ выходных форматов - меняем ОДИН XSLT файл. Если надо добавить новый выходной формат для ВСЕХ внешних видов - добавляем ОДИН XSL файл (с учетом того что их для стандартных форматов уже понаписывали).
И при всем этом сами ДАННЫЕ остаются прежними и с ними можно работать напрямую.
stockman
Уже с Приветом
Posts: 1731
Joined: 24 Sep 1999 09:01
Location: планета Земля

Как и где применяют XML

Post by stockman »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by Gennadiy:
<STRONG>
Если у вас данные статичны - то конечно поинта никакого нет. </STRONG><HR></BLOCKQUOTE>

Нет конечно они у меня не статичны. У меня их много, они динамичны и для каждого представления данных у меня есть свой HTML(читай asp файл) в котором уже есть разделение дизайн+данные. На кой ляд мне XML то именно в этом контексте? Что бы иметь ВМЕСТО КАЖДОГО asp-файла, иметь ФАЙЛ с XSLT + еще один asp пускай даже на все, для того что бы это парсить?

Или вы мне предлагаете сделать один охренительный XSLT на весь портал и использовать разные представления разных данных из него, подсовывая ему разные xml-файлы? Так я могу извратиться и так же засунуть все данные и все виды их представлений в один asp-файл и будет у меня весь портал в одном index.asp, просто оно мне не надо. Речь идет только о том приложении в котором обмен с другими системами не предусмотрен заранее.

[ 08-10-2001: Message edited by: stockman ]
User avatar
Gennadiy
Уже с Приветом
Posts: 11332
Joined: 30 Mar 2000 10:01
Location: Ice Storm Town

Как и где применяют XML

Post by Gennadiy »

<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">quote:</font><HR>Originally posted by stockman:
<STRONG>
Нет конечно они у меня не статичны. У меня их много, они динамичны и для каждого представления данных у меня есть свой HTML(читай asp файл) в котором уже есть разделение дизайн+данные. На кой ляд мне XML то именно в этом контексте? Что бы иметь ВМЕСТО КАЖДОГО asp-файла, иметь ФАЙЛ с XSLT + еще один asp пускай даже на все, для того что бы это парсить?

Или вы мне предлагаете сделать один охренительный XSLT на весь портал и использовать разные представления разных данных из него, подсовывая ему разные xml-файлы? Так я могу извратиться и так же засунуть все данные и все виды их представлений в один asp-файл и будет у меня весь портал в одном index.asp, просто оно мне не надо. Речь идет только о том приложении в котором обмен с другими системами не предусмотрен заранее.

[ 08-10-2001: Message edited by: stockman ]</STRONG><HR></BLOCKQUOTE>
По моему вы не читаете что вам пишут.
Где я писал про один большой XSLT файл? Не приписывайте мне того что я не говорил.
Я не знаю вашей задачи - может там и можно обойтись asp (хотя хотел бы я увидеть КАК разделяются данные и представления в ОДНОМ asp файле). Вот представте. Вам завтра понадобилось те же данные представить в другом виде (например вместо таблицы дерево HTML). Вы пишете новый asp файл. То же самое - новый XSLT файл. Степень сложности та же. А теперь другая задача - вам нужно данные вывести в виде пригодном для печати на A4 или экспортировать в Excel. Вам нужно нписать специальный модуль который будет это делать. Причем написать их для каждого вида - для таблицы свой, для дерева свой и т.д. А тут вы берете готовый XSL (ну или пишите свой если у вас какой-то мудреный формат - но ОДИН раз) и применяете его к тому XML что вам уже подготовил XSLT. Причем от того дерево ли это, таблица, ничего не зависит. Данные уже готовы.
А теперь кто-то написал программу которая берет ваши данные и анализирует например на предмет статистики. Она что будет ваш HTML парсить? Нет она берет сырой XML и работает с ним как хочет.

Return to “Вопросы и новости IT”