úterý 20. září 2022

JSON, YAML, XML

 YAML je další z datových formátů, který se vyplatí znát. Ano, je to "něco jako" JSON. Textový formát s poměrně jednoduchou syntaxí.

Nedávno jsem v tomto blogu vysvětloval formát JSON na tomto příkladu:

{
    "cars": {
        "car": [
            {
                "brand": "Ford",
                "age": 6,
                "mileage": 78000,
                "equipment": [
                    "ABS",
                    "navigation",
                    "radio"
                ]
            },
            {
                "brand": "Mercedes",
                "age": 10,
                "mileage": 250000,
                "equipment": [
                    "radio"
                ]
            },
            {
                "brand": "Audi",
                "age": null,
                "mileage": 60000,
                "equipment": [
                    "ABS",
                    "navigation"
                ]
            }
        ]
    }
}

A YAML je ještě jednodušší:

cars:
  car:
    - brand: Ford
      age: 6
      mileage: 78000
      equipment:
        - ABS
        - navigation
        - radio
    - brand: Mercedes
      age: 10
      mileage: 250000
      equipment:
        - radio
    - brand: Audi
      age: null
      mileage: 60000
      equipment:
        - ABS
        - navigation

Jak vidíte, žádné závorky, jen odsazení pomocí mezer. Dokonce ani textové řetězce nemusí být v uvozovkách. Zkrátka formát vhodný i pro manuální zápis.

XML pro stejný příklad, pak vypadá následovně: 

<?xml version="1.0" encoding="UTF-8" ?>
<root>
    <cars>
        <car>
            <brand>Ford</brand>
            <age>6</age>
            <mileage>78000</mileage>
            <equipment>ABS</equipment>
            <equipment>navigation</equipment>
            <equipment>radio</equipment>
        </car>
        <car>
            <brand>Mercedes</brand>
            <age>10</age>
            <mileage>250000</mileage>
            <equipment>radio</equipment>
        </car>
        <car>
            <brand>Audi</brand>
            <age />
            <mileage>60000</mileage>
            <equipment>ABS</equipment>
            <equipment>navigation</equipment>
        </car>
    </cars>
</root>


Žádné komentáře:

Okomentovat