YAML - Karakter Akışları

YAML'de aşağıdaki gibi çeşitli karakter akışlarıyla karşılaşırsınız -

  • Directives
  • Belge Sınırı İşaretleyicileri
  • Documents
  • Tam Akış

Bu bölümde bunları detaylı olarak tartışacağız.

Direktifler

Yönergeler, YAML işlemcide kullanılan temel talimatlardır. Direktifler, serileştirme ağacına yansıtılmayan yorumlar gibi sunum detaylarıdır. YAML'de özel yönergeleri tanımlamanın bir yolu yoktur. Bu bölümde çeşitli direktif türleri ilgili örneklerle tartışılmaktadır -

Ayrılmış Yönergeler

Ayrılmış yönergeler, aşağıdaki örnekte gösterildiği gibi üç kısa çizgi (---) ile başlatılır. Ayrılmış yönergeler belirli JSON değerine dönüştürülür.

%YAML 1.1
--- !!str
"foo"

YAML Direktifi

YAML Direktifleri varsayılan direktiflerdir. JSON'a dönüştürülürse, getirilen değer, önceki ve sonlandıran karakterlerde eğik çizgi karakteri içerir.

%YAML 1.1
---
!!str "foo"

Belge Sınırı İşaretleyicileri

YAML, bir akışta birden fazla belgenin yer almasına izin vermek için bu işaretleri kullanır. Bu işaretleyiciler özellikle YAML belgesinin yapısını iletmek için kullanılır. Yeni bir belgeye başlamak için "---" ile başlayan bir satırın kullanıldığına dikkat edin.

Aşağıdaki kod, örneklerle bunu açıklamaktadır -

%YAML 1.1
---
!!str "foo"
%YAML 1.1
---
!!str "bar"
%YAML 1.1
---
!!str "baz"

Belgeler

YAML belgesi, tek bir kök düğüm olarak sunulan tek bir yerel veri yapısı olarak kabul edilir. YAML belgesindeki direktifler, yorumlar, girinti ve stiller gibi sunum detayları, bunlara dahil edilen içerikler olarak değerlendirilmez.

YAML'de kullanılan iki tür belge vardır. Bu bölümde açıklanmıştır -

Açık Belgeler

Belge başlangıç ​​işaretiyle başlar ve ardından kök düğümün sunumu gelir. YAML açık bildirimi örneği aşağıda verilmiştir -

---

some: yaml

...

Verilen örnekte "---" ve "…" olan açık bir başlangıç ​​ve bitiş işaretleri içerir. Belirtilen YAML'yi JSON biçiminde dönüştürürken, çıktıyı aşağıda gösterildiği gibi alıyoruz -

{
   "some": "yaml"
}

Örtülü Belgeler

Bu belgeler, bir belge başlangıç ​​işaretiyle başlamaz. Aşağıda verilen koda uyun -

fruits:
   - Apple
   - Orange
   - Pineapple
   - Mango

Bu değerleri JSON formatında dönüştürerek, çıktıyı aşağıda verildiği gibi basit bir JSON nesnesi olarak elde ederiz -

{
   "fruits": [
      "Apple",
      "Orange",
      "Pineapple",
      "Mango"
   ]
}

Tam Akış

YAML, karakter akışı olarak adlandırılan bir bayt dizisi içerir. Akış, bir karakter kodlamasını belirten bir bayt sırası içeren bir önekle başlar. Tam akış, karakter kodlamasını içeren bir önekle başlar ve ardından yorumlar gelir.

Tam akış (karakter akışı) örneği aşağıda gösterilmiştir -

%YAML 1.1
---
!!str "Text content\n"