LINUX.ORG.RU
ФорумTalks

Почему вам не нравятся конфиги в XML?


0

0

Плюсы перечислять, я думаю, не надо, они и так очевидны. А вот что насчет минусов? Основной аргумент против -- human unreadable синтаксис. Серьезный аргумент. Но проблема ли это формата? При наличии простых и удобных инструментов для редактирования XML (и для консоли, я думаю, можно сделать что-то удобное), ваше мнение поменялось бы в положительную сторону и если нет -- почему? Какие еще существенные минусы?


Ответ на: комментарий от a3

>разбираться в очередном мегаформате васи пупкина -- маразм.

+тыща

vada ★★★★★
()
Ответ на: комментарий от Deleted

> Писать type=integer/data или ещё что кто-то заставляет?

Да. Например проверка при парсинге на какой-нить сторонней DTD иначе пользы с зюмеля как с козла-молока.

Например конфиг опенбокса:

<keybind key="C-A-Left"> <action name="DesktopLeft"><dialog>no</dialog><wrap>no</wrap></action> </keybind>

iBliss
()
Ответ на: комментарий от iBliss

>Например проверка при парсинге на какой-нить сторонней DTD

ini файлы ты проверяешь по DTD? Нет? Ну вот и XML можешь не проверять, если не хочешь. Тем более что есть и кроме DTD схемы, по которым можно описывать тип в самой схеме.

>иначе пользы с зюмеля как с козла-молока.


4.2

Deleted
()
Ответ на: комментарий от iBliss

Сорри за отсутствие энтеров в предыдущих (:

<keybind key="C-A-Left">
    <action name="DesktopLeft">
        <dialog>no</dialog>
        <wrap>no</wrap>
    </action> 
</keybind>

Deleted
()

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

Пока что не хватает нормального редактора с хорошим визуализатором. Можно даже в 3D сделать - инфа воспримется проще.

gkrellm
()
Ответ на: комментарий от Deleted

> ini файлы ты проверяешь по DTD? Нет? Ну вот и XML можешь не проверять, если не хочешь.

Тогда весь смысл XML теряется.

tailgunner ★★★★★
()
Ответ на: комментарий от gkrellm

> Если кто-то редактирует XML в vi и не плюется - то он полный идиот ибо не понимает назначения XML и возможных прелестей.

А если иксы сдохли или их нет, чем XML править?

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Deleted

> Весь смысл общего формата хранения данных?

Потому что этот формат недалеко ушел от текста.

> Это ещё с чего бы вдруг?

Универсальная конфигурялка для XML без DTD (или подобного средства) будет настолько примитивной, что она нафиг не нужна.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>Потому что этот формат недалеко ушел от текста.

Он и не должен, если мы хотим сохранить возможность изменять его руками. Иначе можно и в БД пихать. Вот у меня postgresql установлен, я ж в него конфиги системные не пихаю.

>Универсальная конфигурялка для XML без DTD (или подобного средства) будет настолько примитивной, что она нафиг не нужна.


Примитивной? Сейчас вообще нет никаких DTD и конфигурялки, как ни странно, есть и вполне себе ничего. Или вы хотите автоподстановку при изменении? Ну тогда да, вот только сама программа, что пользуется этим конфигом DTD читать не будет. А конфигуратор нехай читает, не растает.

Relax-NG получше DTD будет, мне кажется.

Deleted
()
Ответ на: комментарий от Deleted

>>Верстальщики, наверное, все идиоты, что в невизуальном редакторе (X)HTML ваяют :)

В HTML нет изначальной заточенность на разделение ОФОРМЛЕНИЯ и СТРУКТУРЫ. Да и работа верстальщика прямо скажем - обезьянья. Не идиоты конечно но и гениями творческими их не назвать.

gkrellm
()
Ответ на: комментарий от mdraven

Универсальный нужен формат хранения для начала. Я говорю об этом и о том, что конфигураторам приходится изобретать велосипед для парсинга. Не более того. Универсальную конфигурялку писать это не моя затея :}

Deleted
()
Ответ на: комментарий от gkrellm

>В HTML нет изначальной заточенность на разделение ОФОРМЛЕНИЯ и СТРУКТУРЫ

Oh really? Про CSS слышал? А ещё есть XML и XSLT — вот уж где разделения хоть отбавляй. При чём тут они? Многие используют XSLT как шаблонизатор (а отдают уже HTML), вот ведь сюрприз? При желании можно вообще отдавать и XML с XSLT напрямую. Особенно если наплевать на IE (: Хотя и к нему можно костылей набрать.

Deleted
()
Ответ на: комментарий от Eddy_Em

>А если иксы сдохли или их нет, чем XML править?

Если у нас отрубают свет то я пускаю электростанцию на бензине - но питать с нее все время - безрассудный кретинизм. Ваш К.О.

gkrellm
()
Ответ на: комментарий от Deleted

> Про CSS слышал?

С какой версии хатээмэля он появился, не напомнишь?

> Многие используют XSLT как шаблонизатор (а отдают уже HTML), вот ведь сюрприз?

Но это же не повод уподобляться.

Miguel ★★★★★
()
Ответ на: комментарий от Miguel

>С какой версии хатээмэля он появился, не напомнишь?

Это каким-то образом отменяет моё высказывание? Логическую цепочку в студию, пожалста.

>Но это же не повод уподобляться.


Уподобляться? Как по мне, так очень хорошая идея. Уж всяко лучше PHP вперемешку с HTML'ом…

Deleted
()
Ответ на: комментарий от Deleted

>> Универсальная конфигурялка для XML без DTD (или подобного средства) будет настолько примитивной, что она нафиг не нужна.

> Примитивной? Сейчас вообще нет никаких DTD и конфигурялки, как ни странно, есть и вполне себе ничего.

Только вот они НЕ универсальны.

> Relax-NG получше DTD будет, мне кажется.

Да тысячи их... пойнт в том, что XML без схемы и валидации нах не нужен.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>Только вот они НЕ универсальны.

Я говорю об универсальности формата хранения. Конфигурялка что бы не изобретала велосипеды для парсинга. Это так сложно понять? Да, если делать что бы была универсальная конфигурялка нужна схема, но я это разве где-то отрицаю?

>Да тысячи их... пойнт в том, что XML без схемы и валидации нах не нужен.


Вот возьмём пример с XML и XSLT как шаблонизатора. Никакой схемы к чертям нет, а ведь нужен! Удивительно!

Deleted
()
Ответ на: комментарий от Deleted

> Это каким-то образом отменяет моё высказывание? Логическую цепочку в студию, пожалста.

Нажми Ctrl+F и введи "изначально". И всё поймёшь.

> Уж всяко лучше PHP вперемешку с HTML'ом…

Ты ещё QuickBasic вспомни.

Вообще, шаблонизаторы - это прошлый век. Делать надо HTML-комбинаторами.

Miguel ★★★★★
()
Ответ на: комментарий от Deleted

> Он один на всех, общий.

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

Miguel ★★★★★
()
Ответ на: комментарий от Miguel

>Нажми Ctrl+F и введи "изначально". И всё поймёшь.

petrosyan.jpg? Старым вещам никогда не находится нового применения? Интересная логика.

>Вообще, шаблонизаторы - это прошлый век. Делать надо HTML-комбинаторами.


Что вы под ними подразумеваете?

Deleted
()
Ответ на: комментарий от Miguel

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

Толсто! Ты в курсе, что XML парсер может сам разбирать любой XML?

Deleted
()
Ответ на: комментарий от Deleted

> Старым вещам никогда не находится нового применения?

Находят. Я же не утверждаю, что сейчас там нет этого разделения. Хреновенькое, правда, но есть.

> Что вы под ними подразумеваете?

Под ними я подразумеваю HTML-комбинаторы. Типа, например, http://cpansearch.perl.org/src/AUTRIJUS/Language-Haskell-0.01/hugs98-Nov2003/...

Miguel ★★★★★
()
Ответ на: комментарий от Deleted

> Вот возьмём пример с XML и XSLT как шаблонизатора. Никакой схемы к чертям нет, а ведь нужен! Удивительно!

И причем тут конфиги?

tailgunner ★★★★★
()
Ответ на: комментарий от Deleted

> Толсто! Ты в курсе, что XML парсер может сам разбирать любой XML?

Ровно также, как текстовый редактор может редактировать любой plain text. Толку-то...

Miguel ★★★★★
()
Ответ на: комментарий от Miguel

>Хреновенькое, правда, но есть.

Придумайте свой интернет с блэкджеком и флешем ;)

>Под ними я подразумеваю HTML-комбинаторы. Типа, например


И разница в том, что..? В двух словах. А то я что-то не вижу.

Deleted
()
Ответ на: комментарий от Deleted

> И разница в том, что..? В двух словах. А то я что-то не вижу.

В том, что куски HTML-я являются объектами первого порядка в языке.

Miguel ★★★★★
()
Ответ на: комментарий от Miguel

>Ровно также, как текстовый редактор может редактировать любой plain text. Толку-то...

Программа не может из _любого_ текстового файла составить какую-либо структуру. Программе приходится его _парсить_. Такое ощущение, что вам незнакомо это слово. А XML грузит прога и имеет в памяти дерево. И может без особых проблем обращаться к нужным элементам в духе "main/user/name" и т.д. Запись в эту структуру также просто осуществляется. В этом, собственно, и толк.

Deleted
()
Ответ на: комментарий от Miguel

>В том, что куски HTML-я являются объектами первого порядка в языке.

В чём примущество этого перед XSLT? Или вы сравниваете с PHP шаблонизатором? Ну тогда да, в нём там большая ж***.

Deleted
()
Ответ на: комментарий от Deleted

> В чём примущество этого перед XSLT?

Преимущество - в том, что с ними работает язык общего назначения.

Miguel ★★★★★
()
Ответ на: комментарий от Deleted

> Не вижу в этом преимущества. XSLT и так свободно оперирует XML'ом.

А больше вам ничем не надо оперировать?

Miguel ★★★★★
()
Ответ на: комментарий от Miguel

А чем же? Все входные данные уже в XML сформированы внешним скриптом, вызывающим трансформацию.

Deleted
()
Ответ на: комментарий от Deleted

> А чем же? Все входные данные уже в XML сформированы внешним скриптом, вызывающим трансформацию.

Угу, угу. То есть, вместо прямой генерации несложного специального формата, мы вынуждены генерировать нечто, навёрнутое вокруг общего формата, а потом преобразовывать в тот же специальный. Причём это нечто, стоит только задаче стать минимально выше тривиальной, будет немыслимо похоже на конечный специальный формат.

Miguel ★★★★★
()
Ответ на: комментарий от Miguel

>То есть, вместо прямой генерации несложного специального формата

Что за несложный специальный формат и почему вы считаете, что править код вперемешку с данными будет очень увлекательно?

Deleted
()
Ответ на: комментарий от Deleted

> почему вы считаете, что править код вперемешку с данными будет очень увлекательно

Не надо врать, ни в какой момент я этого не говорил.

> Что за несложный специальный формат

HTML называется.

Miguel ★★★★★
()
Ответ на: комментарий от Deleted

>>Oh really?

Не надо напоминать что появилось ранее? CSS это вынужденная пристройка к HTML набравшему популярность.

Текстовая основа преобразования XML также удручает. Она заменяется осиливанием языка программирования с библиотекой обработки XML и разгружает мозг от зубодробительных кривых конструкций /'][\']/'[p']/\/['//[%6^([\[]&'/''*%[\[$^]']//@ и позволяет сосредоточиться на структуре.

gkrellm
()
Ответ на: комментарий от Miguel

>Не надо врать, ни в какой момент я этого не говорил.

А как иначе HTML вписывается в ваш код и "с ними работает язык общего назначения"? Думается мне, что это очень похоже на ещё один велосипед того, что уже и так есть.

Deleted
()
Ответ на: комментарий от Deleted

> А как иначе HTML вписывается в ваш код и "с ними работает язык общего назначения"?

А то, что на одном языке можно не мешать данные с кодом - это мы уже не в курсе?

Miguel ★★★★★
()
Ответ на: комментарий от gkrellm

HTML был переформурилован как невизуальный формат разметки (для визуального — CSS добавляется). В чём проблема и почему вас это не устраивает?

>Текстовая основа преобразования XML также удручает. Она заменяется осиливанием языка программирования с библиотекой обработки XML и разгружает мозг от зубодробительных кривых конструкций /'][\']/'[p']/\/['//[%6^([\[]&'/''*%[\[$^]']//@ и позволяет сосредоточиться на структуре.


А перевод будет?

Deleted
()
Ответ на: комментарий от Deleted

> И отличие от PHP/ruby/whatever с XSLT в этом... какое?

Не нужно придумывать велосипед в виде промежуточного слоя, обёрнутого в XML.

Miguel ★★★★★
()
Ответ на: комментарий от Miguel

Фича в том, что из моего промежуточного XML с помощью XSLT можно получить и plain text и HTML и ещё что-нибудь.

Deleted
()
Ответ на: комментарий от Deleted

> Фича в том, что из моего промежуточного XML с помощью XSLT можно получить и plain text и HTML и ещё что-нибудь.

1) С использованием комбинаторного подхода это делается не менее легко. Собственно, XSLT представляет собой неудачную реализацию HTML- (XML-) комбинаторов. Неудачную по двум причинам: очень многословный синтаксис и слишком узкоспециализированный язык.

2) Я работал в вебдеве, но выводить страницу в виде plain text мне не приходилось никогда, честное слово.

Miguel ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.