1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

XML

Тема в разделе "Софт", создана пользователем Павел Ребров, 10.03.02.

  1. А есть у нас тут хоть один человек, реально применяющий или работающий с XML/XSL?

    Есть принципиальный вопрос общего характера.
     
  2. OEM

    OEM Почётный

    2.957
    1
    Ты лучше вопрос сразу задай, мабуть он не совсем строго принципиальный ;)
     
  3. Интересует реальная сфера применения XML. Я работал с некоторыми его приложениями -- SMIL, конфигурационные файлы и т. д. Но не могу представить чистого применения XML.

    В книжках во всех пишется о том, до чего здорово данные хранить в XML, но везде стороной обходится вопрос о том, конкурент ли XML традиционным RDBMS?

    Некоторые движки, типа Saitistika индивидовская хранят данные в базе, отдают их в XML и XML уже парсится в HTML. Нафиг это делается -- ума не приложу!
     
  4. My3bIKAHT

    My3bIKAHT Активный участник

    884
    0
    А як вжиж СтарОффис с его междоусобиями из XML?
     
  5. OEM

    OEM Почётный

    2.957
    1
    На мой взгляд, дело обстоит следующим образом. Во все времена наиболее универсальным и кроссплатформенным форматом для переноса данных был простой текстовый файл. Но ему при всех его преимуществах не хватало стандартизованной описательной части. Вот таким образом появился XML. И этим он хорош, т.е. как транспорт. В остальном (хранение данных, поиск, управление) - это отстой (по сравнению с теми же RDBMS).
    А книжки еще и не то пишут, в свое время тоже призывали сначала забыть традиционные модели программирования, и переходить на ООП, потом называли Яву пророком тысячелетия, и т.п. Не забывайте про коньюктуру рынка и про желание писателей/издателей заработать свою денюжку, и все будет нормально.
     
  6. Staroffice XML используется для хранения настроек и как формат сохранения файлов.

    Меня интересует его применение в Интернет.

    2OEM: Дык, это все понятно, что для кросс-платформенности и т.д. Мне непонятно только, зачем во многих движках нужны промежуточные этапы в виде XML-систем...

    В общем, насколько я представляю, если нет нужды в хранении больших данных, то XML может оказаться весьма полезным, поскольку, написав "свою домашнюю страничку" в XML (содержательную часть), front-end можно лепить уже на чем угодно. Хоть на XSL, хоть на PHP или CGI-парсере, хоть прямо на Flash (благо работа с XML там реализована вполне актуально).

    Но для больших приложений и систем на XML делать, вероятно, стОит только ту часть, которая будет использоваться "внешним миром", вроде того, чтобы отдавать новости, хранить настройки или еще что-то.

    В PHP-Nuke подобная схема. Все в RDBMS хранится, а новости распостраняются для желающих их использовать еще и отдельным XML-файлом.
     
  7. Ilyasio

    Ilyasio Участник

    118
    0
  8. MAKC

    MAKC Гость

    Павел, судя по вашему последнему сообщению, вы заблуждаетесь, и очень сильно. XML — это расширяемый язык разметки, являющийся упрощённым подмножеством SGML (стандартного обобщённого языка разметки), который был специально разработан для раздельного описания содержания и представления документов в интернете. XML описывает логическую структуру документа в виде дерева. Надстройки вроде XSL (расширяемый язык стилевых спецификаций) позволяют преобразовывать это дерево в другое. Фактически, получается новый документ, размеченный с помощью дружественного конкретному устройству языка (например, HTML или WML).

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

    Другой положительный момент заключается в самом разделении: автор задаёт логическую структуру документа, дизайнер — его представление. Нужно сменить дизайн — правят только компактное описание стиля, а не все документы, как если бы они были размечены с помощью языков конкретных устройств, где зачастую логическая и стилевая составляющие перемешаны (что получилось с HTML). Авторам тоже проще — документ один.
     
  9. Вы меня напрасно сочли идиотом :-)))) Я ЗНАЮ, что такое XML, как он устроен и как работает. Знаю о его преимуществах. Вопрос, который меня интересует вполне конкретен -- каково применение XML в больших проектах и где преимущества его по сравнению с RDBMS. Кроме того, почитайте внимательнее мои сообщения раньше. Я с XML работал, но в небольших объемах.

    Часто вы видели вообще большие проекты, где люди редактируют какие-то текстовые файлы, кроме шаблонов? Обычно все хранится в базе, где легко оформляется логическая структура документа. Оформление реализуется шаблонами. При этом RDBMS очевидно быстрее работает, удобнее в администрировании, чем тонна XML-файлов и имеет прочие преимущества. Только платформо-зависима.

    "Много чего удобно" -- это мне понятно. Мне ясно, что конфигурацию удобнее хранить в XML и между приложениями обмениваться XML-данными тоже удобнее. Но хранить две тысячи статей в XML на сайте и парсить их в HTML -- удобство мне не понятно. Вот я о чем говорю.

    Все эти книжные "заманухи", типа того, что "ах, как удобно писать книги в XML, разбивая все на логические разделы" -- не более чем сказки. Ни одного журналиста я не смогу никогда заставить ПРОГРАММИРОВАТЬ статьи. :-))))
     
  10. Vadim

    Vadim Участник

    455
    0
    Mne vse Sheff na rabote tverdit :"Pora nachinat' XML isplozovat'". A ya emu govryu: "Zachem??"
    I deystvitel'no ya eshe ne nashel eshe ni odnogo prakticheskogo primeniya emu.
    Esli kto nibud' znaet, napishite. Pravda Intersno.
     
  11. Ilyasio

    Ilyasio Участник

    118
    0
    Да сколько угодно реального применения - начиная от метаданных и управления контентом, заканчивая веб-сервисами и дотнетом.
    Реальные примеры?
    http://www.brainbench.com
    http://support.microsoft.com
    Далеко не последние проекты, правда?
    Гугль метаданные, подозреваю тоже в XML хранит. Про SOAP - идея не нова(принципу лет 15 от роду), но актуальна, просто скажи кому лет 10 назад, что можно будет огромные количества данных в текстовом виде передавать - засмеяли бы.
     
  12. Ilyasio

    Ilyasio Участник

    118
    0
    Статьи можно хранить в чистом виде в СУБД, а средствами же самой базы превращать их в XML, если нужно(Oracle и SQL Server это поддерживают).
     
  13. MAKC

    MAKC Гость

    2 Павел Ребров:

    Покажите мне автора, который в собственноручно созданном документе не может выделить заголовки, абзацы, цитаты, сноски и т.п. логические компоненты. Какое программирование?

    Использование XML сейчас не актуально, поскольку подавляющее большинство устройств отображения данных более-менее типичны. Например, между различными графическими режимами мониторов не существует неразрешимых противоречий, которые появятся с повсеместным распространением мобильных, портативных, голосовых и прочих устройств. Когда правильное отображение (лучше сказать, воспроизведение) информации будет играть ключевую роль, а некорректное — означать потерю определённой доли рынка, о технологии XML обязательно вспомнят.

    P.S. Прошлой весной я (скорее для забавы) хотел использовать XML / XSLT на своей странице, но выяснилось, что «Вист» не предоставляет такой возможности своим абонентам. Ковырялся в домашних условиях с Sablotron’ом из PHP 4.0.4. Не знаю как в более свежих версиях PHP, а в той он не имел устойчивой поддержки кириллицы. Приходилось дополнительно перекодировать документ... Написал разработчикам Sablotron’а — те без спроса выслали мне 600-килобайтовый zip с наставлением «перекомпилируй движок вот с этим». WinRar’ом zip не открылся, бросил я это дело :)
     
  14. Совершенно верно, но я не могу понять, ЧТО там XML делает. Что там, разные XSL-шаблоны, чтобы WAP-версию проще было делать? Или, может быть, есть версия для PDA или Lynx оптимизированная? Вот что меня смущает.

    Я, наверное, тупой катастрофически, но не могу понять, зачем средствами базы превращать эти статьи в XML, чтобы потом этот XML парсить в HTML. Неужели не удобнее сразу из базы верстать HTML? Это же все, что я хочу знать!!! То, что именно так работает большинство движков, я знаю, я их ковырял сам. Но зачем это нужно, я объективно не понимаю. Только если принять мысль, что это -- на будущее. Далекое будущее.
     
  15. Конечно, он может все это сделать, но практически никогда делать не будет. Он просто пишет статью своим любимым шрифтом в Word. А если его заставить там еще вставлять какие-то элементы, что-то отдельно выделять, то рано или поздно он меня придушит. Это я вам говорю совершенно ответственно. Писатели -- тем более.
     
  16. Ilyasio

    Ilyasio Участник

    118
    0
    На будущее в том числе, но не такое уж далекое. Зачем говорить, что тупой и так далее... Никто же тебя не упрекает в некомпетентности, задан вопрос - народ и вываливает кто что знает. Я вот тоже пока не столкнулся с реальным проектом тоже так думал. Искать применения, ради того "шоб було" и правда не стоит, если XML адекватное средство для организации твоей информации, то и надо его использовать, имхо. Я понимаю, что встанет вопрос о степени адекватности, но думаю об этом можно судить имея представление о том как это работает. Чтобы я сделал, не будь у меня опыта работы с XML, но было бы желание понять зачем это все надо? Наверное почитал бы документацию на open-source проекты, бомбил бы вопросами XML-related форумы, итд. То, что ты видел в движках с XML - это не что иное, как стремление к организации информации, отделению кода от данных, приемственности, совместимости интерфейсов, избавлению от "крутого замеса" HTMLa, данных и кода, итд.
    Есть подозрение, Павел, что у тебя есть поставленная задача и ты даже знаешь как ее решить привычными тебе средствами, но ищешь более красивое решение. И что-то тебе даже подсказывает, что XML - это то, что нужно. Правда же? :)
    Так может просто перейти к этой задаче и спросить у людей стоит ли ее решать с вовлечением XML или нет?
    Мда ну и написал... Может в WROX возьмут статейки калякать :) . Вообщем призываю от принципиальных вопросов перейти к конкретике :) .
     
  17. Да просто очередное цитирование тех же книжек, документации и спецификации мне совершенно бесполезно. Или я не могу смысла увидеть. Вот и думаю, что туп, видимо, беспросветно.

    М-м-м, вероятно. Только цели не достигнуто. Я никак не могу получить одного простого ответа на конкретный вопрос. Зачем в движке нужен промежуточный этап в виде XML-данных? Зачем из базы верстать XML, а его в HTML, добавляя еще один этап в разработку?

    Как ни прискорбно, но, в сущности, нет. То есть, скажем так, есть задача (как обычно) и я знаю, как ее решить привычными средствами. Я знаю, что эти средства будут адекватными в смысле трудозатрат и будут в полной мере решать задачу.

    Просто я понимаю, что XML -- язык будущего, blah-blah-blah, вот и думаю, в какую дыру этот язык будущего притулять. Может быть, если бы мне сказали по пунктам, зачем в движке нужен XML, я бы понял, что, в общем, стОит его использовать и это мне даст массу реальных преимуществ. Но пока я слышу выдержки из спецификаций.

    Давайте так сделаем... Я придумаю задачу (не такую уж нереальную, но пока в далеких планах), а вы мне расскажете, зачем мне там может понадобится XML? Вы же этого хотели?

    Формулировка: большой музыкальный сайт с собственным полнофункциональным движком. Есть новости, информация о группах, форумы, голосования и прочее. Короче, что-то вроде ubl.com, но по-русски. Верстать тонны информации в XML, естественно, я не буду. Я сделаю web-интерфейс к базе и буду через него все вносить, как нормальный человек. То же самое будут делать и contributors. Зачем мне там XML? Если можно, по пунктам и реально, а не согласно рекламным лозунгам :-))))
     
  18. Ilyasio

    Ilyasio Участник

    118
    0
    Если так, то о чем вообще речь?
    Смысл один и очень простой: то, что XML - это стандарт. Планируемый вами метод структурирования данных(СУБД) - это не стандарт, как бы точно не соблюдалась реляционная теория.
    На пальцах? Пожалуйста:
    Вот у вас ваш распрекрасный музыкальный сайт - туча разнообразной и интересной информации. А тут приходит такой замечательный дядя и заявляет: "Хочу купить права на использование вашей информации. И мы хотим экпортировать данные каждый день в свою базу данных. Только СУБД у нас другая и вообще мы в нашей супер-пупер фирме мы все делаем по-другому. А вот данные нам ваши нравятся, только обеспечьте нам еще контроль версий данных - и мы отвалим вам кучу денег". Что прикажете делать? Это, вообще, так - не самый удачный пример "в лоб".
    С вебом еще приходит в голову управление контентом, где XML - лучшее, что можно придумать и совместимость с другими веб-приложениями. А уж веб-сервисах я вообще не говорю.
    Вообщем вся эта пляска нужна только для обмена стандартно-структурированными данными и если такого не планируется - об этом можно вполне забыть, жить спокойно и не искать в этом какие-то новые фичи и прелести.
    По-моему не стоит призывать людей убеждать, что все это так необходимо, если этого уже не сделали книги и статьи. К чему?
     
  19. Ну, мало ли... Вдруг я просто темный и дикий человек. Впрочем, спасибо за консультацию. Примерно такого же мнения я и был обо всем этом деле :-)))
     
  20. OEM

    OEM Почётный

    2.957
    1
    Вот это вы тут дискуссию развели, аж жуть. А выводы оказались банальнейшими - XML это просто стандартизованный транспорт данных, что я с самого начала и говорил ;)
     
  21. Дык... Самое досадное, что и я об этом знал. Меня же интересовали реальные примеры применения. Да и один конкретный вопрос я ответа не получил. Но приятно было поболтать со знающими людьми ;-)))))
     
  22. Vadim

    Vadim Участник

    455
    0
    Kak skazal Ben Forta:
    "XML is ultimate import/export engine, like CSV files on steroids" ;)
    Ya s nim polnost'yu soglasen