YAML

format serialisasi data yang dapat di baca oleh manusia

YAML adalah format serialisasi data terbaca-manusia yang mengambil konsep dari bahasa-bahasa seperti XML, C, Python, Perl, serta format surat elektronik seperti yang tercantum dalam RFC 2822. YAML pertama kali diusulkan oleh Clark Evans pada tahun 2001 [2] yang merancang format ini bersama dengan Ingy döt Net dan Oren Ben-Kiki. YAML tersedia bagi beberapa bahasa dan skrip pemrograman.

YAML
Jenis MIMEaplikasi/yaml[1]
Rilis pertama11 Mei 2001; 23 tahun lalu (2001-05-11)
Rilis terbaru1.2 (Revisi 1.2.2) / 1 Oktober 2021; 3 tahun lalu (2021-10-01)
Jenis formatPertukaran data
Situs webyaml.org

Sejarah

sunting

Pada awal pengembangannya, YAML dimaksudkan sebagai singkatan dari "Yet Another Markup Language".[3] Dalam perkembangannya, untuk menegaskan tujuannya yang terfokus pada data dan bukan markah dokumen, YAML diubah menjadi singkatan rekursif dari "YAML Ain't a Markup Language." Nama inisialnya awalnya diperuntukan sebagai referensi tongue-in-cheek[4] ke ranah teknologi, mereferensikan tujuannya sebagai bahasa markah dengan konstruksi lain, tetapi kemudian hal tersebut digunakan kembali menjadi YAML Ain't Markup Language, akronim rekursif, untuk membedakan tujuannya sebagai berorientasi data, bukan markah dokumen.

Versi Tanggal perilisan
YAML 1.0 29 Januari 2004
YAML 1.1 18 Januari 2005
YAML 1.2.0 21 Juli 2009
YAML 1.2.1 1 Oktober 2009
YAML 1.2.2 1 Oktober 2021

Perbandingan dengan format lain

sunting

Perbandingan dengan JSON

sunting

Sintaks JSON adalah dasar dari YAML versi 1.2, yang diumumkan secara resmi dengan tujuan untuk menjadikan YAML "sesuai dengan JSON sebagai subset resmi".[5] Walaupun versi sebelumnya dari YAML tidak sepenuhnya kompatibel,[6] perbedaannya jarang terlihat, dan sebagian besar dokumen JSON dapat diurai oleh beberapa parser YAML seperti Syck.[7] Hal ini dikarenakan struktur semantik JSON setara dengan "gaya sebaris" opsional dalam penulisan YAML. Sementara hierarki yang ditambahkan dapat ditulis dalama gaya satu baris seperti JSON, ini bukan gaya YAML yang direkomendasikan kecuali jika gaya ini membantu kejelasan.

YAML mempunyai fitur-fitur tambahan yang tidak terdapat pada JSON, termasuk komentar, tipe data yang dapat diperluas, anchor relasional, string tanpa tanda kutip, dan tipe pemetaan yang mempertahankan urutan kunci.

Karena keringkasannya, Serialisasi dan deserialisasi JSON jauh lebih cepat daripada YAML.[8]

Pranala luar

sunting

Referensi

sunting
  1. ^ Polli, Roberto; Wilde, Erik; Aro, Eemeli (2024-02-21). YAML Media Type (Laporan). Internet Engineering Task Force. Diarsipkan dari versi asli tanggal 2024-02-21. Diakses tanggal 2024-02-21. 
  2. ^ Evans, Clark (11 Mei 2001). "YAML Draft 0.1". Yahoo! Tech groups: sml-dev. Diarsipkan dari versi asli tanggal 2013-09-07. Diakses tanggal 2008-08-02. 
  3. ^ "Yet Another Markup Language (YAML) 1.0". Diakses tanggal 2008-11-24. 
  4. ^ "Yet Another Markup Language (YAML) 1.0". stackoverflow.com. Diarsipkan dari versi asli tanggal 2021-04-23. Diakses tanggal 2021-03-24. 
  5. ^ Kesalahan pengutipan: Tag <ref> tidak sah; tidak ditemukan teks untuk ref bernama YAML Version 1.2
  6. ^ The incompatibilities were as follows: JSON allows extended character sets like UTF-32 and had incompatible unicode character escape syntax relative to YAML; YAML required a space after separators like comma, equals, and colon while JSON does not. Some non-standard implementations of JSON extend the grammar to include Javascript's /*...*/ comments. Handling such edge cases may require light pre-processing of the JSON before parsing as in-line YAML. See also [1] Diarsipkan 2013-08-29 di Wayback Machine..
  7. ^ Parsing JSON with SYCK Diarsipkan 2016-09-17 di Wayback Machine.. Note that e.g. Symfony's YAML parser does not support line breaks inside [] or {} structures, which is a major incompatibility with JSON.
  8. ^ "Differences Between YAML and JSON". Baeldung. 9 July 2020. Diarsipkan dari versi asli tanggal 7 March 2023. Diakses tanggal 7 March 2023.