YAML - Indentasi dan Pemisahan

Indentasi dan pemisahan adalah dua konsep utama saat Anda mempelajari bahasa pemrograman apa pun. Bab ini membahas tentang dua konsep yang terkait dengan YAML secara detail.

Indentasi YAML

YAML tidak menyertakan spasi wajib apa pun. Lebih jauh, tidak perlu konsisten. Indentasi YAML yang valid ditunjukkan di bawah ini -

a:
   b:
      - c
      -  d
      - e
f:
      "ghi"
  • Anda harus mengingat aturan berikut saat bekerja dengan indentasi di YAML: Blok aliran harus dimaksudkan dengan setidaknya beberapa spasi dengan tingkat blok di sekitarnya saat ini.

  • Isi aliran YAML mencakup beberapa baris. Awal isi aliran dimulai dengan{ atau [.

  • Item daftar blok menyertakan indentasi yang sama dengan level blok di sekitarnya karena - dianggap sebagai bagian dari indentasi.

Contoh Blok yang Dimaksud

Perhatikan kode berikut yang menunjukkan indentasi dengan contoh -

--- !clarkevans.com/^invoice
invoice: 34843
date   : 2001-01-23
bill-to: &id001
   given  : Chris
   family : Dumars
   address:
      lines: |
            458 Walkman Dr.
            Suite #292
      city    : Royal Oak
      state   : MI
      postal  : 48046
ship-to: *id001
product:
    - sku         : BL394D
      quantity    : 4
      description : Basketball
      price       : 450.00
   - sku         : BL4438H
      quantity    : 1
      description : Super Hoop
      price       : 2392.00
tax  : 251.42
total: 4443.52
comments: >
    Late afternoon is best.
    Backup contact is Nancy
    Billsmer @ 338-4338.

Pemisahan String

String dipisahkan menggunakan string kutip ganda. Jika Anda keluar dari karakter baris baru dalam string tertentu, itu sepenuhnya dihapus dan diterjemahkan ke dalam nilai spasi.

Contoh

Dalam contoh ini kami telah memfokuskan daftar hewan yang terdaftar sebagai struktur array dengan tipe data string. Setiap elemen baru terdaftar dengan awalan tanda hubung seperti yang disebutkan sebagai awalan.

-
 - Cat
 - Dog
 - Goldfish
-
 - Python
 - Lion
 - Tiger

Contoh lain untuk menjelaskan representasi string di YAML disebutkan di bawah ini.

errors:
      messages:
         already_confirmed: "was already confirmed, please try signing in"
         confirmation_period_expired: "needs to be confirmed within %{period}, please request a new one"
         expired: "has expired, please request a new one"
         not_found: "not found"
         not_locked: "was not locked"
         not_saved:
            one: "1 error prohibited this %{resource} from being saved:"
            other: "%{count} errors prohibited this %{resource} from being saved:"

Contoh ini merujuk pada kumpulan pesan kesalahan yang dapat digunakan pengguna hanya dengan menyebutkan aspek kunci dan mengambil nilai yang sesuai. Pola YAML ini mengikuti struktur JSON yang dapat dipahami oleh pengguna yang baru mengenal YAML.