LINUX.ORG.RU

Пятая редакция стандарта XML 1.0 несовместима с XML Namespaces 1.0

 ,


0

0

Попытка сделать XML более интернациональным привела к несовместимости с текущей редакцией стандарта XML Namespaces 1.0.

Один из изобретателей XML, Тим Брей, написал возражение по поводу готовящегося принятия пятой редакции XML 1.0:

http://lists.w3.org/Archives/Public/x...

Суть проблемы заключается в следующем. До пятой редакции стандарт XML 1.0 позволял использовать символы Unicode, принятого в 1998 году. Это означает, что символы, добавленные в более поздней версии Unicode, не могут быть использованы в названиях тагов и атрибутов XML 1.0 до пятой редакции. К таким символам относятся, например, буквы Амхарского языка и языка индейского племени Чероки. Пятая редакция XML 1.0 позволяет пользоваться любыми символами Unicode, добавленными после 1998 года. Однако текущий стандарт на XML Namespaces 1.0 всё ещё не позволяет этого.

>>> Подробности

★★★★★

Проверено: Shaman007 ()

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

> Продемонстрируйте *структурированную* передачу XML из поста выше без использования MIME. Что будет ключем, а что - значением?

ключи - ваш неймспейс, как хотите - так зовите. это названия переменных. Посмотрите RFC - как там типы определяются. А так - всё стринги. Под нужными ключами, и любой вложенности.

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

> RFC уже написали?

зачем? это же очевидно. Это во всех стародавних текстовых протоколах - так. Только с ХМЛя не так.

anonymous
()

так, меня спросили имя - я честно ответил. А Вас спросили - молчите.
Не успели послать, что-ли ещё ;)

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

>>Какие вообще задачи решает XML?

>Задачу передачи структурированных данных в гетерогенных системах.

Для этого ещё в лохматых 80-х ASN.1 придумали.

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

>зачем? это же очевидно. Это во всех стародавних текстовых протоколах - так. Только с ХМЛя не так.

Ну, разумеется! Это же *очевидно*. А проект документирован наличествующими исходниками, не так ли?

Вы, видимо, ни разу не работали с серьезными коммерческими заказчиками, и не знаете, что не бывает "очевидных" форматы. Бывают задокументированные форматы и незадокументированные.

Незадокументированный формат - это не формат, а набор мусора.

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

सार्वजनिक वर्ग Main ( स्थैतिक प्रिंट कुछ भी (प्रकार String स्ट्रिंग) सार्वजनिक ( इस मुद्रण लाइन (रेखा) के बाहर यह प्रणाली; )

स्थैतिक कुछ नहीं Main सार्वजनिक (String प्रकार [] तर्कों) ( प्रिंट ( "उसे luzham पर उद्दंड pedestrians run") करते हैं; प्रिंट ( "" नदी asphalt का पानी "); ) ) dimonzi_ (*) (28.10.2008 17:20:54)

Нечетал, но осуждаю.

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

>> XML - ненужен. Самый нечитабельный вариант текстовой разметки.

>Его не читать, а парсить на раз-два-три нужно. И с этим у него всё отлично.

Да идите вы в Google и ищите там libxml exploit

парсеры XML - это sendmail с bind'ом нашего времени.

Ничего более громоздкого и труднообрабатываемого машиной и придумать было нельзя!

Сначала разрабатывают формат данных, чтобы им мог пользоваться человек, а потом всем втирают, что это только для взаимодействия машин! @ля!

anonymous
()

А вот представьте себе, господа, формат передачи данных:

[0-9]+ 'L' <encoded list byte sequence> где [0-9]+ - это цифры от 0 до 9 в ASCII, 'L' - это не цифра, а <encoded list byte sequence> - это последовательность октетов длины, которая указана цифрами, в которой закодирован список. Элементами списка могут быть списки и строки октетов. Элементы достаются из <encoded list byte sequence>, пока она не опустеет, то есть их количество не указывается явно.

Строки в свою очередь кодируются так:

[0-9]+ 'B' <byte sequence> где [0-9]+ - длина последовательности октетов, 'B' - опять же не цифра, но отличная от 'L', <byte sequence> - последовательность октетов.

Теперь смотрим:

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

2. в <byte sequence> могут присутствовать ЛЮБЫЕ значения => парсер не должен делать unescape(), а кодировщик не должен делать escape()

3. Процесс кодирования осуществим даже скриптом на bash.

4. В результате мы имеем древовидную структуру. Любое дерево логически эквивалентно любому XML дереву.

А теперь попробуйте написать парсер с багами для этого формата. Если у Вас это получится, тогда ваш удел - XML. пожизненно.

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

> А теперь попробуйте написать парсер с багами для этого формата. Если у Вас это получится, тогда ваш удел - XML. пожизненно.

Форматик может и неплох, но он нифига не human-editable, т.к. хуман замучается указывать правильную длину строки. И не grepable, кстати, тоже.

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

Re^2: Пятая редакция стандарта XML 1.0 несовместима с XML Namespaces 1.0

> Т.е. ты хочешь чтобы опять как в 90-е, люди обменивались файлами в бинарных форматах .xls и .doc? Спасибо, я наелся этого. Ты мог открыть .doc чем-нибудь кроме MS Word, до появления OOo?

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

Толку от того, что ты можешь открыть .odt - ты его можешь в голове распарсить? К тому же тогда pc была не единственной популярной платформой и это было не главной проблемой.


Иначе так можно докатиться до "херли быдлостроители египетских пирамид что-то там креативили, подождали бы 5000 лет и сделали бы всё в сто раз лучше"

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

Re^6: Пятая редакция стандарта XML 1.0 несовместима с XML Namespaces 1.0

>>А теперь, папа, объясни, нахрена нам всё это в зоопарке?

> Если вам это не надо, значит вы лепите пасочки из песка в детской песочнице и вообще можете не волноваться.



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

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


Заявления программистов "а нахрена мне нужно, чтобы это работало на P100, купи себе P3000" - это напоминает врачей "а нахрена мне тебя лечить, нихай народ повымирает мне больше достанется" или строителей "а нахрена мне заботиться о безопасности зданий, 3 из 10 стоят - и ладно".

Просто проблемы программистов неочевидны, зато когда выясняется, что кто-то не позаботился о переходе даты между 1999 и 2000, кто-то ещё косяков напорол - только тогда об этом вспоминают, ненадолго. Нет ни культуры, ни ответственности. Сейчас нет, время ещё не пришло.


Только что-то мне подсказывает, что мои поделки (я пишу на basic 19 лет, знаю ок. 20 команд, другие языки не учил (кроме php, 3 года на нём программировал используя только 4-6 функций)) - по общей популярности выше, чем творения таких вот товарищей (я про полный цикл проекта - "придумал, воплотил, выпустил", а не про "участвовал в разработке конфиг-файлов на XML")


Характерная черта таких онанистов (пример) - есть база данных, генерящая 12 вариантов разных данных. Ну сделай ты все эти результаты статическими, сохрани в 12 файлов и не дёргай базу, так нет же...

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

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

Re^6: Пятая редакция стандарта XML 1.0 несовместима с XML Namespaces 1.0

>>Ok. А теперь, расскажи ка дядя, нах XML тащат в конфиги софта?

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


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

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

Re^6: Пятая редакция стандарта XML 1.0 несовместима с XML Namespaces 1.0

> Еще раз, для тех, что в танке. Из этих парсеров ни один не мог полностью покрыть следуюие возможности (неймспейсы, валидация, хранение бинарных жанных, автоматическая трансформация) Тем, более, что танкисты трындят про ПАРСЕРЫ! А DOM это еще и генератор. Причем, если нужна фича, используешь. не нужна нет.


любая программа должна покрывать естественные потребности

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


закон GL, глава 1, стих 1, читать нараспев

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

Re^2: XML - поделие извращенцев.

> а теперь сравни читаемость моего хеша и твоего грёбаного ХМЛя (и оверхед 100%).

внеси в парсер изменения, придумай конструкции

raz.dva
.three
..two


а в случае сетей - сжатие друг

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

Re^2: XML - поделие извращенцев.

> Можешь коснуться еще более интересной темы - решений аналогичных XSLT и используемую память. А то ты как этот клоун написавший презентацию - не привел не одного альтернативного решения. Вас в ВУЗе обоих не учили как нажно делать подобные анализы? Не научили что слово "гавно" или "ляля" в научных и инженерных кругах всегда стоит рядом с "по сравнению с" ?


любое быдло, которое училось в вузе - по умолчанию не имеет своих мыслей, а имеет какой-то псевдоавторитет в виде пролистаной книжки с картинками

а у человека есть инстинкт такой - всё, что услышано первым - приводить за истину в последней инстанции

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

Re^2: Пятая редакция стандарта XML 1.0 несовместима с XML Namespaces 1.0

>>клади JSON в MIME - и нет проблем: MIME - протокол, JSON - иерархии. Можно без JSON. Ле

> Прекрасно:



Человека, не имеющего кодонезависимой идеи, нельзя отпускать дальше Бангалора. Не закон, просто наблюдение.

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

Re^4: Пятая редакция стандарта XML 1.0 несовместима с XML Namespaces 1.0

> В какой конкретно области лучше ничего не придумали? Какие вообще задачи решает XML?

кормит поколение совершенно ненужных людей

GuttaLinux
()

>Только что-то мне подсказывает, что мои поделки (я пишу на basic 19 лет, знаю ок. 20 команд, другие языки не учил (кроме php, 3 года на нём программировал используя только 4-6 функций)) - по общей популярности выше, чем творения таких вот товарищей (я про полный цикл проекта - "придумал, воплотил, выпустил", а не про "участвовал в разработке конфиг-файлов на XML")

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

anonymous
()
Ответ на: Re^2: XML - поделие извращенцев. от GuttaLinux

>любое быдло, которое училось в вузе - по умолчанию не имеет своих мыслей, а имеет какой-то псевдоавторитет в виде пролистаной книжки с картинками

Ты в ВУЗе не учился, и считаешь себя поэтому не быдлом? У тебя не хватило мозгов поступить в вуз и поэтому ты считаешь что кто поступил - идиоты? Убейся.

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

Re^8: Пятая редакция стандарта XML 1.0 несовместима с XML Namespaces 1.0

> Назови хоть что нибудь, идиотина. Твои быдлопрограммы, если они есть - не расширяемы и не сопровождаемы.

Окей, уел. Бывают и нерасширяемые и несопровождаемые программы, и им это не мешает совершенно.

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

Re^4: XML - поделие извращенцев.

>>любое быдло, которое училось в вузе - по умолчанию не имеет своих мыслей, а имеет какой-то псевдоавторитет в виде пролистаной книжки с картинками

> Ты в ВУЗе не учился, и считаешь себя поэтому не быдлом? У тебя не хватило мозгов поступить в вуз и поэтому ты считаешь что кто поступил - идиоты? Убейся.


ещё один.

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

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

Только этим я отличаюсь от 99.9% быдла на лоре, больше - ничем. Поэтому я практически никогда не читаю книг, не смотрю телевизор, и не хожу по интернету, кроме лора и пары сайтов. И при этом вкурсе большинства событий, и практически всегда знаю, о чём говорю. А ты, быдло, говоришь то, что тебе внушили, что ты где-то услышал, узнал, урвал, короче записался в МОДНУЮ секту. Поэтому ты и не нужен, у тебя нет перспектив, кроме как стать от младшего винтика к старшему винтику. Имя твоё "я существую... просто существую, какие ко мне могут быть вопросы". Или быдло, по нашему, по-анонимусски.

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

>Вы что с чем сравниваете?

SOAP с CORBA. ТАм к стати написано.

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

>>SOAP - фантастически неэффективный метод передачи данных.

>Так дай альтернативу.

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

Ну неэффективен SOAP. Хотя и стандартен.

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

>> А MIME - как envelope?

>В чем будет выигрышь кроме двух парсеров вместо одного?

Главное - не пользоваться богопротивным XML. Ради этого можно и 10 парзеров вместо одного использовать. Религия, такие дела....

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

>content-transfer-encoding: quoted-printable

Ты хоть знаешь что такое quoted-printable? Расплодилось теоретиков. Алсо я не вижу исправленного варианта с работоя над ошибками - байты считать будем.

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

>сравним - сколько строк кода надо чтобы выпарсить твой Map и вышеприведённый - проперти-подобный?

одну. Сюрприз?

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

>Теперь ждём чтения конфига с ХМЛ (что надо сделать девелоперу чтобы получить простой Map).

new DefaultConfiguration( new XmlConfigurationProvider(path) ).getMap("key")

Ты че думаешь - для текстового яайла конфигураионный враппер пишется а для XMLного нет?




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

> продолжать?

Нет не надо - обратись к доктору. Или попробуй осуществить то что ты говоришь на практике. Например представление обычного дерева в виде пар ключ значение.

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

> А теперь попробуйте написать парсер с багами для этого формата.

Что будет с парсером такой херни, если
- длина последовательности будет указана меньшей, чем реально будет передано данных?
- длина последовательности будет указана большей, чем реально будет передано данных?
- длина последовательности будет указана настолько большой, что будет больше, чем памяти у компьютера?
- в длине последовательности попадутся символы алфавита или непечатные символы, ff например?

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

>А HTTP POST - это разве передача в гомогенной среде?

Жду формата дерева в в виде пар ключ-значение.

r ★★★★★
()

>Заявления программистов "а нахрена мне нужно, чтобы это работало на P100, купи себе P3000"

Гутта с тобой давно все понятно, но последний раз попытаюсь тебе втолковать очевидную вещь. На сегодняшний день время жизни програмного продукта очень ограничено. Если раньше производительность была проблемой которую решали за деньги то теперь стоимость производительности (особенно в энтерпрайзе) не меняется на время. Большим рынкам и большим заказчикам - не надо супермаленькая супербыстрая программа через 3 года - ему надо _работающая_ через месяц. И он не будет оплачивать многолетний труд супероптимизаторов которые все напишут по своему и изобретут для каждой конкретной задачи супероптимальные форматы - они никогда этого не сделают в разумный период времени - в то время как он может получить работающий продукт уже через месяц. А в цифрах это выраждается еще проще - при зарплате программиста в $3k/в месяц - можно мешок высокопроизводительного железа купить за сэкономленный месяц. Так что садись и считай на калькуляторе.

r ★★★★★
()

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

Потому что этот автомобиль производится в разумное время и за разумные деньги.

r ★★★★★
()
Ответ на: Re^4: XML - поделие извращенцев. от GuttaLinux

> Только этим я отличаюсь от 99.9% быдла на лоре, больше - ничем. Поэтому я практически никогда не читаю книг, не смотрю телевизор, и не хожу по интернету, кроме лора и пары сайтов.

Реквестирую психиатра.

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

> Ты хоть знаешь что такое quoted-printable? Расплодилось теоретиков.

я то знаю. Хотел поддержать не только аски для тебя, но так и быть - убирай, пусть будут аски.


> new DefaultConfiguration( new XmlConfigurationProvider(path) ).getMap("key")


это костыль, которого во-первых нет в стандартной жаве (принесено из какого-то фреймвока типа стратс) а главное - зачем этот костыль - если результат - всё равно Мап??

> Или попробуй осуществить то что ты говоришь на практике.


успешно реализую во всех проектах более 10 лет и все вокруг счастливы (включая велосипедистов, мучавшихся раньше с ХМЛ, но постепенно приняв переняв мой подход).

работать надо.
спорить бесполезно.
Ты потом меня помянешь - через несколько лет - когда ХМЛ уйдёт откуда пришёл.


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

>Но это не означает что надо продолжать колоться и жрать кактус, поэтому почти в каждом большом проекте есть свой велосипед.

В любом проекте которому ни с чем не надо взаимодействовать - можно изобрести любое количество велосипедов. Но понимаешь промышленность (энтерпрайз по англицки) - это такого рода отрасль где программы которые ни с чем не взаимодействуют - в природе не встречаются. Ну нафиг они там не нужны.

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

> я то знаю.

Серьезно? А чего тогда обявление контента противоречит самому контенту? Давай кодируй. Сравнивать будем в каком месте quoted printable - это human readable протокол.

>это костыль, которого во-первых нет в стандартной жаве


зато param_init - входит в stdio - я правильно понял? Плевать что этого нет в стандартной жабе. Человек который пишет только стандартными функциями - я промолчу- это уже психиатрия. Я уже понял почему ты ожидаешь парса XML в виде мегакода - если нет стандартной функции - мозга не хватает написать библиотеку?

>Ты потом меня помянешь - через несколько лет - когда ХМЛ уйдёт откуда пришёл.


Ты неадекватно видишь мир. На сегодняшний день XML - самый широкоупотребимый формат.

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

>В любом проекте которому ни с чем не надо взаимодействовать - можно изобрести любое количество велосипедов. Но понимаешь промышленность (энтерпрайз по англицки) - это такого рода отрасль где программы которые ни с чем не взаимодействуют - в природе не встречаются. Ну нафиг они там не нужны.

Вот мы и видим вполне себе "энтерпрайз" технологии обмена данными, у каждого крупного игрока - свои. Примеры приводить или сам найдешь? :)

Почему кроме SOAP есть и другие технологии? Уж не потому ли, что SOAP - не серебряная пуля и в ряде случаев его использование неудобно?

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

>Уж не потому ли, что SOAP - не серебряная пуля и в ряде случаев его использование неудобно?

А кто говорил что SOAP это серебрянная пуля? Моя контора как раз и занимается предоставкой различных сервисов и многие конторы пишут софт который взаимодействует с нашим (хоть на нете хоть на руби или питоне хоть на жабе с С/++(под маки)). И знаешь что все хотят? SOAP. Почему? Потому что _все_ и на чем попало могут взаимодействовать.

Можешь придумать альтернативу.

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

> �Гутта с тобой давно все понятно, но последний раз попытаюсь тебе втолковать очевидную вещь. На сегодняшний день время жизни програмного продукта очень ограничено. Если раньше производительность была проблемой которую решали за деньги то теперь стоимость производительности (особенно в энтерпрайзе) не меняется на время. Большим рынкам и большим заказчикам - не надо супермаленькая супербыстрая программа через 3 года - ему надо _работающая_ через месяц. И он не будет оплачивать многолетний труд супероптимизаторов которые все напишут по своему и изобретут для каждой конкретной задачи супероптимальные форматы - они никогда этого не сделают в разумный период времени - в то время как он может получить работающий продукт уже через месяц. А в цифрах это выраждается еще проще - при зарплате программиста в $3k/в месяц - можно мешок высокопроизводительного железа купить за сэкономленный месяц. Так что садись и считай на калькуляторе.

1. Проблемы интеграции. Посмотри на любой linux-дистрибутив - всё приходится допиливать. Берётся компонента, используется 10% её возможностей, и берутся ещё 9 таких компонент. Получается дистрибутив, который потом каждый до��������пиливает под себя.

2. Возьмём, допустим, 4a-ge. Имеет ДОСТАТОЧНУЮ мощность, ДОСТАТОЧНУЮ экономичность и ДОСТАТОЧНУЮ надёжность. И возьмём примус - по твоим планам, это типа "а давайте к 4аге батарейку прикрутим, сэкономим десятки лет разработки". Раз ты такой умный, почему ещё никто другой до этого не додумался?

3. Блаблабла абстракции, обычный сферический вакуумный энтерпрайз. Ты уже определил задачи энтерпрайза. Ты понял, почему его не устраивает текущее решение? Ты посчитал всё в перспективе, и проблемы и решения? Сколько это времени заняло? Или сразу начал пис���������������������������������������������������ать, а потом - что получится, то и получится? Кто такой энтерпрайз и как ты оценил его потребности?

4. Зарплата - это самое смешное слово, которое есть в твоём сообщении. Железа, кстати, всем купить?

5.������������� Ну и самое главное - нахрена вся эта лабуда 99% неэнтерпрайзнутого софта. Кстати, где шкала "энтерпрайз / не энтерпрайз"?

и другие сообщения, которые наш малолетний быдлокодеришко проигнорирует, смотрите в полной версии лора, или хотя бы поднимите архивы, за любой год...�����������������

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

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

> Потому что этот автомобиль производится в разумное время и за разумные деньги.

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

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

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

>энтерпрайз по англицки

спешу тебя огорчить, что до большого энтерпрайза - хмл ещё не дошёл ввиду того что с мейнфреймов всё приходит в виде текстов (фиксированной длины). Я работал с <...> данными всех <...> в <...>, с большим паблишером, с интерфейсом POS крупной торговой сети, на крупном индех-движке, с крупнейшей платной дорогой - на контрактах, где объёмы - миллионы транзакций в день. А, и с биржевой аппликацией тоже. Включая в кремниевой долине.
Банки обмениваются до сих пор свифтом (фиксированные месседжи). Индексы приходят от дата-провов как делимитед (много гигабайтов индексов). Зачастую кладут дату сразу в базу или из удалённой базы забирают ночными бач-процессами.

Везде на таких проектах - гораздо важнее компактность данных и минимум ресурсов (окна маленькие и их всегда не хватает), да и ХМЛя не было, когда системы были пущены (хмл ещё не успели привнести пионеры и судя по всему - так его и не будет).
А пол-дня-день работы на что-то кастом? Не делайте мне смешно. Там _всё_ кастом.

не надо судить об энтерпрайз по рекламкам сана, М$, ИБМ итд (они хотят продать вам ХМЛ-сольюшены). Реально же _действительно_ работают - старые механизмы.

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

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

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

>К стати приведи.

Google XML - ни разу не SOAP. Atom / RSS - опять не SOAP. XML-RPC - и тут нет SOAP. Таких примеров технологий передачи данных не основанных на SOAP - вагон и тележка.

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

>> Но всё это можно было сделать куда эффективнее.

> А еслиб у бабушки.... Понятно, куда я клоню? XML есть здесь и сейчас.

Что бы мы без вас делали, Капитан.

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

Что "всё"? CORBA, ASN.1, SunRPC - это всё есть и работает. Оно не используется для производства вебели? Какая потеря для вебели.

> Это не идеально, но есть для 99% языков, сделаны даже аппаратные акселераторы.. Если применять с умом, а не с фанатизмом - все отлично пашет.

Ты хотел сказать "хоть и тормознутое угребище, но клиенты платят"? С этим никто и не спорит.

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

> Что будет с парсером такой херни, если

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

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

> - длина последовательности будет указана настолько большой, что будет больше, чем памяти у компьютера?

> - в длине последовательности попадутся символы алфавита или непечатные символы, ff например?

1. сначала прочитает последовательность, а на следующей - сообщит об ошибке, либо похерит остаток, в зависимости от требований приложения - обнаруживается тривиально.

2. сообщит об ошибке - "конец файла", либо похерит недопрочитанное, в зависимости от требований приложения - обнаруживается тривиально.

3. при попытке выделить столько памяти система возвращает ошибку "не хватает памяти" - обнаруживается тривиально.

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

Вы уже начали писать парсер? :-O

Тогда ещё сообщу, что для поля длины последовательности можно заранее выделить динамическую память длиной log10(sizeof(size_t)) + 2

и если количество цифр будет равно длине этого куска памяти, возникает ошибка "слишком длинная последовательность".

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