Яке значення XML у світі JSON?


17

Наскільки важливо вивчити XML, коли JSON здатний зробити майже все, що мені потрібно? Сказавши це, я використовую JSON в основному для запитів AJAX та отримання даних з різних API. Я абсолютно новачок у веб-розробці, і тому я прошу про це в тому, що я хочу знати, чи варто мені йти вперед і купувати книгу на XML, чи я можу просто дати їй пропуск.


2
З огляду на те, що ви зіткнетесь з XML на досить послідовній основі, я б продовжував діставати книгу.
Тім Пост

11
Просто прочитайте стандарт. Я ніколи не знаходив XML складним для навчання / розуміння, просто нудно.
дієтабудда

Я ніколи цього не розумів - що так складно з розумінням XML? 99,9% XML там використовується просто як контейнер для даних - це прості текстові файли людей, нічого складного!
Кіт Палмер-молодший

всі повинні нам CSV ...
Джонатан дос Сантос

1
@KeithPalmer: і все-таки існує велика кількість помилок у всьому Інтернеті. Від неправильної декларації кодування, до пропущених вихідних символів для символів, які потребують їх просто використання XML-файлу як одного контейнера CDATA CD-файлу. І не запускайте мене про те, як помилятися з просторами імен.
Йоахім Зауер

Відповіді:


29

Вам потрібно буде вивчити XML, щоб дістатися будь-де у світі. Це те, що сприяє великій кількості B2B-комунікацій, і існує багато стандартних форматів XML, що описують важливі.

Просто обмеження себе в JSON надзвичайно самообмежує. Так, ви будете перебирати дзвінки AJAX, але що станеться, коли вам потрібно спілкуватися з GeoServer? Він дотримуватиметься GIS-стандартів та розповсюджуватиме XML у форматах WCS (Web Capability Service), WMS (служба веб-карт) та WFS (Web Feature Service) серед інших. Якщо ви не знаєте, як обробити XML, у вас виникнуть проблеми.

Звичайно, будь-який маршаллер (доменний об'єкт у текстовому форматі), вартій його солі, зможе перетворити свої об'єкти на XML / JSON / YAML та з нього, щоб ви могли зробити аргумент, що поки ви можете ховатися за маршалером, вам потрібно лише мати справу з об’єктами домену. Веб-сервіси надають WSDL саме для цієї мети. Але рано чи пізно вам потрібно буде прочитати та зрозуміти зміст ваших запитів та відповідей, і це, безумовно, вимагатиме розуміння XML.

І не будемо забувати про хороший XHTML старий веб-стандарт для HTML-сторінок. Це XML.

Отже, коротше, вивчіть XML - і тримайте JSON де завгодно, бо це прекрасно.


2
Велике спасибі, Гері! XML виглядає настільки роздутим і дуже страшно занурюватися, хоча, але йдучи тим, що ти сказав, здається, мені доведеться це навчитися ......!
Расмус

@Alice Почніть повільно. Подумайте про це як повторюваний HTML. Потім дозвольте чутливість до справ. Потім розглянемо, як різні типи даних (наприклад, int, рядок, дата) можуть бути представлені та позначені всередині цих елементів або атрибутів. Потім зробіть це представлення типу даних трохи більш формальним (XSD), і ви будете приблизно настільки далеко, як вам потрібно буде піти. Цей підручник повинен допомогти: devguru.com/features/tutorials/xml/beginning_xml.html
Gary Rowe

1
Я не знаю, якою мовою / рамкою / платформою ви користуєтесь, але що б це не було, я впевнений, що ви побачите, що в ньому є стандартні бібліотеки для розбору та генерування XML, ви не повинні знаходити себе в інтерпретації точних дужок вручну.
Carson63000

5
+1, хоча для чого це варто, XHTML насправді не все таке нове і, здається, перейшов на заднє сидіння з HTML 5.
Джон М Гант

1
Можливо. Моя думка була більше в тому, що W3C здається, що їхнє мислення щодо XHTML трохи змінилося за останні кілька років. Він все ще є і підтримується, але це вже не схоже на те, що ви якийсь IE-люблячий таблицю-макет із використанням сценарію kiddie, якщо ви використовуєте звичайний HTML замість XML. Як би то не було дотично до вашої відповіді, хоча вибачте з цього приводу.
Джон М Гант

6

XML безумовно перекреслює JSON для розмітки (що, зрештою, натякає на ім’я).

Я не хотів би бачити випадкову сторінку XHTML, перетворену у формат JSON. Це було б жахливо. Усі OpenOffice та останні видання Microsoft Office використовують стислий XML як обраний формат.

Як правило: розмітка відбувається у XML; структуровані дані надходять у JSON.

Це коли ви виводите дані та повністю контролюєте формат. Якщо ви виводите дані відповідно до галузевих стандартів або споживаєте чужі дані, можливо, вам доведеться використовувати XML навіть у тих місцях, де JSON видасться більш підходящим. Це тому, що XML вже давно встановлений і використовується в багатьох стандартах.


+1, особливо для зазначення різниці між розміткою та структурованими даними.
Арсеній Муренко
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.