6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ZOZOAdvent Calendar 2024

Day 24

YSONについて

Last updated at Posted at 2024-12-23

YSONはYSON - Simple Object Notationの略で、シンプルなデータシリアライゼーションフォーマットを目的にしたフォーマットです。
YSONはJSONと比較して冗長な構文の要素を削減しています。

実態に以下のYSONは316個のシンボルからできあがっている一方で、

name Luke Skywalker
height 1.72
hair_color Blond
birth_year 19 BBY
gender Male
homeworld http://swapi.co/api/planets/1/
films
  http://swapi.co/api/films/1/,
  http://swapi.co/api/films/2/,
  http://swapi.co/api/films/3/,
species
  http://swapi.co/api/species/1/,
father
  name Darth Vader
  height 2.02
  hair_color

それと同等のJSONは437個のシンボルで表現できています。

{
  "name": "Luke Skywalker",
  "height": 1.72,
  "hair_color": "Blond",
  "birth_year": "19 BBY",
  "gender": "Male",
  "homeworld": "http://swapi.co/api/planets/1/",
  "films": [
    "http://swapi.co/api/films/1/",
    "http://swapi.co/api/films/2/",
    "http://swapi.co/api/films/3/"
  ],
  "species": [
    "http://swapi.co/api/species/1/"
  ],
  "father": {
    "name": "Darth Vader",
    "height": 2.02,
    "hair_color": null
  }
}

JSONとYSONを比較すると以下のような違いがあると分かります。

  • 文字列を囲むクォートが存在しない
  • キーバリューの区切りが : ではなく空白
  • キーバリューのバリューがnullの場合はキーのみを記載する
  • 配列の要素区切り文字は , で、オブジェクトの要素区切り文字は改行

出展:

6
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?