Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизXML - нафига козе боян? Найти похожие ветки
← →
QAZ2 (2012-10-15 11:31) [0]Интересно узнать для чего, почему и зачем оно надо...
раньше ведь люди както жили и без него :)
← →
Рамиль © (2012-10-15 11:33) [1]И без компьютеров люди жили.
← →
Rouse_ © (2012-10-15 11:41) [2]Ну например для передачи данных между приложениями без привязки к версии ПО, каждое будет читать только то о чем знает...
← →
QAZ2 (2012-10-15 11:47) [3]
> Rouse_ © (15.10.12 11:41) [2]
а что мешает это сделать через ini например ?
мне интересна глобальная идея возникновения подобных "гениальных языков\технологий"
← →
Ega23 © (2012-10-15 11:47) [4]
> Интересно узнать для чего, почему и зачем оно надо...
Более-менее универсальный формат для обмена данными.
← →
Ega23 © (2012-10-15 11:48) [5]
> а что мешает это сделать через ini например ?
Ништо не мешает, ini-наше фсьё!
← →
Компромисс © (2012-10-15 11:48) [6]http://ru.wikipedia.org/wiki/XML#.D0.94.D0.BE.D1.81.D1.82.D0.BE.D0.B8.D0.BD.D1.81.D1.82.D0.B2.D0.B0
← →
brother © (2012-10-15 11:49) [7][5] поддерживаю!
← →
xayam © (2012-10-15 11:50) [8]
> а что мешает это сделать через ini например ?
телевизоры в Ашане тоже можно купить, но нормальные люди ходят в специализированные магазины...
← →
QAZ2 (2012-10-15 11:53) [9]
> Более-менее универсальный формат для обмена данными.
это былобы так, еслибы файл созданный в одной программе открывался также в совершенно другой программе
но я почему то таких чудес не встречал :)
← →
QAZ2 (2012-10-15 11:56) [10]
> xayam © (15.10.12 11:50) [8]
о, отлично, понеслась...
в чем нормальность\лучшесть XML против INI ?
также как чем отличается Samsung купленый в Ашане от Samsungа купленного в Техносиле?
← →
Dimka Maslov © (2012-10-15 11:56) [11]Главный недостаток XML - нельзя грабить корованы. Но когда надобно передавать более-менее структурированные данные между различными приложениями - вещь весьма полезная. А при наличии развитых стандартных средств парсинга - просто незаменимая если надо быстро, просто и без изобретения велосипеда.
← →
Ega23 © (2012-10-15 12:00) [12]
> это былобы так, еслибы файл созданный в одной программе
> открывался также в совершенно другой программе
Более-менее универсальный ФОРМАТ для обмена данными
← →
xayam © (2012-10-15 12:01) [13]
> о, отлично, понеслась...
сомневаюсь :)
← →
QAZ2 (2012-10-15 12:01) [14]
> Компромисс © (15.10.12 11:48) [6]
Рассмотрим пример простого кулинарного рецепта, размеченного с помощью XML:
<?xml version="1.0" encoding="UTF-8"?>
<recipe name="хлеб" preptime="5" cooktime="180">
<title>Простой хлеб</title>
<composition>
<ingredient amount="3" unit="стакан">Мука</ingredient>
<ingredient amount="0.25" unit="грамм">Дрожжи</ingredient>
<ingredient amount="1.5" unit="стакан">Тёплая вода</ingredient>
<ingredient amount="1" unit="чайная ложка">Соль</ingredient>
</composition>
<instructions>
<step>Смешать все ингредиенты и тщательно замесить.</step>
<step>Закрыть тканью и оставить на один час в тёплом помещении.</step>
<!-- <step>Почитать вчерашнюю газету.</step> - это сомнительный шаг... -->
<step>Замесить ещё раз, положить на противень и поставить в духовку.</step>
</instructions>
</recipe>
в какое Ж засунуть этот шикарно размеченый текст чтобы увидеть собственно его шикарность?
← →
Dimka Maslov © (2012-10-15 12:03) [15]
> QAZ2 (15.10.12 12:01) [14]
XML предназначен для передачи данных между компьютерными системами, а не между оными и человеком. Поэтому не надо путать его с HTML, у них разная специализация.
← →
QAZ2 (2012-10-15 12:04) [16]
> ФОРМАТ для обмена данными
вроде как язык, не ?
> А при наличии развитых стандартных средств парсинга
тоесть для ini нет развитых стандартных средств парсинга? и нужно долго изобретать велосипед?
← →
AV © (2012-10-15 12:04) [17]Просто, формат, о котором договорились.
в следствии чего уже понаписали кучу всего под него для облегчения жизни
+Читабелен, даже людьми
под свои нужды редко юзаю
Мне не нравится xml. В основном, из-за размеров
но это ничего не значит :)
← →
Ega23 © (2012-10-15 12:06) [18]
> этот шикарно размеченый текст
Ну где тыт тут щикарность увидел?
Щикарно будет разбивать всё по символам и каждому символу id назначать, вот где щикарно будет.
← →
QAZ2 (2012-10-15 12:07) [19]
> AV © (15.10.12 12:04) [17]
нене , ненадо стандартных фраз из википедии и прочих....
ini тоже более чем стандарт и даже использовался виндой и тоже ГОРАЗДО лучше читается человеком :)
← →
Dimka Maslov © (2012-10-15 12:08) [20]
> QAZ2 (15.10.12 12:04) [16]
Да язык, но для специфических целей.
> тоесть для ini нет развитых стандартных средств парсинга?
> и нужно долго изобретать велосипед?
Формат ini поддерживает только два уровня вложенности. Возможности XML гораздо шире.
← →
QAZ2 (2012-10-15 12:10) [21]
> Формат ini поддерживает только два уровня вложенности
да что ты ? у тебя бедная фантазия :)
← →
Компромисс © (2012-10-15 12:14) [22]QAZ2 (15.10.12 12:01) [14]
Вопрос не корректен. Не надо путать стандарт XML со стандартами типа MP3 или JPG.
MP3 и JPG - это стандарты для содержимого файла, а XML - это стандарт для определения стандартов. Например, XML определяет HTML и SOAP. А вот уже файлы с расширением HTML можно открывать в любом браузере, аналогично по wsdl можно генерировать веб сервисы или клиенты для них.
← →
icelex © (2012-10-15 12:16) [23]
> QAZ2 (15.10.12 11:31)
> Интересно узнать для чего, почему и зачем оно надо...
> раньше ведь люди както жили и без него :)
не нужно - не используй
нужно - используй
не знаешь как и назачем - не используй
хочется пообсуждать на пустом месте - ну ты понел...
← →
xayam © (2012-10-15 12:24) [24]
> у тебя бедная фантазия :)
да нет. А почему именно ini, а не json например?
← →
icelex © (2012-10-15 12:27) [25]
> А почему именно ini, а не json например?
когда в руке только молоток, все вокруг похоже на гвоздь
← →
xayam © (2012-10-15 12:30) [26]
> когда в руке только молоток, все вокруг похоже на гвоздь
:) точно
но вопрос, мне кажется у человека вопрос только в синтаксисе.
При желании xml можно оформить в виде ini, но у кого есть такое желание ?
← →
знайка (2012-10-15 12:36) [27]Еще например к xml можно прикрутит xslt, на выходе можно получить все что угодно, а с ини так сделать можно?
← →
xayam © (2012-10-15 12:41) [28]
> а с ини так сделать можно?
...
> у тебя бедная фантазия
← →
AV © (2012-10-15 12:52) [29]
> QAZ2 (15.10.12 12:07) [19]
> > AV © (15.10.12 12:04) [17]
> нене , ненадо стандартных фраз из википедии и прочих....
не поверишь, сам пишу
да и что в этом, может быть откуда то?
Просто, формат, о котором договорились.
в следствии чего уже понаписали кучу всего под него для облегчения жизни
+Читабелен, даже людьми
← →
Игорь Шевченко © (2012-10-15 12:56) [30]Троллить - в другое место
← →
Ega23 © (2012-10-15 12:59) [31]
> Еще например к xml можно прикрутит xslt, на выходе можно
> получить все что угодно, а с ини так сделать можно?
Можно.
← →
знайка (2012-10-15 13:03) [32]
> Можно.
Это понятно, а затраты?
А тут имея например только браузер и блокнот, без проблем.
← →
Ega23 © (2012-10-15 13:10) [33]
> А тут имея например только браузер и блокнот, без проблем.
XML не предполагает наличие браузера. XML - это текст. А как ты его будешь читать - это твои половые трудности.
← →
TUser © (2012-10-15 13:17) [34]Удобно, не надо изобретать свой парсер для конкретного формата.
← →
Sergey Masloff (2012-10-15 14:28) [35]1) Стандартные средства описания структуры (XSD)
2) Стандартные средства валидации (платформонезависимые)
3) Стандартные средства трансформации (XSLT)
4) Стандартные средства навигации (XPATH)
афтар прикрути все это к ini и будем разговаривать дальше (например про отраслевые стандартны обмена гугли ACORD XML)
← →
Пит (2012-10-15 14:34) [36]
> а что мешает это сделать через ini например ?
1) структурно ini-файлы не поддерживают истинную иерархию.
ini это пара "Ключ = Значение", с иерархией первого уровня, то есть группировкой по секциям.
Попробуй в INI-файле описать такую структуру:<devices>
<com_port>
<controller_tg_240>
...param param param...
</controller_tg_240>
<controller_tg_240>
...param param param...
</controller_tg_240>
</com_port>
</devices>
XML поддерживает неограниченную иерархию.
2) INI-файлы не могут по своей структуре иметь одинаковые названия на одном уровне иерархии.
В примере выше на втором уровне мы видим две записи: <controller_tg_240>
В xml это прекрасно уживается. В ini нельзя, чтобы две секции или два парметра в одной секции назывались одинаково.
Иными словами ini файл неудобен для создания списка. Тебе придется эмулировать список, вводить переменную - длина списка. А дальше элементы списка обозначать:cnt_device = 3
device_0 = ...
device_1 = ...
device_2 = ...
с этим списком жутко неудобно работать. Например, тебе нужно удалить device_1, тогда cnt_deviсe нужно уменьшить на один, а данные device_2 переписать в device_1
При больших списках это жутко неудобно, а для редактирования ручками - удалить пятую позицию, если позиций 100 - уже супер гемор. В XML же нужно удалить одну ноду и все, она независима от соседей.
3) много параметричность:
даже если тебе нужно хранить два значения для одной сущности, уже тяжело, тебе придётся писать что-то типа:cnt_device = 2
device_0_paramaA = ...
device_0_paramaB = ...
device_1_paramaA = ...
device_1_paramaB = ...
А в xml это может быть красиво например так:<device paramA="..." paramB="..." />
<device paramA="..." paramB="..." />
что и компактнее, и работать удобнее.
Плюс как правильно заметили XML стал всемирным форматом по следам HTML. Кросс-платформенным, а также там в частности есть указания кодировки, заголовки, служебная информация и прочее.
Ну это что первое в голову пришло.
← →
Ega23 © (2012-10-15 14:43) [37]
> 1) структурно ini-файлы не поддерживают истинную иерархию.
Структурно и XML не поддерживает иерархию, это всего лишь какой-то текст. :)
Формат записи - это формат записи. Парсер - это парсер. Структуры в памяти - это структуры в памяти.
Можно и над форматом записи ini навернуть парсер a-la XML. Можно и наоборот. Было бы желание.
← →
Inovet © (2012-10-15 14:52) [38]> [37] Ega23 © (15.10.12 14:43)
А что над ini? Почему не над txt навернуть, что хочется?
← →
Sergey Masloff (2012-10-15 14:54) [39]
> Можно и над форматом записи ini навернуть парсер a-la XML.
> Можно и наоборот. Было бы желание
С этим никто не спорит более того думаю многим присутствующим что-то подобное приходилось делать ;-)
Желания только все меньше делать что-то что уже есть ;-)
← →
Пит (2012-10-15 15:01) [40]
> Структурно и XML не поддерживает иерархию
ну не пиши бред... Как раз в формате XML описана иерархичность, есть разделение на ноды (узлы) и стандартизировано, как XML разбить на ноды. Также описано, как одна нода может в себе содержать другие ноды с неограниченной глубиной вложенности. Это всё в стандарте, а не накрученное конкретным разработчиком.
> это всего лишь какой-то текст. :)
ты загнался в попытках абстракционизма. С твоей точки зрения протокол FTP ничем не отличается от протокола HTTP, ибо это всего лишь какой-то текст.
Ни одно место XML не может содержать ПРОИЗВОЛЬНЫЙ текст. Так или иначе по стандарту текст экранируется соответствующим образом, в зависимости от местоположения в структуре XML. Так что это не просто какой-то текст, а текст в соответствии стандарту.
Единственным, имхо, способом написать в любом протоколе произвольный текст, это указание, что следующие XXX байтов считать произвольным текстом. Вот тогда далее информация длиной в XXX байт может содержать любую абсолютно информацию. Но даже такого нету в XML.
Попробуй сделать Xml-документ содержимым:op3iueagagboaergh
Тебе любой парсер тут же скажет, что не найдена корневая нода, потому что она ДОЛЖНА быть. И это еще раз говорит о том, что XML это не всего лишь какой-то текст, а вполне определенный текст.
← →
брат Птибурдукова (2012-10-15 15:04) [41]
> с этим списком жутко неудобно работать. Например, тебе нужно
> удалить device_1, тогда cnt_deviсe нужно уменьшить на один,
> а данные device_2 переписать в device_1
Зачем? Удалил device_1, потом прочитал всю секцию в stringlist и работай. И count не нужен.
ЗЫ. Я не оправдываю использование ini. :-)
← →
Пит (2012-10-15 15:09) [42]
> Зачем? Удалил device_1, потом прочитал всю секцию в stringlist
> и работай. И count не нужен.
а как ты будешь сохранять потом всё это? Полюбому в цикле со счетчиком.
А значит по факту у тебя получится, что ты удалил запись device_1, а все остальные после неё сдвинул вверх на 1. Просто ты описал более-менее удобный программный способ.
← →
Пит (2012-10-15 15:10) [43]
> Просто ты описал более-менее удобный программный способ.
в предположении, что в этой секции не хранится ничего другого, кроме нужных тебе строчек. А там могут храниться и комментарии, которые тоже считаются скорее всего )))
Тогда тебе придётся после этого фильтровать по префиксу или как-то так. Тем xml и удобнее.
← →
icelex © (2012-10-15 15:11) [44]ну все, понеслась душа в рай...
понедельник на дворе, а не пятница ведь...
← →
Ega23 © (2012-10-15 15:50) [45]
> А что над ini? Почему не над txt навернуть, что хочется?
Можно и над txt. По-сути, расширение *.xml тебе ничего не даёт, кроме выбора программы по-умолчанию и выбора подсветки синтаксиса по-умолчанию в notepad++ :)
← →
Ega23 © (2012-10-15 15:59) [46]
> Как раз в формате XML описана иерархичность, есть разделение
> на ноды (узлы) и стандартизировано, как XML разбить на ноды
Мне НИКТО не мешает записать этот самый xml не по-стандарту, начхать на экранирование, забыть указать кодировку, забить на обязательный корневой узел (или сделать их 100500 с одинаковым именем ROOT) и т.д.
Вообще никто.
Просто тогда стандартный DOM-парсер накроется медным тазом. Но никто не мешает мне поставлять свой собственный, с шахматами и поэтессами.TEga23XMLDocument = class (TInterfacedObject, IXMLDocument);
TEga23XMLNode = class (TInterfacedObject, IXMLNode);
И всё. Сохраняй хоть в ini, хоть в БД, хоть в JSON или вообще в TIFF между строк шифруй.
Просто зачем изобретать велосипед? :)
← →
Плохиш © (2012-10-15 16:28) [47]
> Мне НИКТО не мешает записать этот самый xml не по-стандарту
Это будет уже не xml, обычный набор байтов для одной отдельно выбранной песочницы.
← →
Пит (2012-10-15 16:35) [48]
> Просто тогда стандартный DOM-парсер накроется медным тазом.
Олег, у тебя как выходные то прошли? ))
Ты вообще со стороны то почитай, что ты пишешь.
Конечно, ты можешь изобрести свой стандарт, свое описание, сделать свой парсер - наздоровье, но причем тут XML?!?!?!?!?!
Ты говоришь, что в XML не описана иерархичность на основе того, что ты можешь изобрести собственный стандарт, отличный от XML. Олег, ты сейчас о чем?!
XML - это стандарт, есть ДОКУМЕНТАЦИЯ, описывающая этот стандарт, в этой документации четко дается понять об иерархичности нод, которые являются частью XML-документа. Поэтому я и говорю, что в структуре XML предусмотрена иерархия!!
А ты говоришь, что можешь создать свой аналог XML без иерархии... ну и что? Где логика, Олег?!
← →
Пит (2012-10-15 16:37) [49]Олег, ты меня извини, но ты просто напалмом жжошь. Ты с этой же точки зрения можешь заявить, что в стандарте HTML нет понятия тегов! Когда на тебя посмотрят и скажут - как это нету тегов? Ты скажешь, что можешь придумать свой HTML без тегов, написать свой браузер и оно будет работать. А значит в описании стандарта HTML нет понятия tag! Гениально нах...
← →
Пит (2012-10-15 16:40) [50]а еще можно утверждать, что в современных компьютерах не используется двоичная система счисления. Потому что можно придумать компьютер (да и придумали уже), которые работает в троичной системе. И на основе этого значит делаем вывод, что в текущих компьютерах нет никакой двоичной системы, это просто поток битов... я кажется понял логику...
← →
Ega23 © (2012-10-15 16:48) [51]Я не вижу в файле 1.xml с содержимым
<?xml version="1.0" encoding="windows-1251"?><Document xxx="ttt" />
никакой иерархии. Я вижу ровно одну строку.
Иерархия это или нет - решает тот, кто разбирает этот текст.
> XML - это стандарт, есть ДОКУМЕНТАЦИЯ, описывающая этот
> стандарт
Это стандарт ФОРМАТА ЗАПИСИ. Ощущаешь нюанс?
← →
Ega23 © (2012-10-15 16:56) [52]
> ы с этой же точки зрения можешь заявить, что в стандарте
> HTML нет понятия тегов! Когда на тебя посмотрят и скажут
> - как это нету тегов? Ты скажешь, что можешь придумать свой
> HTML без тегов, написать свой браузер и оно будет работать.
Скажи мне, можно в DOM добавлять узлы в динамике?
← →
han_malign (2012-10-15 17:10) [53]
> Это стандарт ФОРМАТА ЗАПИСИ.
- стандарт представления данных.
А вот если брать полный стандарт, со схемами, трансформациями и т.д. - то это уже стандарт описания автоматизации представления, проверки и обработки данных...
← →
Ega23 © (2012-10-15 17:13) [54]
> han_malign (15.10.12 17:10) [53]
Возможно.
Можно ли такое навернуть в качестве надстройки над ini? Можно, но бессмысленно.
← →
Пит (2012-10-15 17:26) [55]
> Я не вижу в файле 1.xml с содержимым
> <?xml version="1.0" encoding="windows-1251"?><Document xxx="ttt"
> />
Олег, причем тут конкретный файл XML?! Я говорю о том, что СТАНДАРТ XML ПРЕДУСМАТРИВАЕТ ИЕРАРХИЮ И ОПИСЫВАЕТ ЕЁ.
В конкретном экземпляре может и не быть иерархии, вложенности. Ты опять считаешь это доказательством того, что в стандарте XML нету иерархии?
А если я написал программу на дельфи, не используя тип TFileStream, то файловых потоков в дельфи не существует? Олег, что с тобой? ))
> Скажи мне, можно в DOM добавлять узлы в динамике?
конечно, можно.
Только какое это отношение имеет к обсуждаемому вопросу.
Олег, еще раз!!1 В описании стандарта XML в явном виде описана иерархия. Зачем ты делаешь вид, что не понимаешь такой элементарной вещи? У тебя утверждения из области:
> я вижу запрос SQL:
>update MyTable set MyField = 5
Отсюда делаем вывод, что в стандарте SQL нет понятия строк.
← →
Ega23 © (2012-10-15 17:28) [56]Читай ветку с самого начала.
← →
KSergey © (2012-10-15 17:31) [57]Что вы сделали с аффтаром ветки??
← →
Плохиш © (2012-10-15 17:47) [58]
> KSergey © (15.10.12 17:31) [57]
> Что вы сделали с аффтаром ветки??
аффтар высасывает следующую "проблему" из пальца. Ждёмс следующий вброс.
← →
Пит (2012-10-15 18:01) [59]
> Читай ветку с самого начала.
1) я читал ветку с самого начала
2) по-моему, есть описание формата XML:
http://www.w3.org/TR/xml11/
по-моему, ты уже очевидно гонишь пургу и время сделать вид, что это была шутка - прошло. понимаю вопросы гордости - так что давай закончим.
← →
Ega23 © (2012-10-15 18:05) [60]
> 2) по-моему, есть описание формата XML:
Если ты читал ветку с самого начала, то ты должен был увидеть, что я это и говорил.
← →
Пит (2012-10-15 19:19) [61]да я согласен ок, XML - это просто текст, набор произвольных байтов.
← →
Пит (2012-10-15 19:20) [62]это если конечно читать данную ветку сначала.
← →
Ega23 © (2012-10-15 19:28) [63]
> да я согласен ок, XML - это просто текст, набор произвольных
> байтов.
Не совсем произвольных, это всё-таки текст.
Ну а коли так, то следующий вопрос: можно ли также реализовать вот всё то же самое, что есть в xml, но только с помощью ini?
Ответ: можно. Это будет жуткий плохо читабельный монстр. Но - можно.
← →
Андреевич (2012-10-15 19:34) [64]Еще больше возненавидел xml после того как парсер (XmlSerializer в шарпе) отказался десерилизовать структуру потому что структура текста с XML была вручную немного подредактирована (с косяками). И все - это не валидный формат, не буду грузить.
← →
Rouse_ © (2012-10-15 19:36) [65]
> Пит (15.10.12 19:19) [61]
> да я согласен ок, XML - это просто текст, набор произвольных
> байтов.
>
>
Один из разработчиков формата (стандарта?) XML долгое время тролил народ на форумах фразами типа, да, XML выглядит и читается как обычный текст, но на самом деле это не текст :)
К сожалению не могу найти ссылку на форум, но было забавно :)
← →
Пит (2012-10-15 20:32) [66]
> Не совсем произвольных, это всё-таки текст.
с чего ты взял?!
Я вот только что сделал XML-документ, где есть куча не символьных байтов. Правда, этот файл отказываются открывать существующие xml-парсеры, но что мне мешает написать свой:TPitXMLDocument
?
← →
Rouse_ © (2012-10-15 20:36) [67]
> Я вот только что сделал XML-документ, где есть куча не символьных
> байтов.
В стандарте XML оговаривается что он может содержать и в каком формате, ты нарушил стандарт, стало быть это не XML документ. Можешь за одно таблицу инициализации Base64 поменять на свою и написать TPitBase64 :) До кучи полином у CRC32 сменить, дабы всем поплохело :)
← →
Ega23 © (2012-10-15 20:53) [68]
> с чего ты взял?!
Нулевой байт туда пропиши.
← →
QAZ2 (2012-10-15 21:07) [69]
> Что вы сделали с аффтаром ветки??
ничо, я только дочитал :)
> В описании стандарта XML в явном виде описана иерархия
есть такой штука как TTreeView c методами SaveToFile и LoadFromFile
и о чудо там тоже есть иерархия и никаких XML ненадо
← →
Rouse_ © (2012-10-15 21:20) [70]
> QAZ2 (15.10.12 21:07) [69]
> есть такой штука как TTreeView c методами SaveToFile и LoadFromFile
> и о чудо там тоже есть иерархия и никаких XML ненадо
Мндя, а еще есть такая штука как различные версии дельфи, которые твою "штуку" сохраняют так как им хочется :) А ведь ты поддерживаешь свой продукт и наверное захочешь чтобы твое ПО за 2012 год прочитало данные записанные твоим-же ПО выпущенным году эдак в двухтысячном.
← →
Ega23 © (2012-10-15 21:25) [71]А разве у TTreeView есть LoadFromFile и SaveToFile?
Чёта навскидку не помню такого, а смотреть - лень.
← →
asail © (2012-10-15 21:29) [72]
> Андреевич (15.10.12 19:34) [64]
> Еще больше возненавидел xml после того как парсер (XmlSerializer
> в шарпе) отказался десерилизовать структуру потому что структура
> текста с XML была вручную немного подредактирована (с косяками).
INI-файл проблему, конечно, решил в данном случае?
А если я avi-файл вручную подкорректирую, да еще и с косяками? Так, что ни один плеер его показывать не будет. Мне надо будет возненавидеть avi файлы? :)
← →
Rouse_ © (2012-10-15 21:30) [73]
> Ega23 © (15.10.12 21:25) [71]
Есть но хреново работает :)
http://qc.embarcadero.com/wc/qcmain.aspx?d=66810
← →
icelex © (2012-10-15 21:32) [74]
> Андреевич (15.10.12 19:34) [64]
> Еще больше возненавидел xml после того как парсер (XmlSerializer
> в шарпе) отказался десерилизовать структуру потому что структура
> текста с XML была вручную немного подредактирована (с косяками).
> И все - это не валидный формат, не буду грузить.
а xml-то тут причем?
открой вона doc-файл в текстовом редакторе, да подредактируй там что-нибудь, а потом Word начинай ненавидеть
← →
Dimka Maslov © (2012-10-15 21:33) [75]
> Ega23 © (15.10.12 21:25) [71]
Таки есть, сохраняет в текстовом формате с табуляциями. При этом в терминах XML сохраняются только имена узлов, но не значения и атрибуты, коих в TreeView нет буквально вообще.
← →
asail © (2012-10-15 21:34) [76]
> QAZ2 (15.10.12 21:07) [69]
> и о чудо там тоже есть иерархия и никаких XML ненадо
Еще раз. Можно и в бинарных файлах все хранить (кстати, можно уйму доводов привести в поддержку именно их). INI это еще один из стандартных форматов. Со своими плюсами и минусами. Можно еще и CSV вспомнить... Почему его не использовать? Чем INI лучше?
← →
QAZ2 (2012-10-15 21:42) [77]
> Чем INI лучше?
незнай я им не пользуюсь :)
я вообще не понимаю форматов "которыемогутчитатьсячеловеком" ибо каждый ботан будет пытаться его изменить и поглядеть что из этого будет
← →
Rouse_ © (2012-10-15 21:43) [78]
> QAZ2 (15.10.12 21:42) [77]
> я вообще не понимаю форматов "которыемогутчитатьсячеловеком"
> ибо каждый ботан будет пытаться его изменить и поглядеть
> что из этого будет
HTML, как я понял, только что умер в твоих глазах?
← →
Игорь Шевченко © (2012-10-15 21:43) [79]Троллить - в другое место.
← →
Ega23 © (2012-10-15 21:57) [80]
> Есть но хреново работает :)
О блин, не знал... :)
← →
Ega23 © (2012-10-15 21:59) [81]
> я вообще не понимаю форматов "которыемогутчитатьсячеловеком"
> ибо каждый ботан будет пытаться его изменить и поглядеть
> что из этого будет
Прально, нафига компиляторы нужны?
Даёшь двоичный код!
← →
QAZ2 (2012-10-15 22:07) [82]не тут типа говорили про обмен данными между приложениями, я про это а не техт вообще
← →
Rouse_ © (2012-10-15 22:15) [83]
> QAZ2 (15.10.12 22:07) [82]
> не тут типа говорили про обмен данными между приложениями
Обмен данными тут приводили, как один из возможных вариантов использования вышеозвученного формата :)
Можно и INI использовать, но тут уж кому как удобнее, даже штаны через голову, при должной подготовке, можно надеть ;)
← →
icelex © (2012-10-15 22:32) [84]при желании можно, наверно, и шубу в трусы заправить, но нафига, если ее навыпуск носят?
← →
Пит (2012-10-15 22:38) [85]
> В стандарте XML оговаривается что он может содержать и в
> каком формате, ты нарушил стандарт, стало быть это не XML
> документ.
читай ветку с самого начала )
> Нулевой байт туда пропиши.
ты сомневаешься, что мой парсер TPitXMLDocument сможет спокойно разобрать такой документ с нулевым байтом?
← →
kilkennycat © (2012-10-15 22:40) [86]
> icelex © (15.10.12 22:32) [84]
вот, блин, век живи, век учись...а я-то все думаю, че трусы такие узкие, летом еще ниче, а как шубу надеваю, то все...
← →
Ega23 © (2012-10-15 22:43) [87]
> ты сомневаешься, что мой парсер TPitXMLDocument сможет спокойно
> разобрать такой документ с нулевым байтом?
сможет. Но это не будет текстом. :)
← →
Rouse_ © (2012-10-15 22:47) [88]
> Пит (15.10.12 22:38) [85]
> читай ветку с самого начала )
Обычно я так и делаю, поэтому не понимаю смысла твоего спича...
← →
Юрий Зотов © (2012-10-15 22:50) [89]
> QAZ2 (15.10.12 11:53) [9]
>
> > Более-менее универсальный формат для обмена данными.
>
> это былобы так, еслибы файл созданный в одной программе
> открывался также в совершенно другой программе
> но я почему то таких чудес не встречал :)
Странно. А я встречал. И даже сам делал. И даже далеко не раз.
XML-файлы, созданные моими программами без малейших проблем открываются совершенно другими программами, не мною сделанными. И наоборот - тоже без малейших проблем. Например, в текущем проекте так реализован обмен данными с 1С, и не только.
Наверное, я то-то не так делаю?
← →
DVM © (2012-10-15 22:54) [90]
> QAZ2
приведу один пример использования XML, где его трудно заменить чем либо еще - веб службы и SOAP. Интерфейс службы описывает сам себя, не надо писать ни строчки кода, чтобы создать иерархию классов для работы со службой используя wsdl файл-описатель службы. Служба может иметь сотни методов с сотнями типов данных и все это будет автоматически проверяться с использованием схемы. XML с помощью трансформаций легко превратить во что угодно, хошь в таблицу на html хошь в SQL запрос или еще во что. И так далее и тому подобное.
← →
pit (2012-10-16 00:24) [91]>сможет
Ну вот, по твоей логике и выходит тогда что xml это не обязательно текст
← →
antonn © (2012-10-16 00:30) [92]
> INI-файл проблему, конечно, решил в данном случае?
да, решил
> icelex © (15.10.12 21:32) [74]
>
>
> > Андреевич (15.10.12 19:34) [64]
> > Еще больше возненавидел xml после того как парсер (XmlSerializer
> > в шарпе) отказался десерилизовать структуру потому что
> структура
> > текста с XML была вручную немного подредактирована (с
> косяками).
> > И все - это не валидный формат, не буду грузить.
>
> а xml-то тут причем?
xml+"очень много удобных готовых парсеров".
проблема в том, что некоторые "недалекие" "требователи" хотят следовать моде и конфигурационные файлы хотят видеть в xml, потому что "ini устарел".
← →
antonn © (2012-10-16 00:32) [93]а еще часто люди путают "открыть xml" и "использовать xml".
"открыть" я и в блокноте смогу
← →
han_malign (2012-10-16 08:46) [94]
> Можно и в бинарных файлах все хранить
- ASN.1 описывает в том числе и XER (XML encoding rules), но в транспортных протоколах обычно используют более компактные DER(BER) или PER кодирование... Так же как Web-разработчики предпочитают более компактный JSON. Это всего лишь выбор представления данных...
Но основным преимуществом XML является то, что он содержит не только структуру данных, но и полное описание этой структуры(в том числе в ссылках на версию схемы(атрибуты "xmlns[:(xsi|xsd)]")), тогда как все остальные представления подразумевают известную фиксированную(в той или иной мере) структуру внешнего объекта связывания...
> > Есть но хреново работает :)
> О блин, не знал... :)
- дык, оно там только в одном месте и используется - при RecreateWnd, когда стиль "времени создания" меняется...
← →
icelex © (2012-10-16 08:52) [95]
> antonn © (16.10.12 00:30) [92]
> потому что "ini устарел".
ну пересохрани файл, покажи дату создания и скажи, что он еще "совсем свежий"
← →
jack128_ (2012-10-16 09:31) [96]
> INI это еще один из стандартных формато
кем стандартизирован? А еще лучше - номер стандарта. AFAIR - ini-файл - это изобретение MS, которое им уже не поддерживается, функции для работы с ним только для обратной совместимости есть.
← →
TUser © (2012-10-16 09:52) [97]
> QAZ2 (15.10.12 21:42) [77]
>
> > Чем INI лучше?
>
> незнай я им не пользуюсь :)
> я вообще не понимаю форматов "которыемогутчитатьсячеловеком"
> ибо каждый ботан будет пытаться его изменить и поглядеть
> что из этого будет
>
>
И regedit тоже зло.
← →
Palladin © (2012-10-16 09:58) [98]json rulez foreva
← →
DVM © (2012-10-16 10:08) [99]
> han_malign (16.10.12 08:46) [94]
>
> > Можно и в бинарных файлах все хранить
>
> - ASN.1 описывает в том числе и XER (XML encoding rules),
> но в транспортных протоколах обычно используют более компактные
> DER(BER) или PER кодирование..
С этим ASN1 мороки больно много. Начиная от поиска библиотек для работы с ним, заканчивая ошибкой в RFC, благодаря которой сейчас существует фактически 2 стандарта. Мудреный метод кодирования не позволяет вручную найти ошибку в бинарных данных которые парсер не может распарсить. Мне не понравился короче.
← →
Ega23 © (2012-10-16 10:43) [100]I"ve trolled XML fans by arguing that representing XML in text is a hack; it should really be represented in XML
← →
han_malign (2012-10-16 11:19) [101]
> С этим ASN1 мороки больно много. Начиная от поиска библиотек для работы с ним
- оно изначально заточено под автоматические ASN1-to-C(++) трансляторы...
> Мудреный метод кодирования не позволяет вручную найти ошибку в бинарных данных
- ну это PER, который еще и с вариациями(например, с выравниванием на октет тэгов и длин составных классов, или без), и разобрать таки можно, если помнить про маски опциональных полей и расширений...
А DER(строгий BER)(например X.509 сертификаты) - прост как валенок...
Нравится - не нравится, а существует огромное семейство сетевых протоколов на ASN.1(H.323 например) - и никуда уже не денешься...
← →
QAZ2 (2012-10-16 12:28) [102]
> jack128_ (16.10.12 09:31) [96]
он используется везде и не только в винде, в линуксе например :)
а отсутствие поддержки - это когда вообще не работает, а не оставленно для совместимости
а дабы тебе было известно, в дельфе используется свой код для работы с ini и кагбэ пофиг чего там поддерживается или нет самой виндой
> Юрий Зотов © (15.10.12 22:50) [89]
это происходит потомы что ты генерируеш XML спецально заточенный под 1С и ясен перец егоже можеш и сам прочитать
но ты же не станеш утверждать что 1С или твоя программа без проблем схавает абсолютно любой XML также как и та программа под которую он составлен ?
> DVM © (15.10.12 22:54) [90]
очень абстрактно и непонятно...
все эти чудеса происходят сами собой? или всетаки нужно покодить пару сотен строчек и прицепить либу на 100 мегабайт?
← →
Ega23 © (2012-10-16 12:35) [103]
> в дельфе используется свой код для работы с ini и кагбэ
> пофиг чего там поддерживается или нет самой виндой
Бгггггггг :)))
← →
QAZ2 (2012-10-16 12:42) [104]бгг что?
← →
DVM © (2012-10-16 12:50) [105]
> QAZ2 (16.10.12 12:28) [102]
> очень абстрактно и непонятно...
> все эти чудеса происходят сами собой? или всетаки нужно
> покодить пару сотен строчек и прицепить либу на 100 мегабайт?
>
Эти чудеса происходят благодаря библиотекам для работы с XML, таким как msxml.
Код писать в любом случае придется, но не придется кодировать тупую рутину такую как сотни классов с десятками методов и сотни типов и реализовывать методы сереализации/десереализации полей в/из XML. Удобно же, мастер сам все сделает. Проверка корректности входных/выходных данных с выводом сообщения об ошибке может быть так же автоматизирована путем использования XML схемы, в противном случае это потребовало бы кучу усилий.
Я вообще не большой любитель XML (для продвижения XML тут на форуме есть специально обученные евангелисты XML), но есть ситуации где он очень удобен и где его сложно заменить. JSON тот же заметно уступает по гибкости XML.
← →
Пит (2012-10-16 13:16) [106]автор слишком жирный тролль.
Специально игнорирует вменяемые ответы, специально акцентирует внимание на том, о чем можно пофлудить. А значит цель не получений знаний, а исключительно флуд. Так не интересно)
← →
Лукошко (2012-10-16 13:27) [107]
> Пит (16.10.12 13:16) [106]
106 ответов - вот это да "не интересно"!
:o)
← →
имя (2012-10-16 13:28) [108]Удалено модератором
← →
asail © (2012-10-16 14:29) [109]
> QAZ2 (16.10.12 12:28) [102]
> это происходит потомы что ты генерируеш XML спецально заточенный
> под 1С и ясен перец егоже можеш и сам прочитать
Это происходит потому, что сгенеренный XML соответствует соответствующему XSD.
> но ты же не станеш утверждать что 1С или твоя программа
> без проблем схавает абсолютно любой XML также как и та программа
> под которую он составлен ?
Я стану. При условии, что этот абсолютно любой XML соответствует XSD.
Более того, мне интересно - INI-файл в этом плане по-твоему лучше? Чем?
← →
Игорь Шевченко © (2012-10-16 14:35) [110]don"t feed the troll
← →
имя (2012-10-16 14:46) [111]Удалено модератором
← →
Андреевич (2012-10-16 14:46) [112]
> ini-файл - это изобретение MS, которое им уже не поддерживается
вот что хорошо - формату ini глубоко пофиг что МС его не использует (а не "поддерживает"), он все так же используется другими приложениями :)
← →
Андреевич (2012-10-16 14:48) [113]
> Более того, мне интересно - INI-файл в этом плане по-твоему
> лучше? Чем?
ini может занимать меньше памяти и быстрее парсится (чем xml хранящий ту же информацию)
← →
QAZ4 (2012-10-16 14:51) [114]
> XSD
жесть, все запущенней чем я предпологал
описание описания :)
может есть еще какойнибуть формат описания структуры XSD ?
для пущей надежности и универсальности
← →
QAZ4 (2012-10-16 14:55) [115]
> Андреевич (16.10.12 14:48) [113]
сейчас тебе ответят про гигагерцы и гигабайты...
← →
Rouse_ © (2012-10-16 15:02) [116]
> Игорь Шевченко © (16.10.12 14:35) [110]
> don"t feed the troll
Да, действительно, нефиг...
Закрываемся.
Страницы: 1 2 3 вся ветка
Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.78 MB
Время: 0.078 c