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"