Вы здесьЗа что я ненавижу XML
Опубликовано вс, 08/11/2009 - 20:32 пользователем larin
Наконец-то я смог сформулировать, за что я ненавижу XML. В применении к книгам, очевидно - прочие использования этого незаконнорождённого отпрыска пьяной макаки и запаршивевшего верблюда меня волнуют мало, хотя встречаться с конфигами, где ради одного значения надо написать четыре вложенных тега по полсотни символов тоже удовольствия мало. Да и типичный вебсайт по сути своей от книги мало отличается, а чисто флэшевые поделки лично мне не интересны.
|
Вход на сайтПоиск по блогам и форумамUser menuПоследние комментарии
Леди Стервa RE:Подайте бедному копеечку на книжку с литреса... 6 часов
Larisa_F RE:Кто сможет раздобыть и оцифровать нужные мне книги? 1 час Isais RE:Древний Рим. Подборка книг 2 дня Isais RE:Семейственность в литературе 4 дня kopak RE:Таинственная личность админа Флибусты 1 неделя kopak RE:О группе Дятлова. О той самой, того самого... 1 неделя babajga RE:Ласси возвращается домой 1 неделя sem14 RE:Подборка о Первой Мировой 1 неделя Isais RE:удаление "двойников" 1 неделя Isais RE:Кармен Мола - Пурпурная сеть [litres] 2 недели Isais RE:Детство, опаленное войной (Вторая мировая 1939-1945 и ВОВ) 2 недели Isais RE:Катя Водянова - Дом и два жениха в придачу 3 недели Aleks_Sim RE:Прошу переформатировать, распознать, etc... 4 недели Isais RE:Дмитрий Анатольевич Горчев - ЖЖ Дмитрия Горчева (2009–2010) 1 месяц Саша из Киева RE:Детям о Ленине (Издание 1965 года) 1 месяц Саша из Киева RE:Приключения Мишки-Ушастика (Перевод Марата Брухнова) 1 месяц babajga RE:Белая княжна 1 месяц Isais RE:Файл достаточно хорош. Нет смысла в его улучшении. Ага,... 1 месяц Впечатления о книгах
iggy71 про Маканин: Валечка Чекина (Современная проза)
25 02 Писатель намеревался, видимо, создать загадочный образ провинциалки, "в которой что-то есть", и типа все хотят с ней познакомиться поближе, и она такая себе любвеобильная, духовная и проч. Автор ей симпатизирует, но вот образ ……… Оценка: плохо
konst1 про Рубина: Окна [Авторский сборник] (Современная проза)
25 02 Вдруг Борис заметил: – Между прочим, знаешь ли ты, что еще совсем недавно, в XVIII веке, жители Корнуолла промышляли таким вот способом: в особо сильный шторм выносили на берег большие фонари и расставляли рядами там, ……… Оценка: отлично!
Дей про Господин следователь
25 02 Очень интересно. Детективная и, скажем так, бытовая линии отличные, любовная же не понравилась. Влюбился с первого взгляда, лучше её нет (это ещё даже не разговаривал с ней ни разу), вот эти китайские церемонии с ухаживаниями ………
Олег Макаров. про Капба: Как приручить дракона - 4 [СИ] (Альтернативная история, Киберпанк, Фэнтези, Попаданцы, Самиздат, сетевая литература)
24 02 Капба прекрасен как всегда. Четвёртый том не хуже (лучше!) предыдущих, хотя казалось бы куда ещё. Очень отличная книга. Оценка: отлично!
obivatel про Калинин: Вторая Отечественная [litres] (Альтернативная история, Боевая фантастика, Попаданцы)
24 02 Автор датэл: "если именно благодаря революционерам Россия потеряла шанс выйти из нее в качестве главного победителя". . Если пишешь что-то о периоде, не поленись узнать как оно было. Царя опрокинули крупнейшие промышленники ……… Оценка: плохо
mysevra про Себастьянович: Новая книга о сыроедении, или Почему коровы хищники (Здоровье)
24 02 Подход для таких ленивых как я - нет обязательных самостоятельных чисток. «Мягким тканям потребуется не менее 2 лет, а скелету - около 7.» Непонятно, есть ли это время. Оценка: отлично!
mysevra про Артюшкина: Голем [litres] (Детективная фантастика, Социальная фантастика, Научная фантастика)
24 02 Такой замечательный мир, отличный язык, но невыносимо неспешное развитие событий – кажется вот-вот случится что-то значимое, а нет, очередной проходной момент. Оценка: неплохо
Isais про Абдуллаев: Заговор в начале эры (Исторический детектив, Политический детектив)
24 02 Скучно, нудно, нехудожественно. Вместо живых картин -- картонные декорации, никто из персонажей не вызывает эмоций -- ни любви, ни ненависти, каждый абзац сопровождается таким же по размеру морализаторским поучением, высказанным ……… Оценка: плохо
Nevskaya про Сушков: «Ленинградское дело»: генеральная чистка колыбели революции (Документальная литература)
22 02 Бралась за книгу с трепетом, родная тема, Блокада, Ленинград и все такое... Прочла со стыдом, дочитывала только потому, что не умею бросать начатое. Вранье сплошное, откровенное, бесстыжее, запредельное. Уже много где на форумах ……… Оценка: нечитаемо
Belomor.canal про Акунин: На санях (Современная проза)
22 02 Лучшая, самая лучшая книга Семейной Саги Оценка: отлично!
187 про Царевич: За Отчизну! (История)
21 02 Годная детская книжка, как и Приключения Каспера Берната в Польше и других странах. Оценка: отлично!
Дей про Воспитанник орков
21 02 Какой же ГГ тряпка и слюнтяй. Нет, он храбр и, в общем-то, довольно сообразительный, хоть и несколько тугодум, но он трясётся над жизнью каждой мрази, встречающейся на его пути. Он оставил за спиной несчитанное количество ……… |
Комментарии
Отв: За что я ненавижу XML
Отв: За что я ненавижу XML
Сдается мне - это скорее недостатки редакторов FB2, чем формата xml или fb2.
XML - далеко не лучший формат, но кажется что трудно выдумать, что-то принципиально лучшее, потому что или форматирование будет описываться отдельным блоком или внедрено в сам текст. Отдельным блоком - это тоже мало куда годится, чуть какая ошибка и всё поехало. Если в самом тексте, значит в любом случае могут иметь место ситуация по типу & в середине. Хотя бы в книге, описывающей работу с таким форматом :)
Понимать, что тег тут может быть или не может должен не парсер, а редактор. А вот, то что на практике проще всего в обычном редакторе копипастить в структуру fb2 - вот это уже и есть недостатки работы с fb2, но при чем тут сам xml.
Отв: За что я ненавижу XML
Как-бы, безосновательный треп. XML - штука ценная и очень удобная, с помощью которой можно легко описывать любые объекты, причем делая это в удобочитаемом виде. Можно, конечно, битовые флаги выставлять напрямую и вообще забыть про всякие w_char, UTF и прочие удобства. Каждому своё.
Проблема данная сугубо в парсере приложения находится. По спецификации на XML служебные символы должны быть экранированы, если используются, как данные. Использование блока CDATA для каждого чиха не есть хорошо, но вот обрамлять служебные символы банально специальным тегом и написать правило интерпретации для парсера, суть правильно. Получится что-то вроде & и целый один маленький handler для обработки этого тега, который надо будет потом всего-лишь зарегистрировать у парсера. Интерфейсная часть у всех реализаций должна быть унифицирована, так что проблем с этим я не вижу.
Отв: За что я ненавижу XML
Хорошо теоретикам - они проблем не видят.
Отв: За что я ненавижу XML
Нет никакой проблемы. Вы просто подняли шум на ровном месте, как мне кажется из-за обычной лени. Напишите handler для парсера или переопределите методы парсера, который Вы используете, или, если ООП для Вас суть лес темный, сделайте пре и пост обработки текста для экранирования/разъэкранирования служебных символов. Вариантов явно больше одного ^_^
Может за Вас написать, если Вы такой немощный?
Отв: За что я ненавижу XML
А напишите. Во всех читалках, парсерах, редакторах и конвертерах. Коли Вы такой мощный.
Отв: За что я ненавижу XML
Напишите, буду рад.
Или поправьте имеющийся - http://github.com/larin/librusec/blob/master/parser.inc.
Отв: За что я ненавижу XML
Текст значительно более устойчив к ошибкам и искажениям. Если в каждом слове будет по две опечатки, я все равно смогу текст прочитать и поправить. Ошибки в оформлении исправить как правило невозможно.
Отв: За что я ненавижу XML
А попробуйте поменяйте наугад выбранный байт в PDF или DOC файле. Результат почти наверняка будет тот же - не загрузится. Причем в отличие от XML, вручную такой файл уже не починишь.
То есть единственный формат, который БОЛЕЕ помехоустойчив, чем XML - это plain text. Все остальные гораздо, гораздо хуже. А при этом XML абсолютно неограниченно расширяем по семантике, легко читается и пишется на любом языке. Ценой за все это - необходимость escap'ить всего ДВА символа, угловую скобку и амперсанд. С ТеХом или Постскриптом никакого сравнения - вот там действительно черт ногу сломит, любой символ может значить что угодно в зависимости от контекста. А XML создавался как идеальный компромисс простоты и богатства возможностей - и этого идела он достиг. (За исключением DTD - вот за них действительно стоит надавать создателям по ушам; но причины тут больше исторические, слишком резкий разрыв с SGML тогда бы не прокатил.)
Я помню, каким был мир текста до появления XML и Unicode. Я бы не хотел туда возвращаться, спасибо.
Отв: За что я ненавижу XML
Не надо никуда возвращаться.
Надо двигаться дальше.
Отв: За что я ненавижу XML
А вот куда? Поделись идеями.
На счет XML-я вообще и fb2 в частности я с тобой не согласен. Грибов с Мацневым сделали, для своего времени, достаточно революционную штуку (правда, как водится, революция произошла в одной, отдельно взятой стране). Достоинства схемы fb2 с головой перевешивают все ее недостатки. Количество книг в fb2 и электронных библиотек, базирующихся на fb2, подтверждают это фактически.
Мне не понятно, как и куда двигаться дальше без XML. Понятное дело, схему нужно (и давно нужно) модифицировать и развивать, возможно, файл декомпозировать (как в epub и драфте fb3, хотя там есть свои минусы), но вот что делать без структурной и логической разметки? В лучшем случае, у тебя получится самопальный недо-XML, в худшем - гмм...
Кроме того, любой, самый распрекрасный, в теории, формат, без читалок (софтовых и железных), редакторов, библиотек, каталогизаторов - nothing.
Отв: За что я ненавижу XML
Отв: За что я ненавижу XML
Поддерживаю, отличный вроде бы формат.
Но почему то никто здесь (включая автора nfb) не хочет про него вспоминать. Заговор какой-то.
На всякий случай дам ссылочку:
http://lib.rus.ec/node/121665#comment-32133
Отв: За что я ненавижу XML
никакого заговора нет. есть банальная человеческая лень.
как заметил выше Илья, каждый буратино сам себе враг. вот и я, после года активных и не очень изысканий, дописал спецификацию, начал писать редактор, после чего был благополучно задавлен бытовухой (ремонт в доме), и дебильной работой (1С - зло).
уговариваю себя возобновить работу над nfb, но пока безрезультатно :(
Отв: За что я ненавижу XML
если откровенно, то до того момента, как можно будет говорить о новом формате, для него должны быть написаны не только редакторы и читалки, но и библиотеки, аналогичные libxml2, чтобы кодеры на php не изобретали велосипеды, а могли использовать готовое работающее решение.
всего делов-то взяться, и сделать...
Отв: За что я ненавижу XML
Вызывающе неверная информация.
ТеХ прост и логичен, с точки зрения поиска ошибок однозначно приятнее XML.
Явление временное.
Только до тех пор, пока лично не придётся ручками поковыряться в [хотя бы средне-сложном] конфиге, написанном для простоты парсинга на XML.
Отв: За что я ненавижу XML
Видите ли, в чем дело...
Я с ТеХом работал много лет. Профессионально работал, чужие файлы для публикации готовил. Прошло через меня этих файлов - сотни. Проблем решено с ними - тысячи.
Знаю, что говорю.
Но чем рвать рубашку на груди, приведу один только фактик. Лучшие умы ТеХовского мира много-много лет назад начали работу над LaTeX 3. Результата нет до сих пор и, очевидно, уже не будет. Почему? Да потому что трудно. Слишком замороченная вещь этот ТеХ, чтобы писать на нем нормальный софт. Создание безумного гения, невероятно крутое для своего времени (конец 70-х), но сейчас вся эта его крутота, хитрозаверченность и оптимизированность уже как кость в горле. Все меньше желающих биться головой об стену и решать задачи уровня всесоюзной олимпиады по программированию только для того, чтобы добавить какой-нибудь несчастный счетчик. И интерес постепенно угас. Лучшие умы разбрелись кто куда. Ушел и я, как только появилась возможность более-менее нормально верстать книги в XML.
LaTeX 2e - это последняя остановка, дальше поезд идет в депо. Использоваться в почти неизменном виде он будет еще очень долго, конечно; будут и живые побеги появляться. Но в целом - это труп. Увы.
Что же касается конфигов в XML - так это же просто мечта, если руки из правильного места растут. Не нужно писать свой парсер со своими багами, а нужные значения ищутся одной строчкой на правильном языке XPath. Причем ищутся как угодно - хоть по разделам, хоть по уникальным ID, хоть еще как. Есть, конечно, мазозисты - XPath не знают, бродят по дереву ножками, спотыкаясь и матерясь на каждом шагу, да еще и "парсер" свой собтственный норовят изобрести. Ну так что с такими поделаешь? Просто нужно подождать, пока естественный отбор нас от них избавит.
Отв: За что я ненавижу XML
Мечта программиста, пишущего софт. Думать не надо, всё сделает парсер.
И страшный сон пользователя, оный софт конфигурируещего. Продираться через этот весь бред. Текстовым редактором, xml редакторы не завезли.
Если пользователей у программы меньше, чем разработчиков модуля чтения конфигов - прекрасно. Для таких программ XML cамое то. Ваш случай?
А если больше - то как-то без XML лучше. Вот, к примеру, nginx обходится своим форматом, намного более удобным. И мускул обходится. И много кто ешё.
Отв: За что я ненавижу XML
nginx, говорите?
Нус, нагуглил первое попавшееся:
http://brainspl.at/nginx.conf.txt
Вот уж бред так бред! Представляю, сколько надо мануала читать, чтобы это все в подкорку въелось, сколько попыток и матерщины. Конфиг файл - с точками с запятой! со скобками фигурными! с ифами и брейками!!!
Нет уж, спасибо, XML как-то попроще будет, знаете. Даже если я ничего не знаю о программе, по ее XML-конфигу хотя бы ясно, что там есть и что чему подчинено. И исправить его я смогу, _с гарантией_ не поломав, потому что правила синтаксиса XML можно пересчитать по пальцам одной руки. Конфиг нгинкса, наоборот, я при первой попытке исправить почти с гарантией поломаю.
Отв: За что я ненавижу XML
У нас разное представление о простоте.
По мне
server {
server_name lib.rus.ec;
location / {
root /www;
}
}
выглядит заметно аккуратнее и удобнее, чем
<SERVER>
<SERVER-NAME>lib.rus.ec</SERVER-NAME>
<LOCATION mask="/">
<ROOT>/www</ROOT>
</LOCATION>
</SERVER>
Сама идея именовать закрывающие скобки, удваивая практически объём текста, который надо читать, достойна всяческого осуждения. Как и паталогическая любовь к лишним кавычкам.
Чем меньше букв надо прочитать - тем быстрее читается и понимается конфиг, тем проще в нём ориентироваться. Даже странно что такие простейшие вещи приходится разжёвывать.
Если для разметки текста XML неудобен в силу некоторых ошибок реализации не слишком удобен, то для конфигов он непригоден категорически. К счастью, большинство серьёзных программистов это понимают и XML-конфиги встречаются нечасто.
Отв: За что я ненавижу XML
Отв: За что я ненавижу XML
Неприятный, но не основной. Не единственный. Да и то - во всех практически языках закрывающая скобка - одни символ. А тут можно было уложиться в три, да и то недодумались. Недоумки.
Много их, неприятных моментов.
Слишком много.
Наберут птушников, сляпают на коленке, а нам мучаться.
Отв: За что я ненавижу XML
чушь какая, во первых определитесь: Вы действительно в "голом" TeX верстаете? Или все таки используете LaTeX? Что в нем неудобного то?
Язык TeX и его компилятор _официально_ заморожены. LaTeX развивается, что конкретно в нем не устраивает не прозвучало... я так полагаю не осилили написание стилевых файлов? Ну так не Вы один не осилили.
(La)TeX с стилем "fb2" лучший fb2 :) Ну зачем реализовать все то что уже реализовано? Конвертацией даже некую совместимость можно обеспечить со старыми читалками. Например в графику засовывать все новые изыски которые старые версии формата не поддерживают.
Отв: За что я ненавижу XML
Ха.
Я еще раз повторяю: я верстал ЧУЖИЕ файлы. И там был полный зоопарк: и все виды латехов, и плейн, и АМС, и черт в ступе. Все это заставлять не просто верстаться, а приводить к общему стилю - врагу не пожелаешь. Стилевик у нас свой был, разумеется, но это не спасает, потому что в ТеХе в принципе нет никакой валидации или инкапсуляции, и никто не может помешать автору написать \documentclass и сразу после начать извращаться с голыми регистрами и низкоуровневыми шрифтами. Что большинство из них и делало.
То, что некоторые части теховского мира "заморожены", типа помогает. Слегка. Представляю, какая была веселуха, когда они еще не были заморожены.
Отв: За что я ненавижу XML
Надо было отдавать пользователям свой стилевой файл с примером скелетона статьи в сборник.
Даже если приходит что то не вразумительное, его можно просто переверстать выкинув все изыски автора. Получить чистый текст элементарно просто.
Мы обсуждаем случай когда книга _целиком_ переводится в электронный вид. Все ужасы описанной не совместимости не очень то актуальны.
Кроме того художественная литература имеет примитивнейшую верстку. А сложные случаи химии и музыки сейчас вообще невозможны к просмотру на читалках имеющих умеренную цену и в имеющихся форматах типа fb2.
Отв: За что я ненавижу XML
Отв: За что я ненавижу XML
http://www.jrapublish.com/help/Appendices/Embedding_Metadata.htm
Appendix F - Embedding Metadata in DjVu Files
Introduction
JRAPublish™ introduces a standard architecture for embedding metadata in DjVu files.
Metadata is information about documents, stored in individual data fields. These fields define, classify and categorize the documents. Historically these data fields have resided in databases, apart from the documents themselves. JRAPublish™ allows you to embed the data fields directly into DjVu documents, making them portable. In other words, they "take their metadata with them".
Each document format has its own structure for storing embedded metadata. For example, HTML has Metatags and PDF has the DocInfo field dictionary. The DjVu file format lacks a formal metadata structure, but the open architecture of the DjVu format permits us to create our own standard for metadata storage "inside" DjVu files.
The purpose and benefit of storing metadata in the DjVu file structure is that it will not be lost (left behind) during INDIRECT <-> BUNDLED conversions, as well as when downloading a DjVu file with the DjVu web browser plug-in. Because metadata is an integrated part of the DjVu file, the DjVu file is portable, as it "carries" its metadata with it at all times. As a result, for example, a DjVu file can be downloaded from the web and re-indexed on the desktop or on CD and the metadata will still be present. We call this form of metadata storage "Embedded Metadata".
In our standard architecture, metadata fields are stored with tag delimiters. For example, this document in the DjVu format has title, author and date fields that are expressed and stored as:
teg title teg Metadata Storage for DjVu files teg слешь title teg
teg author teg John Smith teg слешь author teg
teg date teg 20011204 teg слешь date teg
Metadata is stored in our standard architecture at three levels: document-level, shared-page-level and page-level.
Отв: За что я ненавижу XML
Ты не умничай, ты пальцем покажи - где мне в при создании djvu жанр вписать?
Отв: За что я ненавижу XML
ну как то так:
djvutoxml файл.djvu > out.xml
в OBJECT первой странице
METADATA value="xxxxxxx" name="xxx"
djvuxmlparser ./out.xml
теперь если запросить djvutoxml файл.djvu в выводе доступны поля заданные нами в первой странице.
Отв: За что я ненавижу XML
есть тонкость (авторы похоже на эти конкретно утилиты забили откровенно :))) )
работает djvused ./djvu_with_xmp_final.djvu -e ' print-meta'
для того что бы увидеть ключи из коммандной строки
Author "Phil Harvey"
Title "DjVu Metadata Sample"
Subject "ExifTool DjVu test image"
Creator "ExifTool"
CreationDate "2008-09-23T12:31:34-04:00"
ModDate "2008-11-11T09:17:10-05:00"
Keywords "ExifTool, Test, DjVu, XMP"
Producer "djvused"
note "Must escape double quotes (\") and backslashes (\\)"
Trapped "Unknown"
annote "Did you get this?"
url "http://owl.phy.queensu.ca/~phil/exiftool/"
а что бы поставить меняют на -e ' set-meta ./metafile' -s
в metafile
лежит список тегов разделенных от их значений табуляцией
значения могут быть в utf8
то есть допустима строчка в ./metafile:
janre tabляция "Детектив"
Отв: За что я ненавижу XML
Где используется ?
Отв: За что я ненавижу XML
Теги наверное в движках поисковых используются, там обычно все на плугинах.
Страницы