JSON, XML, YAML

Mind a három hierarchikus adattárolásra használt szabvány, de akkor mi köztük a külömbség?

XML

Az XML (Extensible Markup Language) egy általános célú leíró nyelv. Elsődleges célja strukturált szöveg és információ megosztása az interneten keresztül.

Előnyei

  • Könnyen olvasható
  • Támogatja a Unicode-ot
  • A legtöbb alapvető adatstruktúrára képes

Hátrányai

  • Relatív sok redundancia, emiatt nagyobb tárhelyigény
xml logo i believe
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="UTF-8"?>
<personnel>
  <person>
    <name>John Smith</name>
    <age>30</age>
    <country>us</country>
  </person>
  <person>
    <name>Jane Brown</name>
    <age>40</age>
    <country>uk</country>
  </person>
</personnel>

JSON

A JSON (JavaScript Object Notation) egy egyszerű, szöveg alapú szabvány számítógépek közötti adatcserére. A JavaScriptből alakult ki egyszerű adatstruktúrák leírására.

Előnyei

  • Kevés redundancia
  • Relatív kevés tárhelyigény
  • A legtöbb programozási nyelvben van hozzá könyvtár

Hátrányai

  • A sok zárójel miatt egyes esetekben nehezen olvasható
json logo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
  "personnel": [
    {
      "name": "John Smith",
      "age": 30,
      "country": "us"
    },
    {
      "name": "Jane Brown",
      "age": 40,
      "country": "uk"
    }
  ]
}

YAML

A YAML (YAML Ain't Markup Language, eredetileg Yet Another Markup Language) egy ember által is olvasható, adat szerializációs formátum. Leggyakrabban konfigurációs fájlokhoz és adattároláshoz használják.

Előnyei

  • Kevés redundancia, minimális tárhelyigény
  • Könnyen olvasható
  • Kompatibilis a JSON-al

Hátrányai

  • Komplex beolvasás
yaml logo
1
2
3
4
5
6
7
8
---
personnel:
- name: "John Smith"
  age: 30
  country: "us"
- name: "Jane Brown"
  age: 40
  country: "uk"

Források