YAML - 節點屬性



每個展示節點包含兩個主要特徵,分別稱為錨定標記。可以指定節點屬性,也可以從字元流中省略節點屬性。

基本的節點表示示例如下−

%YAML 1.1
---
!!map {
   ? &A1 !!str "foo"
   : !!str "bar",
   ? !!str &A2 "baz"
   : *a1
}

節點錨定

錨定屬性表示一個節點以供將來引用。使用符號 (&) 將節點中的 YAML 表示字元流注明。YAML 處理器無需保留錨定名稱以及其中包含的表示詳細資訊。以下程式碼對此進行了說明−

%YAML 1.1
---
!!map {
   ? !!str "First occurence"
   : &A !!str "Value",
   ? !!str "Second occurence"
   : *A
}

以下是使用錨定節點生成 YAML 的輸出−

---
!!map {
   ? !!str "First occurence"
   : !!str "Value",
   ? !!str "Second occurence"
   : !!str "Value",
}

節點標記

標記屬性表示本機資料結構的型別,該型別完整地定義了一個節點。使用 (!) 指示符表示一個標記。標記被視為表示圖形的固有部分。以下示例詳細說明了節點標記−

%YAML 1.1
---
!!map {
   ? !<tag:yaml.org,2002:str> "foo"
   : !<!bar> "baz"
}

節點內容

可以以流內容或塊格式表示節點內容。塊內容延伸至行末,並使用縮排表示結構。每種集合型別都可以表示為一個特定的單流集合樣式,也可以視為一個單個塊。以下程式碼對此進行了詳細說明−

%YAML 1.1
---
!!map {
   ? !!str "foo"
   : !!str "bar baz"
}

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

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

%YAML 1.1
---
!!str "foo bar\n"
廣告
© . All rights reserved.