Что хорошие альтернативные форматы данных к XML?

Скажем, imgPath - это переменная с фоновым URL, вы можете сделать это

const bg = `<div style="background: url(${imgPath})"></div>`;

ИЛИ в jQuery

$("#bg").css({
  "background":`url( ${imgPath} )`
})
19
задан Nick 4 September 2008 в 17:15
поделиться

16 ответов

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

4
ответ дан 30 November 2019 в 02:00
поделиться

Я не отклонил бы простой текст, как CSV или разграниченный вкладкой.

5
ответ дан 30 November 2019 в 02:00
поделиться

HDF5 является очень компактным форматом данных с некоторыми характеристиками, которые подобны xml. Библиотеки .NET оставляют желать лучшего, но формат масштабируется очень хорошо и с точки зрения размера и с точки зрения производительности.

4
ответ дан 30 November 2019 в 02:00
поделиться

Не забывайте приблизительно YAML!

JSON, кажется, имеет лучшую поддержку все же. Например, библиотека Prototype JS имеет превосходные встроенные функции JSON.

9
ответ дан 30 November 2019 в 02:00
поделиться

Статья Jeff о Налог Угловой скобки суммирует много альтернатив (хорошо, главным образом YAML), и привел меня к статья Wiki о легких языках разметки .

Обновление: , Хотя YAML является возможной "альтернативой XML" для некоторых приложений, эти два не, как я сначала думал, изоморфный.

Действительно, это "не является язык разметки".

, Кроме того, YAML не так "легок", как это появляется. Для документов, которые могут быть представлены в простом XML (таком как пример Jeff), YAML является явно менее подробным. Но YAML предлагает много других специализированных структур, включая в список намного больше символов и последовательностей, чем резервируется XML.

Нижняя строка при поиске XML-without-angle-brackets, YAML, не является им.

13
ответ дан 30 November 2019 в 02:00
поделиться

я не отклонил бы простой текст, как CSV или разграниченный вкладкой.

я действительно ищу альтернативы, которые имеют определенную структуру и (кросс-платформенный, много язык) поддержка библиотеки. Я интересуюсь рассмотрением различных проектов и их за и против. Мне нравится идея форматов, которые могут иметь текст и "двоичный файл" (компактный, "скомпилированный", быстрый ввод-вывод, меньшее место) формат. Преимущество наличия библиотек состоит в том, что они выполняют парсинг и возможно дополнительное манипулирование данными / проверка для Вас.

, Хотя сказавший, что, существует определенно использование для простых форматов как .ini, .plist и CSV и т.д. Вам не придется всегда использовать молоток для взламывания гайки.

1
ответ дан 30 November 2019 в 02:00
поделиться

Кажется, существует большая поддержка разных платформ для JSON.

18
ответ дан 30 November 2019 в 02:00
поделиться

Если Вы спрашиваете в перспективе DSL, , Схема Хитрости могла бы помочь, как уже предложено с S-выражениями.

Лично я также использую JSON для транзакций Ajax.

0
ответ дан 30 November 2019 в 02:00
поделиться

JSON является допустимым YAML, который мог быть очень полезным. Два для одного!

1
ответ дан 30 November 2019 в 02:00
поделиться

Ересь! XML является королем данных. Скажите "нет" узурпаторам, прочь с их головами! Да здравствует XML!

, Но серьезно если просто нуждаются в данных, используют Json, для поддержки и элегантности, но если Вам нужно форматирование, xpath как запросы, дополнительные метаданные, и т.д... Палка с Примечанием XML

: Я использую Xml для системного поколения строительных норм и правил конфигураций и подобных задач, но Json для Rpc, Sql для запросов и постоянства и наконец Yaml тут и там для входа и быстрых задач, другими словами, выбираю appriopiate формат для потребности.

1
ответ дан 30 November 2019 в 02:00
поделиться

Ради полноты я упомяну Edifact, для которого я записал интерфейс давным-давно.

1
ответ дан 30 November 2019 в 02:00
поделиться

Но в том, что стоит?

я - все для JSON во многих ситуациях, особенно где вес или клиентская работа являются беспокойством, но переезжающий от XML теряет удобочитаемость (настолько важный в тех файлах конфигурации) и питание завтрашних проблемных решений как XSLT и XPath. Действительно убедитесь, почему и когда Вы переедете: это - фактический стандарт по причине.

(в стороне: моя привычка состоит в том, чтобы использовать XML внутренне и преобразовать это к JSON, где это - желаемый вывод)

1
ответ дан 30 November 2019 в 02:00
поделиться

XML часто используется для конфигурации, и в этом случае существуют некоторые другие простые форматы устройства хранения данных, которые часто используются (меньше ориентированного документа):

  1. .property файлы
  2. файлы INI

существуют различные пути к чтению и записи и, в зависимости от платформы и, в зависимости от языка.

2
ответ дан 30 November 2019 в 02:00
поделиться

S-выражения работают отлично, если Вы не должны применять атрибуты к элементам. Другая альтернатива является YAML.

2
ответ дан 30 November 2019 в 02:00
поделиться

Что Вы хотите сделать с данными? Сохранить его? Раздать его? Отобразить его? Эти вопросы должны управлять Вашим поиском соответствующей технологии. Просто выяснение, как необходимо отформатировать данные, похоже на выяснение, какой язык необходимо программировать в, не указывая то, что Вы хотите выполнить.

Для большинства задач данных, хорошо у доктора Codd есть средство исправления: http://en.wikipedia.org/wiki/Edgar_F._Codd . Базы данных должны смочь сделать примерно что-либо, что Вы имеете в виду.

, Если Вы раздаете его, я защищаю простой текст. Когда Вы двоичный формат самокрутки, Ваши данные уходят, когда Ваш синтаксический анализатор уходит.

С простым текстом, более глубокий вопрос состоит в том, куда поместить метаданные. Если это является внешним к файлу данных или внутренним ("самоописание").

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

2
ответ дан 30 November 2019 в 02:00
поделиться

Вы могли попробовать Google protobufs. Это намного быстрее, чем XML. Существуют библиотеки для него в C, C++, C#, Java и Python (существует альфа versons для рубина и жемчуга). Но это является двоичным.

4
ответ дан 30 November 2019 в 02:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: