YAML - Charakter-Streams

In YAML stoßen Sie auf verschiedene Zeichenströme wie folgt:

  • Directives
  • Grenzmarkierungen dokumentieren
  • Documents
  • Kompletter Stream

In diesem Kapitel werden wir sie ausführlich diskutieren.

Richtlinien

Anweisungen sind grundlegende Anweisungen, die im YAML-Prozessor verwendet werden. Direktiven sind die Präsentationsdetails wie Kommentare, die nicht im Serialisierungsbaum enthalten sind. In YAML gibt es keine Möglichkeit, private Direktiven zu definieren. In diesem Abschnitt werden verschiedene Arten von Richtlinien anhand relevanter Beispiele erläutert.

Reservierte Richtlinien

Reservierte Anweisungen werden mit drei Bindestrichen (---) initialisiert, wie im folgenden Beispiel gezeigt. Die reservierten Anweisungen werden in einen bestimmten Wert von JSON konvertiert.

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

YAML-Richtlinie

YAML-Anweisungen sind Standardanweisungen. Bei der Konvertierung in JSON enthält der abgerufene Wert einen Schrägstrich in vorhergehenden und abschließenden Zeichen.

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

Grenzmarkierungen dokumentieren

YAML verwendet diese Markierungen, um zu ermöglichen, dass mehr als ein Dokument in einem Stream enthalten ist. Diese Markierungen werden speziell verwendet, um die Struktur des YAML-Dokuments zu vermitteln. Beachten Sie, dass eine Zeile, die mit „---“ beginnt, zum Starten eines neuen Dokuments verwendet wird.

Der folgende Code erklärt dies anhand von Beispielen -

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

Unterlagen

Das YAML-Dokument wird als einzelne native Datenstruktur betrachtet, die als einzelner Stammknoten dargestellt wird. Die Präsentationsdetails im YAML-Dokument wie Anweisungen, Kommentare, Einrückungen und Stile gelten nicht als darin enthaltene Inhalte.

In YAML werden zwei Arten von Dokumenten verwendet. Sie werden in diesem Abschnitt erklärt -

Explizite Dokumente

Es beginnt mit der Dokumentstartmarkierung, gefolgt von der Darstellung des Stammknotens. Das Beispiel einer expliziten YAML-Deklaration ist unten angegeben -

---

some: yaml

...

Es enthält eine explizite Start- und Endmarkierung, die im angegebenen Beispiel „---“ und „…“ lautet. Beim Konvertieren der angegebenen YAML in das JSON-Format erhalten wir die Ausgabe wie unten gezeigt -

{
   "some": "yaml"
}

Implizite Dokumente

Diese Dokumente beginnen nicht mit einer Dokumentstartmarkierung. Beachten Sie den unten angegebenen Code -

fruits:
   - Apple
   - Orange
   - Pineapple
   - Mango

Wenn Sie diese Werte in das JSON-Format konvertieren, erhalten Sie die Ausgabe als einfaches JSON-Objekt (siehe unten).

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

Kompletter Stream

YAML enthält eine Folge von Bytes, die als Zeichenstrom bezeichnet werden. Der Stream beginnt mit einem Präfix, das eine Bytereihenfolge enthält, die eine Zeichenkodierung angibt. Der vollständige Stream beginnt mit einem Präfix, das eine Zeichenkodierung enthält, gefolgt von Kommentaren.

Ein Beispiel für einen vollständigen Stream (Zeichen-Stream) ist unten dargestellt -

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