Index: /trunk/ext/_syckmodule.c
===================================================================
--- /trunk/ext/_syckmodule.c	(revision 9)
+++ /trunk/ext/_syckmodule.c	(revision 12)
@@ -3,5 +3,18 @@
 #include <syck.h>
 
-/* Global objects. */
+/* Python 2.2 compatibility. */
+
+#ifndef PyDoc_STR
+#define PyDoc_VAR(name)         static char name[]
+#define PyDoc_STR(str)          (str)
+#define PyDoc_STRVAR(name, str) PyDoc_VAR(name) = PyDoc_STR(str)
+#endif
+
+#ifndef PyMODINIT_FUNC
+#define PyMODINIT_FUNC  void
+#endif
+
+/* Global objects: _syck.error, 'scalar', 'seq', 'map',
+    '1quote', '2quote', 'fold', 'literal', 'plain', '+', '-'. */
 
 static PyObject *PySyck_Error;
@@ -11,6 +24,495 @@
 static PyObject *PySyck_MapKind;
 
-/* Node type. */
-
+static PyObject *PySyck_1QuoteStyle;
+static PyObject *PySyck_2QuoteStyle;
+static PyObject *PySyck_FoldStyle;
+static PyObject *PySyck_LiteralStyle;
+static PyObject *PySyck_PlainStyle;
+
+static PyObject *PySyck_StripChomp;
+static PyObject *PySyck_KeepChomp;
+
+/* The type _syck.Node. */
+
+PyDoc_STRVAR(PySyckNode_doc,
+    "The base Node type\n\n"
+    "_syck.Node is an abstract type. It is a base type for _syck.Scalar,\n"
+    "_syck.Seq, and _syck.Map. You cannot create an instance of _syck.Node\n"
+    "directly. You may use _syck.Node for type checking.\n");
+
+static PyTypeObject PySyckNode_Type = {
+    PyObject_HEAD_INIT(NULL)
+    0,                                          /* ob_size */
+    "_syck.Node",                               /* tp_name */
+    sizeof(PyObject),                           /* tp_basicsize */
+    0,                                          /* tp_itemsize */
+    0,                                          /* tp_dealloc */
+    0,                                          /* tp_print */
+    0,                                          /* tp_getattr */
+    0,                                          /* tp_setattr */
+    0,                                          /* tp_compare */
+    0,                                          /* tp_repr */
+    0,                                          /* tp_as_number */
+    0,                                          /* tp_as_sequence */
+    0,                                          /* tp_as_mapping */
+    0,                                          /* tp_hash */
+    0,                                          /* tp_call */
+    0,                                          /* tp_str */
+    0,                                          /* tp_getattro */
+    0,                                          /* tp_setattro */
+    0,                                          /* tp_as_buffer */
+    Py_TPFLAGS_DEFAULT|Py_TPFLAGS_BASETYPE,     /* tp_flags */
+    PySyckNode_doc,                             /* tp_doc */
+};
+
+/* The type _syck.Scalar */
+
+PyDoc_STRVAR(PySyckScalar_doc,
+    "The Scalar node type\n\n"
+    "_syck.Scalar represents a scalar node in Syck parser and emitter\n"
+    "graph. A scalar node points to a single string value.\n\n"
+    "Attributes:\n\n"
+    "kind -- always 'scalar'; read-only\n"
+    "value -- the node value, a string\n"
+    "tag -- the node tag; a string or None\n"
+    "anchor -- the name of the node anchor or None; read-only\n"
+    "style -- the node style; None (means literal or plain),\n"
+    "         '1quote', '2quote', 'fold', 'literal', 'plain'\n"
+    "indent -- indentation, an integer; 0 means default\n"
+    "width -- the preferred width; 0 means default\n"
+    "chomp -- None (clip), '-' (strip), or '+' (keep)\n");
+
+typedef struct {
+    PyObject_HEAD
+    PyObject *value;
+    PyObject *tag;
+    PyObject *anchor;
+    enum scalar_style style;
+    int indent;
+    int width;
+    char chomp;
+} PySyckScalarObject;
+
+static int
+PySyckScalar_clear(PySyckScalarObject *self)
+{
+    Py_XDECREF(self->value);
+    self->value = NULL;
+    Py_XDECREF(self->tag);
+    self->tag = NULL;
+    Py_XDECREF(self->anchor);
+    self->anchor = NULL;
+
+    return 0;
+}
+
+static int
+PySyckScalar_traverse(PySyckScalarObject *self, visitproc visit, void *arg)
+{
+    if (self->value && visit(self->value, arg) < 0)
+        return -1;
+    if (self->tag && visit(self->tag, arg) < 0)
+        return -1;
+    if (self->anchor && visit(self->anchor, arg) < 0)
+        return -1;
+
+    return 0;
+}
+
+static void
+PySyckScalar_dealloc(PySyckScalarObject *self)
+{
+    PySyckScalar_clear(self);
+    self->ob_type->tp_free((PyObject *)self);
+}
+
+static PyObject *
+PySyckScalar_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
+{
+    PySyckScalarObject *self;
+
+    self = (PySyckScalarObject *)type->tp_alloc(type, 0);
+    if (!self) return NULL;
+
+    self->value = PyString_FromString("");
+    if (!self->value) {
+        Py_DECREF(self);
+        return NULL;
+    }
+
+    self->tag = NULL;
+    self->anchor = NULL;
+    self->style = scalar_none;
+    self->indent = 0;
+    self->width = 0;
+    self->chomp = 0;
+
+    return (PyObject *)self;
+}
+
+static PyObject *
+PySyckScalar_getkind(PySyckScalarObject *self, void *closure)
+{
+    Py_INCREF(PySyck_ScalarKind);
+    return PySyck_ScalarKind;
+}
+
+static PyObject *
+PySyckScalar_getvalue(PySyckScalarObject *self, void *closure)
+{
+    Py_INCREF(self->value);
+    return self->value;
+}
+
+static int
+PySyckScalar_setvalue(PySyckScalarObject *self, PyObject *value, void *closure)
+{
+    if (!value) {
+        PyErr_SetString(PyExc_TypeError, "cannot delete 'value'");
+        return -1;
+    }
+    if (!PyString_Check(value)) {
+        PyErr_SetString(PyExc_TypeError, "'value' must be a string");
+        return -1;
+    }
+
+    Py_DECREF(self->value);
+    Py_INCREF(value);
+    self->value = value;
+
+    return 0;
+}
+
+static PyObject *
+PySyckScalar_gettag(PySyckScalarObject *self, void *closure)
+{
+    PyObject *value = self->tag ? self->tag : Py_None;
+    Py_INCREF(value);
+    return value;
+}
+
+static int
+PySyckScalar_settag(PySyckScalarObject *self, PyObject *value, void *closure)
+{
+    if (!value) {
+        PyErr_SetString(PyExc_TypeError, "cannot delete 'tag'");
+        return -1;
+    }
+
+    if (value == Py_None) {
+        Py_XDECREF(self->tag);
+        self->tag = NULL;
+        return 0;
+    }
+
+    if (!PyString_Check(value)) {
+        PyErr_SetString(PyExc_TypeError, "'tag' must be a string");
+        return -1;
+    }
+
+    Py_XDECREF(self->tag);
+    Py_INCREF(value);
+    self->tag = value;
+
+    return 0;
+}
+
+static PyObject *
+PySyckScalar_getanchor(PySyckScalarObject *self, void *closure)
+{
+    PyObject *value = self->anchor ? self->anchor : Py_None;
+    Py_INCREF(value);
+    return value;
+}
+
+static int
+PySyckScalar_setanchor(PySyckScalarObject *self, PyObject *value, void *closure)
+{
+    if (!value) {
+        PyErr_SetString(PyExc_TypeError, "cannot delete 'anchor'");
+        return -1;
+    }
+
+    if (value == Py_None) {
+        Py_XDECREF(self->anchor);
+        self->anchor = NULL;
+        return 0;
+    }
+
+    if (!PyString_Check(value)) {
+        PyErr_SetString(PyExc_TypeError, "'anchor' must be a string");
+        return -1;
+    }
+
+    Py_XDECREF(self->anchor);
+    Py_INCREF(value);
+    self->anchor = value;
+
+    return 0;
+}
+
+static PyObject *
+PySyckScalar_getstyle(PySyckScalarObject *self, void *closure)
+{
+    PyObject *value;
+
+    switch (self->style) {
+        case scalar_1quote: value = PySyck_1QuoteStyle; break;
+        case scalar_2quote: value = PySyck_2QuoteStyle; break;
+        case scalar_fold: value = PySyck_FoldStyle; break;
+        case scalar_literal: value = PySyck_LiteralStyle; break;
+        case scalar_plain: value = PySyck_PlainStyle; break;
+        default: value = Py_None;
+    }
+
+    Py_INCREF(value);
+    return value;
+}
+
+static int
+PySyckScalar_setstyle(PySyckScalarObject *self, PyObject *value, void *closure)
+{
+    char *str;
+
+    if (!value) {
+        PyErr_SetString(PyExc_TypeError, "cannot delete 'style'");
+        return -1;
+    }
+
+    if (value == Py_None) {
+        self->style = scalar_none;
+        return 0;
+    }
+
+    if (!PyString_Check(value)) {
+        PyErr_SetString(PyExc_TypeError, "'style' must be a string or None");
+        return -1;
+    }
+
+    str = PyString_AsString(value);
+    if (!str) return -1;
+
+    if (strcmp(str, "1quote") == 0)
+        self->style = scalar_1quote;
+    else if (strcmp(str, "2quote") == 0)
+        self->style = scalar_2quote;
+    else if (strcmp(str, "fold") == 0)
+        self->style = scalar_fold;
+    else if (strcmp(str, "literal") == 0)
+        self->style = scalar_literal;
+    else if (strcmp(str, "plain") == 0)
+        self->style = scalar_plain;
+    else {
+        PyErr_SetString(PyExc_TypeError, "unknown 'style'");
+        return -1;
+    }
+
+    return 0;
+}
+
+static PyObject *
+PySyckScalar_getindent(PySyckScalarObject *self, void *closure)
+{
+    return PyInt_FromLong(self->indent);
+}
+
+static int
+PySyckScalar_setindent(PySyckScalarObject *self, PyObject *value, void *closure)
+{
+    if (!value) {
+        PyErr_SetString(PyExc_TypeError, "cannot delete 'indent'");
+        return -1;
+    }
+
+    if (!PyInt_Check(value)) {
+        PyErr_SetString(PyExc_TypeError, "'indent' must be an integer");
+        return -1;
+    }
+
+    self->indent = PyInt_AS_LONG(value);
+
+    return 0;
+}
+
+static PyObject *
+PySyckScalar_getwidth(PySyckScalarObject *self, void *closure)
+{
+    return PyInt_FromLong(self->width);
+}
+
+static int
+PySyckScalar_setwidth(PySyckScalarObject *self, PyObject *value, void *closure)
+{
+    if (!value) {
+        PyErr_SetString(PyExc_TypeError, "cannot delete 'width'");
+        return -1;
+    }
+
+    if (!PyInt_Check(value)) {
+        PyErr_SetString(PyExc_TypeError, "'width' must be an integer");
+        return -1;
+    }
+
+    self->width = PyInt_AS_LONG(value);
+
+    return 0;
+}
+
+static PyObject *
+PySyckScalar_getchomp(PySyckScalarObject *self, void *closure)
+{
+    PyObject *value;
+
+    switch (self->chomp) {
+        case NL_CHOMP: value = PySyck_StripChomp; break;
+        case NL_KEEP: value = PySyck_KeepChomp; break;
+        default: value = Py_None;
+    }
+
+    Py_INCREF(value);
+    return value;
+}
+
+static int
+PySyckScalar_setchomp(PySyckScalarObject *self, PyObject *value, void *closure)
+{
+    char *str;
+
+    if (!value) {
+        PyErr_SetString(PyExc_TypeError, "cannot delete 'chomp'");
+        return -1;
+    }
+
+    if (value == Py_None) {
+        self->chomp = 0;
+        return 0;
+    }
+
+    if (!PyString_Check(value)) {
+        PyErr_SetString(PyExc_TypeError, "'chomp' must be '+', '-', or None");
+        return -1;
+    }
+
+    str = PyString_AsString(value);
+    if (!str) return -1;
+
+    if (strcmp(str, "-") == 0)
+        self->chomp = NL_CHOMP;
+    else if (strcmp(str, "+") == 0)
+        self->chomp = NL_KEEP;
+    else {
+        PyErr_SetString(PyExc_TypeError, "'chomp' must be '+', '-', or None");
+        return -1;
+    }
+
+    return 0;
+}
+
+static int
+PySyckScalar_init(PySyckScalarObject *self, PyObject *args, PyObject *kwds)
+{
+    PyObject *value = NULL;
+    PyObject *tag = NULL;
+    PyObject *anchor = NULL;
+    PyObject *style = NULL;
+    PyObject *indent = NULL;
+    PyObject *width = NULL;
+    PyObject *chomp = NULL;
+
+    static char *kwdlist[] = {"value", "tag", "anchor",
+        "style", "indent", "width", "chomp", NULL};
+
+    if (!PyArg_ParseTupleAndKeywords(args, kwds, "|OOOOOOO", kwdlist,
+                &value, &tag, &anchor, &style, &indent, &width, &chomp))
+        return -1;
+
+    if (value && PySyckScalar_setvalue(self, value, NULL) < 0)
+        return -1;
+
+    if (tag && PySyckScalar_settag(self, tag, NULL) < 0)
+        return -1;
+
+    if (anchor && PySyckScalar_setanchor(self, anchor, NULL) < 0)
+        return -1;
+
+    if (style && PySyckScalar_setstyle(self, style, NULL) < 0)
+        return -1;
+
+    if (indent && PySyckScalar_setindent(self, indent, NULL) < 0)
+        return -1;
+
+    if (width && PySyckScalar_setwidth(self, width, NULL) < 0)
+        return -1;
+
+    if (chomp && PySyckScalar_setchomp(self, chomp, NULL) < 0)
+        return -1;
+
+    return 0;
+}
+
+static PyGetSetDef PySyckScalar_getsetters[] = {
+    {"kind", (getter)PySyckScalar_getkind, NULL,
+        "the node kind", NULL},
+    {"value", (getter)PySyckScalar_getvalue, (setter)PySyckScalar_setvalue,
+        "the node value", NULL},
+    {"tag", (getter)PySyckScalar_gettag, (setter)PySyckScalar_settag,
+        "the node tag", NULL},
+    {"anchor", (getter)PySyckScalar_getanchor, (setter)PySyckScalar_setanchor,
+        "the node anchor", NULL},
+    {"style", (getter)PySyckScalar_getstyle, (setter)PySyckScalar_setstyle,
+        "the node style", NULL},
+    {"indent", (getter)PySyckScalar_getindent, (setter)PySyckScalar_setindent,
+        "the field indentation", NULL},
+    {"width", (getter)PySyckScalar_getwidth, (setter)PySyckScalar_setwidth,
+        "the field width", NULL},
+    {"chomp", (getter)PySyckScalar_getchomp, (setter)PySyckScalar_setchomp,
+        "the chomping method", NULL},
+    {NULL}  /* Sentinel */
+};
+
+static PyTypeObject PySyckScalar_Type = {
+    PyObject_HEAD_INIT(NULL)
+    0,                                          /* ob_size */
+    "_syck.Scalar",                             /* tp_name */
+    sizeof(PySyckScalarObject),                 /* tp_basicsize */
+    0,                                          /* tp_itemsize */
+    (destructor)PySyckScalar_dealloc,           /* tp_dealloc */
+    0,                                          /* tp_print */
+    0,                                          /* tp_getattr */
+    0,                                          /* tp_setattr */
+    0,                                          /* tp_compare */
+    0,                                          /* tp_repr */
+    0,                                          /* tp_as_number */
+    0,                                          /* tp_as_sequence */
+    0,                                          /* tp_as_mapping */
+    0,                                          /* tp_hash */
+    0,                                          /* tp_call */
+    0,                                          /* tp_str */
+    0,                                          /* tp_getattro */
+    0,                                          /* tp_setattro */
+    0,                                          /* tp_as_buffer */
+    Py_TPFLAGS_DEFAULT|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC,  /* tp_flags */
+    PySyckScalar_doc,                           /* tp_doc */
+    (traverseproc)PySyckScalar_traverse,        /* tp_traverse */
+    (inquiry)PySyckScalar_clear,                /* tp_clear */
+    0,                                          /* tp_richcompare */
+    0,                                          /* tp_weaklistoffset */
+    0,                                          /* tp_iter */
+    0,                                          /* tp_iternext */
+    0,                                          /* tp_methods */
+    0,                                          /* tp_members */
+    PySyckScalar_getsetters,                    /* tp_getset */
+    &PySyckNode_Type,                           /* tp_base */
+    0,                                          /* tp_dict */
+    0,                                          /* tp_descr_get */
+    0,                                          /* tp_descr_set */
+    0,                                          /* tp_dictoffset */
+    (initproc)PySyckScalar_init,                /* tp_init */
+    0,                                          /* tp_alloc */
+    PySyckScalar_new,                           /* tp_new */
+};
+
+
+/*
 typedef struct {
     PyObject_HEAD
@@ -49,12 +551,8 @@
 }
 
-static char PySyckNode_doc[] =
-    "Node object\n"
-    "\n"
-    "Attributes of the Node object:\n\n"
-    "kind -- 'scalar', 'seq', or 'map'.\n"
-    "type_id -- the tag of the node.\n"
-    "value -- the value of the node, a string, list or dict object.\n";
-
+
+*/
+#if 0
+    
 static PyTypeObject PySyckNode_Type = {
     PyObject_HEAD_INIT(NULL)
@@ -133,4 +631,7 @@
     "Node object cannot be created explicitly. Use _syck.Parser.parse() instead.";
 
+
+*/
+
 /* Parser type. */
 
@@ -523,2 +1024,63 @@
 }
 
+#endif
+
+/* The module _syck. */
+
+static PyMethodDef PySyck_methods[] = {
+    {NULL}  /* Sentinel */
+};
+
+PyDoc_STRVAR(PySyck_doc,
+    "The low-level wrapper for the Syck YAML parser and emitter\n\n"
+    "Types:\n\n"
+    "Node -- the base Node type\n");
+
+PyMODINIT_FUNC
+init_syck(void)
+{
+    PyObject *m;
+
+    if (PyType_Ready(&PySyckNode_Type) < 0)
+        return;
+    if (PyType_Ready(&PySyckScalar_Type) < 0)
+        return;
+    
+    PySyck_Error = PyErr_NewException("_syck.error", NULL, NULL);
+    if (!PySyck_Error) return;
+
+    PySyck_ScalarKind = PyString_FromString("scalar");
+    if (!PySyck_ScalarKind) return;
+    PySyck_SeqKind = PyString_FromString("seq");
+    if (!PySyck_SeqKind) return;
+    PySyck_MapKind = PyString_FromString("map");
+    if (!PySyck_MapKind) return;
+
+    PySyck_1QuoteStyle = PyString_FromString("1quote");
+    if (!PySyck_1QuoteStyle) return;
+    PySyck_2QuoteStyle = PyString_FromString("2quote");
+    if (!PySyck_2QuoteStyle) return;
+    PySyck_FoldStyle = PyString_FromString("fold");
+    if (!PySyck_FoldStyle) return;
+    PySyck_LiteralStyle = PyString_FromString("literal");
+    if (!PySyck_LiteralStyle) return;
+    PySyck_PlainStyle = PyString_FromString("plain");
+    if (!PySyck_PlainStyle) return;
+
+    PySyck_StripChomp = PyString_FromString("-");
+    if (!PySyck_StripChomp) return;
+    PySyck_KeepChomp = PyString_FromString("+");
+    if (!PySyck_KeepChomp) return;
+
+    m = Py_InitModule3("_syck", PySyck_methods, PySyck_doc);
+
+    Py_INCREF(&PySyckNode_Type);
+    if (PyModule_AddObject(m, "Node", (PyObject *)&PySyckNode_Type) < 0)
+        return;
+
+    Py_INCREF(&PySyckScalar_Type);
+    if (PyModule_AddObject(m, "Scalar", (PyObject *)&PySyckScalar_Type) < 0)
+        return;
+}
+
+
Index: /trunk/tests/test_syck.py
===================================================================
--- /trunk/tests/test_syck.py	(revision 9)
+++ /trunk/tests/test_syck.py	(revision 12)
@@ -2,6 +2,7 @@
 import unittest
 
-from test_low_parser import *
-from test_high_parser import *
+from test_low_level_node import *
+#from test_low_parser import *
+#from test_high_parser import *
 
 def main(module='__main__'):
Index: /trunk/sandbox/yaml-current.html
===================================================================
--- /trunk/sandbox/yaml-current.html	(revision 12)
+++ /trunk/sandbox/yaml-current.html	(revision 12)
@@ -0,0 +1,13783 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+    <title>
+  YAML Ain't Markup Language (YAML)
+      Version 1.1
+    </title>
+    <link rel="stylesheet" href="single_html.css" type="text/css" />
+    <meta name="generator" content="DocBook XSL Stylesheets V1.65.1" />
+  </head>
+  <body>
+    <div class="book" lang="en" xml:lang="en">
+      <div class="titlepage">
+        <div>
+          <div>
+            <h1 class="title"><a id="id2396259"></a>
+  YAML Ain't Markup Language (<span class="trademark">YAML</span>&#8482;)
+      Version 1.1
+    </h1>
+          </div>
+          <div>
+            <h2 class="subtitle">
+      Working Draft 2004-12-28
+    </h2>
+          </div>
+          <div>
+            <div class="authorgroup">
+              <div class="author">
+                <h3 class="author"><span class="firstname">Oren</span> <span class="surname">Ben-Kiki</span></h3>
+                <tt class="email">&lt;<a href="mailto:oren@ben-kiki.org">oren@ben-kiki.org</a>&gt;</tt>
+              </div>
+              <div class="author">
+                <h3 class="author"><span class="firstname">Clark</span> <span class="surname">Evans</span></h3>
+                <tt class="email">&lt;<a href="mailto:cce@clarkevans.com">cce@clarkevans.com</a>&gt;</tt>
+              </div>
+              <div class="author">
+                <h3 class="author"><span class="firstname">Brian</span> <span class="surname">Ingerson</span></h3>
+                <tt class="email">&lt;<a href="mailto:ingy@ttul.org">ingy@ttul.org</a>&gt;</tt>
+              </div>
+            </div>
+          </div>
+          <div>
+            <p class="releaseinfo">
+      <span class="emphasis"><em>This version:</em></span>
+      <a href="http://yaml.org/spec/2004-12-28.html" target="_top">html</a>,
+      <a href="http://yaml.org/spec/2004-12-28.ps" target="_top">ps</a>,
+      <a href="http://yaml.org/spec/2004-12-28.pdf" target="_top">pdf</a>.<br />
+      <span class="emphasis"><em>Latest version:</em></span>
+      <a href="http://yaml.org/spec/current.html" target="_top">html</a>,
+      <a href="http://yaml.org/spec/current.ps" target="_top">ps</a>,
+      <a href="http://yaml.org/spec/current.pdf" target="_top">pdf</a>.
+    </p>
+          </div>
+          <div>
+            <p class="copyright">Copyright © 2001-2004 Oren Ben-Kiki, Clark Evans, Brian Ingerson</p>
+          </div>
+          <div>
+            <div class="legalnotice">
+      
+      This document may be freely copied provided it is not modified.
+    </div>
+          </div>
+          <div>
+            <div class="abstract">
+              <p class="title">
+                <b>Status of this Document</b>
+              </p>
+              <p>
+       This specification is a draft reflecting consensus reached by members of
+       the <a href="http://lists.sourceforge.net/lists/listinfo/yaml-core" target="_top">yaml-core
+       mailing list</a>. Any questions regarding this draft should be
+       raised on this list. We expect all further changes will be strictly
+       limited to wording corrections and fixing production bugs.
+
+      </p>
+              <p>
+        We wish to thank implementers who have tirelessly tracked earlier
+        versions of this specification, and our fabulous user community whose
+        feedback has both validated and clarified our direction.
+      </p>
+            </div>
+          </div>
+          <div>
+            <div class="abstract">
+              <p class="title">
+                <b>Abstract</b>
+              </p>
+              <p>
+        <span class="trademark">YAML</span>&#8482; (rhymes with &#8220;<span class="quote">camel</span>&#8221;) is a
+        human-friendly, cross language, Unicode based data serialization
+        language designed around the common native data structures of agile
+        programming languages. It is broadly useful for programming needs
+        ranging from configuration files to Internet messaging to object
+        persistence to data auditing. Together with the <a href="http://www.unicode.org/" target="_top">Unicode standard for characters</a>,
+        this specification provides all the information necessary to understand
+        YAML Version 1.1 and to creating programs that process YAML
+        information.
+      </p>
+            </div>
+          </div>
+        </div>
+        <div></div>
+        <hr />
+      </div>
+      <div class="toc">
+        <p>
+          <b>Table of Contents</b>
+        </p>
+        <dl>
+          <dt>
+            <span class="chapter">
+              <a href="#id2439001">1. Introduction</a>
+            </span>
+          </dt>
+          <dd>
+            <dl>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2438200">1.1. Goals</a>
+                </span>
+              </dt>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2438272">1.2. Prior Art</a>
+                </span>
+              </dt>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2502047">1.3. Relation to XML</a>
+                </span>
+              </dt>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2502086">1.4. Terminology</a>
+                </span>
+              </dt>
+            </dl>
+          </dd>
+          <dt>
+            <span class="chapter">
+              <a href="#id2502311">2. Preview</a>
+            </span>
+          </dt>
+          <dd>
+            <dl>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2502325">2.1. Collections</a>
+                </span>
+              </dt>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2502724">2.2. Structures</a>
+                </span>
+              </dt>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2503232">2.3. Scalars</a>
+                </span>
+              </dt>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2503753">2.4. Tags</a>
+                </span>
+              </dt>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2504215">2.5. Full Length Example</a>
+                </span>
+              </dt>
+            </dl>
+          </dd>
+          <dt>
+            <span class="chapter">
+              <a href="#id2504309">3. Processing YAML Information</a>
+            </span>
+          </dt>
+          <dd>
+            <dl>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2504671">3.1. Processes</a>
+                </span>
+              </dt>
+              <dd>
+                <dl>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2504710">3.1.1. Represent</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2505138">3.1.2. Serialize</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2505379">3.1.3. Present</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2505613">3.1.4. Parse</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2505723">3.1.5. Compose</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2505832">3.1.6. Construct</a>
+                    </span>
+                  </dt>
+                </dl>
+              </dd>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2506012">3.2. Information Models</a>
+                </span>
+              </dt>
+              <dd>
+                <dl>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2506281">3.2.1. Representation Graph</a>
+                    </span>
+                  </dt>
+                  <dd>
+                    <dl>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2506659">3.2.1.1. Nodes</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2506940">3.2.1.2. Tags</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2507367">3.2.1.3. Nodes Comparison</a>
+                        </span>
+                      </dt>
+                    </dl>
+                  </dd>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2508190">3.2.2. Serialization Tree</a>
+                    </span>
+                  </dt>
+                  <dd>
+                    <dl>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2508372">3.2.2.1. Keys Order</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2508656">3.2.2.2. Anchors and Aliases</a>
+                        </span>
+                      </dt>
+                    </dl>
+                  </dd>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2508949">3.2.3. Presentation Stream</a>
+                    </span>
+                  </dt>
+                  <dd>
+                    <dl>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2509255">3.2.3.1. Node Styles</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2509799">3.2.3.2. Scalar Formats</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2509980">3.2.3.3. Comments</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2510119">3.2.3.4. Directives</a>
+                        </span>
+                      </dt>
+                    </dl>
+                  </dd>
+                </dl>
+              </dd>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2510274">3.3. Loading Failure Points</a>
+                </span>
+              </dt>
+              <dd>
+                <dl>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2510726">3.3.1. Well-Formed and Identified</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2510888">3.3.2. Resolved</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2512215">3.3.3. Recognized and Valid</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2512548">3.3.4. Available</a>
+                    </span>
+                  </dt>
+                </dl>
+              </dd>
+            </dl>
+          </dd>
+          <dt>
+            <span class="chapter">
+              <a href="#id2512702">4. Syntax</a>
+            </span>
+          </dt>
+          <dd>
+            <dl>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2513154">4.1. Characters</a>
+                </span>
+              </dt>
+              <dd>
+                <dl>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2513160">4.1.1. Character Set</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2513364">4.1.2. Character Encoding</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2513753">4.1.3. Indicator Characters</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2515898">4.1.4. Line Break Characters</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2516631">4.1.5. Miscellaneous Characters</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2517668">4.1.6. Escape Sequences</a>
+                    </span>
+                  </dt>
+                </dl>
+              </dd>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2519180">4.2. Syntax Primitives</a>
+                </span>
+              </dt>
+              <dd>
+                <dl>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2519186">4.2.1. Production Parameters</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2519916">4.2.2. Indentation Spaces</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2520528">4.2.3. Comments</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2521201">4.2.4. Separation Spaces</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2521681">4.2.5. Ignored Line Prefix</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2522356">4.2.6. Line Folding</a>
+                    </span>
+                  </dt>
+                </dl>
+              </dd>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2523342">4.3. YAML Character Stream</a>
+                </span>
+              </dt>
+              <dd>
+                <dl>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2523453">4.3.1. Directives</a>
+                    </span>
+                  </dt>
+                  <dd>
+                    <dl>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2523874">4.3.1.1. YAML Directive</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2524297">4.3.1.2. TAG Directive</a>
+                        </span>
+                      </dt>
+                      <dd>
+                        <dl>
+                          <dt>
+                            <span class="sect4">
+                              <a href="#id2524672">4.3.1.2.1. Tag Prefixes</a>
+                            </span>
+                          </dt>
+                          <dt>
+                            <span class="sect4">
+                              <a href="#id2525159">4.3.1.2.2. Tag Handles</a>
+                            </span>
+                          </dt>
+                        </dl>
+                      </dd>
+                    </dl>
+                  </dd>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2525905">4.3.2. Document Boundary Markers</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2526349">4.3.3. Documents</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2527114">4.3.4. Complete Stream</a>
+                    </span>
+                  </dt>
+                </dl>
+              </dd>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2527964">4.4. Nodes</a>
+                </span>
+              </dt>
+              <dd>
+                <dl>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2528258">4.4.1. Node Anchors</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2528616">4.4.2. Node Tags</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2530054">4.4.3. Node Content</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2530982">4.4.4. Alias Nodes</a>
+                    </span>
+                  </dt>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2531346">4.4.5. Complete Nodes</a>
+                    </span>
+                  </dt>
+                  <dd>
+                    <dl>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2531352">4.4.5.1. Flow Nodes</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2531873">4.4.5.2. Block Nodes</a>
+                        </span>
+                      </dt>
+                    </dl>
+                  </dd>
+                </dl>
+              </dd>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2532386">4.5. Scalar Styles</a>
+                </span>
+              </dt>
+              <dd>
+                <dl>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2532632">4.5.1. Flow Scalar Styles</a>
+                    </span>
+                  </dt>
+                  <dd>
+                    <dl>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2532720">4.5.1.1. Double Quoted</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2534365">4.5.1.2. Single Quoted</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2535812">4.5.1.3. Plain</a>
+                        </span>
+                      </dt>
+                    </dl>
+                  </dd>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2537677">4.5.2. Block Scalar Header</a>
+                    </span>
+                  </dt>
+                  <dd>
+                    <dl>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2537921">4.5.2.1. Block Style Indicator</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2538125">4.5.2.2. Block Indentation Indicator</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2538656">4.5.2.3. Block Chomping Indicator</a>
+                        </span>
+                      </dt>
+                    </dl>
+                  </dd>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2539942">4.5.3. Block Scalar Styles</a>
+                    </span>
+                  </dt>
+                  <dd>
+                    <dl>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2540046">4.5.3.1. Literal</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2540863">4.5.3.2. Folded</a>
+                        </span>
+                      </dt>
+                    </dl>
+                  </dd>
+                </dl>
+              </dd>
+              <dt>
+                <span class="sect1">
+                  <a href="#id2541922">4.6. Collection Styles</a>
+                </span>
+              </dt>
+              <dd>
+                <dl>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2542214">4.6.1. Sequence Styles</a>
+                    </span>
+                  </dt>
+                  <dd>
+                    <dl>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2542413">4.6.1.1. Flow Sequences</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2543032">4.6.1.2. Block Sequences</a>
+                        </span>
+                      </dt>
+                    </dl>
+                  </dd>
+                  <dt>
+                    <span class="sect2">
+                      <a href="#id2543957">4.6.2. Mapping Styles</a>
+                    </span>
+                  </dt>
+                  <dd>
+                    <dl>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2544175">4.6.2.1. Flow Mappings</a>
+                        </span>
+                      </dt>
+                      <dt>
+                        <span class="sect3">
+                          <a href="#id2545757">4.6.2.2. Block Mappings</a>
+                        </span>
+                      </dt>
+                    </dl>
+                  </dd>
+                </dl>
+              </dd>
+            </dl>
+          </dd>
+          <dt>
+            <span class="appendix">
+              <a href="#id2546954">Terms Index</a>
+            </span>
+          </dt>
+        </dl>
+      </div>
+      <div class="chapter" lang="en" xml:lang="en">
+        <div class="titlepage">
+          <div>
+            <div>
+              <h2 class="title"><a id="id2439001"></a>Chapter 1. Introduction</h2>
+            </div>
+          </div>
+          <div></div>
+        </div>
+        <p>
+      &#8220;<span class="quote">YAML Ain't Markup Language</span>&#8221; (abbreviated YAML) is a data
+      serialization language designed to be human-friendly and work well with
+      modern programming languages for common everyday tasks. This
+      specification is both an introduction to the YAML language and the
+      concepts supporting it and also a complete reference of the information
+      needed to develop <a id="id2439018" class="indexterm"></a><a href="#application/">applications</a>
+      for processing YAML.
+    </p>
+        <p>
+      Open, interoperable and readily understandable tools have advanced
+      computing immensely. YAML was designed from the start to be useful and
+      friendly to people working with data. It uses Unicode <a id="id2439140" class="indexterm"></a><a href="#printable character/">printable</a> characters, some of
+      which provide structural information and the rest containing the data
+      itself. YAML achieves a unique cleanness by minimizing the amount of
+      structural characters, and allowing the data to show itself in a natural
+      and meaningful way. For example, <a id="id2439159" class="indexterm"></a><a href="#indentation space/">indentation</a> may be used for structure, colons separate
+      <a id="id2439174" class="indexterm"></a><a href="#key/information model">mapping
+      key:</a> <a id="id2439191" class="indexterm"></a><a href="#value/information model">value</a> pairs, and dashes are used to
+      &#8220;<span class="quote">bullet</span>&#8221; lists.
+    </p>
+        <p>
+      There are myriad flavors of data structures, but they can all be
+      adequately <a id="id2439216" class="indexterm"></a><a href="#represent/">represented</a> with three
+      basic primitives: <a id="id2439229" class="indexterm"></a><a href="#mapping/information model">mappings</a> (hashes/dictionaries), <a id="id2439246" class="indexterm"></a><a href="#sequence/information model">sequences</a>
+      (arrays/lists) and <a id="id2438146" class="indexterm"></a><a href="#scalar/information model">scalars</a> (strings/numbers). YAML leverages these
+      primitives and adds a simple typing system and <a id="id2438165" class="indexterm"></a><a href="#alias/information model">aliasing</a> mechanism to form a
+      complete language for serializing any data structure. While most
+      programming languages can use YAML for data serialization, YAML excels in
+      those languages that are fundamentally built around the three basic
+      primitives. These include the new wave of agile languages such as Perl,
+      Python, PHP, Ruby and Javascript.
+    </p>
+        <p>
+      There are hundreds of different languages for programming, but only a
+      handful of languages for storing and transferring data. Even though its
+      potential is virtually boundless, YAML was specifically created to work
+      well for common use cases such as: configuration files, log files,
+      interprocess messaging, cross-language data sharing, object persistence
+      and debugging of complex data structures. When data is easy to view and
+      understand, programming becomes a simpler task.
+    </p>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2438200"></a>1.1. Goals</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+        The design goals for YAML are:
+      </p>
+          <div class="orderedlist">
+            <ol type="1">
+              <li>
+                <p>
+            YAML is easily readable by humans.
+          </p>
+              </li>
+              <li>
+                <p>
+            YAML matches the native data structures of agile languages.
+          </p>
+              </li>
+              <li>
+                <p>
+            YAML data is portable between programming languages.
+          </p>
+              </li>
+              <li>
+                <p>
+            YAML has a consistent model to support generic tools.
+          </p>
+              </li>
+              <li>
+                <p>
+            YAML supports one-pass processing.
+          </p>
+              </li>
+              <li>
+                <p>
+            YAML is expressive and extensible.
+          </p>
+              </li>
+              <li>
+                <p>
+            YAML is easy to implement and use.
+          </p>
+              </li>
+            </ol>
+          </div>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2438272"></a>1.2. Prior Art</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+        YAML's initial direction was set by the data serialization and markup
+        language discussions among <a href="http://www.docuverse.com/smldev/" target="_top">SML-DEV members</a>. Later
+        on it directly incorporated experience from Brian Ingerson's Perl
+        module <a href="http://search.cpan.org/doc/INGY/Data-Denter-0.13/Denter.pod" target="_top">Data::Denter</a>. Since then YAML has matured through ideas and
+        support from its user community.
+      </p>
+          <p>
+        YAML integrates and builds upon concepts described by <a href="http://cm.bell-labs.com/cm/cs/cbook/index.html" target="_top">C</a>, <a href="http://java.sun.com/" target="_top">Java</a>, <a href="http://www.perl.org/" target="_top">Perl</a>, <a href="http://www.python.org/" target="_top">Python</a>, <a href="http://www.ruby-lang.org/" target="_top">Ruby</a>, <a href="http://www.ietf.org/rfc/rfc0822.txt" target="_top">RFC0822</a> (MAIL),
+        <a href="http://www.ics.uci.edu/pub/ietf/html/rfc1866.txt" target="_top">RFC1866</a>
+        (HTML), <a href="http://www.ietf.org/rfc/rfc2045.txt" target="_top">RFC2045</a> (MIME),
+        <a href="http://www.ietf.org/rfc/rfc2396.txt" target="_top">RFC2396</a> (URI),
+        <a href="http://www.w3.org/TR/REC-xml.html" target="_top">XML</a>, <a href="http://www.saxproject.org/" target="_top">SAX</a> and <a href="http://www.w3.org/TR/SOAP" target="_top">SOAP</a>.
+      </p>
+          <p>
+        The syntax of YAML was motivated by Internet Mail (RFC0822) and remains
+        partially compatible with that standard. Further, borrowing from MIME
+        (RFC2045), YAML's top-level production is a <a id="id2438384" class="indexterm"></a><a href="#stream/information model">stream</a> of independent <a id="id2438401" class="indexterm"></a><a href="#document/information model">documents</a>;
+        ideal for message-based distributed processing systems.
+      </p>
+          <p>
+        YAML's <a id="id2438423" class="indexterm"></a><a href="#indentation space/">indentation</a> based
+        scoping is similar to Python's (without the ambiguities caused by
+        <a id="id2438438" class="indexterm"></a><a href="#tab/">tabs</a>). <a id="id2438450" class="indexterm"></a><a href="#block style/information model">Indented blocks</a> facilitate easy
+        inspection of the data's structure. YAML's <a id="id2438470" class="indexterm"></a><a href="#literal style/information model">literal style</a> leverages
+        this by enabling formatted text to be cleanly mixed within an <a id="id2438488" class="indexterm"></a><a href="#indentation space/">indented</a> structure without
+        troublesome <a id="id2438501" class="indexterm"></a><a href="#escaping in double quoted style/">escaping</a>. YAML also allows the use of traditional
+        <a id="id2438517" class="indexterm"></a><a href="#indicator/">indicator</a>-based scoping similar
+        to Perl's. Such <a id="id2438531" class="indexterm"></a><a href="#flow style/information model">flow content</a> can be freely nested inside <a id="id2438548" class="indexterm"></a><a href="#block style/information model">indented
+        blocks</a>.
+      </p>
+          <p>
+        YAML's <a id="id2438568" class="indexterm"></a><a href="#double quoted style/information model">double quoted style</a> uses familiar C-style <a id="id2438588" class="indexterm"></a><a href="#escaping in double quoted style/">escape sequences</a>.
+        This enables ASCII encoding of non-<a id="id2438603" class="indexterm"></a><a href="#printable character/">printable</a> or 8-bit (ISO 8859-1) characters such as
+        <a href="#ns-esc-8-bit">&#8220;<span class="quote"><b class="userinput"><tt>\x3B</tt></b></span>&#8221;</a>. Non-<a id="id2438630" class="indexterm"></a><a href="#printable character/">printable</a> 16-bit Unicode and
+        32-bit (ISO/IEC 10646) characters are supported with <a id="id2438644" class="indexterm"></a><a href="#escaping in double quoted style/">escape sequences</a>
+        such as <a href="#ns-esc-16-bit">&#8220;<span class="quote"><b class="userinput"><tt>\u003B</tt></b></span>&#8221;</a>
+        and <a href="#ns-esc-32-bit">&#8220;<span class="quote"><b class="userinput"><tt>\U0000003B</tt></b></span>&#8221;</a>.
+      </p>
+          <p>
+        Motivated by HTML's end-of-line normalization, YAML's <a id="id2501721" class="indexterm"></a><a href="#line folding/">line folding</a> employs an intuitive
+        method of handling <a id="id2501735" class="indexterm"></a><a href="#line break character/">line
+        breaks</a>. A single <a id="id2501750" class="indexterm"></a><a href="#line break character/">line
+        break</a> is <a id="id2501764" class="indexterm"></a><a href="#line folding/">folded</a>
+        into a single space, while <a id="id2501777" class="indexterm"></a><a href="#empty line/">empty
+        lines</a> are interpreted as <a id="id2501790" class="indexterm"></a><a href="#line break character/">line break</a> characters. This technique allows for
+        paragraphs to be word-wrapped without affecting the <a id="id2501805" class="indexterm"></a><a href="#canonical form/">canonical form</a> of the <a id="id2501819" class="indexterm"></a><a href="#content/information model">content</a>.
+      </p>
+          <p>
+        YAML's core type system is based on the requirements of agile languages
+        such as Perl, Python, and Ruby. YAML directly supports both <a id="id2501842" class="indexterm"></a><a href="#collection/information model">collection</a>
+        (<a id="id2501859" class="indexterm"></a><a href="#mapping/information model">mapping</a>, <a id="id2501875" class="indexterm"></a><a href="#sequence/information model">sequence</a>) and <a id="id2501891" class="indexterm"></a><a href="#scalar/information model">scalar
+        content</a>. Support for common types enables programmers to use
+        their language's native data structures for YAML manipulation, instead
+        of requiring a special document object model (DOM).
+      </p>
+          <p>
+        Like XML's SOAP, YAML supports <a id="id2501914" class="indexterm"></a><a href="#serialize/">serializing</a> native graph data structures
+        through an <a id="id2501928" class="indexterm"></a><a href="#alias/information model">aliasing</a> mechanism. Also like SOAP, YAML provides for
+        <a id="id2501946" class="indexterm"></a><a href="#application/">application</a>-defined <a id="id2501959" class="indexterm"></a><a href="#tag/information model">types</a>. This
+        allows YAML to <a id="id2501975" class="indexterm"></a><a href="#represent/">represent</a> rich
+        data structures required for modern distributed computing. YAML
+        provides globally unique <a id="id2501990" class="indexterm"></a><a href="#global tag/">type
+        names</a> using a namespace mechanism inspired by Java's DNS
+        based package naming convention and XML's URI based namespaces.
+      </p>
+          <p>
+        YAML was designed to support incremental interfaces that includes both
+        input pull-style and output push-style one-pass (SAX-like) interfaces.
+        Together these enable YAML to support the processing of large <a id="id2502013" class="indexterm"></a><a href="#document/information model">documents</a>,
+        such as a transaction log, or continuous <a id="id2502029" class="indexterm"></a><a href="#stream/information model">streams</a>, such as a feed from a
+        production machine.
+      </p>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2502047"></a>1.3. Relation to XML</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+        Newcomers to YAML often search for its correlation to the eXtensible
+        Markup Language (XML). While the two languages may actually compete in
+        several application domains, there is no direct correlation between
+        them.
+      </p>
+          <p>
+        YAML is primarily a data serialization language. XML was designed to be
+        backwards compatible with the Standard Generalized Markup Language
+        (SGML) and thus had many design constraints placed on it that YAML does
+        not share. Inheriting SGML's legacy, XML is designed to support
+        structured documentation, where YAML is more closely targeted at data
+        structures and messaging. Where XML is a pioneer in many domains, YAML
+        is the result of lessons learned from XML and other technologies.
+      </p>
+          <p>
+        It should be mentioned that there are ongoing efforts to define
+        standard XML/YAML mappings. This generally requires that a subset of
+        each language be used. For more information on using both XML and YAML,
+        please visit <a href="http://yaml.org/xml/index.html" target="_top">http://yaml.org/xml/index.html</a>.
+      </p>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2502086"></a>1.4. Terminology</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+          This specification uses key words based on <a href="http://www.ietf.org/rfc/rfc2119.txt" target="_top">RFC2119</a> to indicate
+          requirement level. In particular, the following words are used to
+          describe the actions of a YAML <a id="id2502103" class="indexterm"></a><a href="#processor/">processor</a>:
+        </p>
+          <div class="variablelist">
+            <dl>
+              <dt>
+                <span class="term">May</span>
+              </dt>
+              <dd>
+                <p>
+                The word <a id="id2502131" class="indexterm"></a><a id="may/"></a
+            ><a href="#index-entry-may"
+            ><i class="firstterm"
+            >may</i></a
+          >, or the adjective
+                <a id="id2502145" class="indexterm"></a><a id="optional/"></a
+            ><a href="#index-entry-optional"
+            ><i class="firstterm"
+            >optional</i></a
+          >, mean that
+                conforming YAML <a id="id2502160" class="indexterm"></a><a href="#processor/">processors</a> are permitted, but
+                <a id="id2502173" class="indexterm"></a><a id="need not/"></a
+            ><a href="#index-entry-need not"
+            ><i class="firstterm"
+            >need not</i></a
+          > behave as
+                described.
+              </p>
+              </dd>
+              <dt>
+                <span class="term">Should</span>
+              </dt>
+              <dd>
+                <p>
+                The word <a id="id2502202" class="indexterm"></a><a id="should/"></a
+            ><a href="#index-entry-should"
+            ><i class="firstterm"
+            >should</i></a
+          >, or the
+                adjective <a id="id2502216" class="indexterm"></a><a id="recommended/"></a
+            ><a href="#index-entry-recommended"
+            ><i class="firstterm"
+            >recommended</i></a
+          >,
+                mean that there could be reasons for a YAML <a id="id2502231" class="indexterm"></a><a href="#processor/">processor</a> to deviate from the
+                behavior described, but that such deviation could hurt
+                interoperability and should therefore be advertised with
+                appropriate notice.
+              </p>
+              </dd>
+              <dt>
+                <span class="term">Must</span>
+              </dt>
+              <dd>
+                <p>
+                The word <a id="id2502261" class="indexterm"></a><a id="must/"></a
+            ><a href="#index-entry-must"
+            ><i class="firstterm"
+            >must</i></a
+          >, or the term
+                <a id="id2502275" class="indexterm"></a><a id="required/"></a
+            ><a href="#index-entry-required"
+            ><i class="firstterm"
+            >required</i></a
+          > or <a id="id2502289" class="indexterm"></a><a id="shall/"></a
+            ><a href="#index-entry-shall"
+            ><i class="firstterm"
+            >shall</i></a
+          >, mean that the behavior
+                described is an absolute requirement of the specification.
+              </p>
+              </dd>
+            </dl>
+          </div>
+        </div>
+      </div>
+      <div class="chapter" lang="en" xml:lang="en">
+        <div class="titlepage">
+          <div>
+            <div>
+              <h2 class="title"><a id="id2502311"></a>Chapter 2. Preview</h2>
+            </div>
+          </div>
+          <div></div>
+        </div>
+        <p>
+      This section provides a quick glimpse into the expressive power of YAML.
+      It is not expected that the first-time reader grok all of the examples.
+      Rather, these selections are used as motivation for the remainder of the
+      specification.
+    </p>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2502325"></a>2.1. Collections</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+          YAML's <a id="id2502333" class="indexterm"></a><a href="#block collection style/information model">block collections</a> use
+          <a id="id2502352" class="indexterm"></a><a href="#indentation space/">indentation</a> for scope
+          and begin each entry on its own line. <a id="id2502366" class="indexterm"></a><a href="#block sequence style/information model">Block
+          sequences</a> indicate each entry with a dash and space (
+          <a id="id2502386" class="indexterm"></a><a href="#- block sequence entry/">&#8220;<span class="quote"><b class="userinput"><tt>-</tt></b></span>&#8221;</a>). <a id="id2502405" class="indexterm"></a><a href="#mapping/information model">Mappings</a> use a colon and
+          space (<a id="id2502422" class="indexterm"></a><a href="#: mapping value/">&#8220;<span class="quote"><b class="userinput"><tt>: </tt></b></span>&#8221;</a>) to mark each <a id="id2502440" class="indexterm"></a><a href="#key/information model">mapping
+          key</a>: <a id="id2502456" class="indexterm"></a><a href="#value/information model">value</a> pair.
+        </p>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2502482"></a><p class="title"><b>Example 2.1. 
+                Sequence of Scalars<br />
+                (ball players)
+              </b></p><pre class="programlisting"><span class="database">- Mark McGwire<br />- Sammy Sosa
+- Ken Griffey
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2502507"></a><p class="title"><b>Example 2.2. 
+                Mapping Scalars to Scalars<br />
+                (player statistics)
+              </b></p><pre class="programlisting"><span class="database">hr:  65<br />avg: 0.278
+rbi: 147
+</span></pre></div>
+          </td>
+            </tr>
+            <tr>
+              <td>
+            <div class="example"><a id="id2502532"></a><p class="title"><b>Example 2.3. 
+                Mapping Scalars to Sequences<br />
+                (ball clubs in each league)
+              </b></p><pre class="programlisting"><span class="database">american:<br />  - Boston Red Sox
+  - Detroit Tigers
+  - New York Yankees
+national:
+  - New York Mets
+  - Chicago Cubs
+  - Atlanta Braves
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2502559"></a><p class="title"><b>Example 2.4. 
+                Sequence of Mappings<br />
+                (players' statistics)
+              </b></p><pre class="programlisting"><span class="database">-<br />  name: Mark McGwire
+  hr:   65
+  avg:  0.278
+-
+  name: Sammy Sosa
+  hr:   63
+  avg:  0.288
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+          <p>
+          YAML also has <a id="id2502588" class="indexterm"></a><a href="#flow style/information model">flow styles</a>, using explicit <a id="id2502604" class="indexterm"></a><a href="#indicator/">indicators</a> rather than <a id="id2502617" class="indexterm"></a><a href="#indentation space/">indentation</a> to denote scope.
+          The <a id="id2502630" class="indexterm"></a><a href="#flow sequence style/information model">flow sequence</a> is written as a comma separated list
+          within square brackets. In a similar manner, the <a id="id2502651" class="indexterm"></a><a href="#flow mapping style/information model">flow
+          mapping</a> uses curly braces.
+        </p>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2502679"></a><p class="title"><b>Example 2.5. Sequence of Sequences</b></p><pre class="programlisting"><span class="database">- [name        , hr, avg  ]<br />- [Mark McGwire, 65, 0.278]
+- [Sammy Sosa  , 63, 0.288]
+
+
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2502702"></a><p class="title"><b>Example 2.6. Mapping of Mappings</b></p><pre class="programlisting"><span class="database">Mark McGwire: {hr: 65, avg: 0.278}<br />Sammy Sosa: {
+    hr: 63,
+    avg: 0.288
+  }
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2502724"></a>2.2. Structures</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+          YAML uses three dashes (<a id="id2502733" class="indexterm"></a><a href="#document boundary marker/">&#8220;<span class="quote"><b class="userinput"><tt>---</tt></b></span>&#8221;</a>) to separate <a id="id2502753" class="indexterm"></a><a href="#document/information model">documents</a>
+          within a <a id="id2502768" class="indexterm"></a><a href="#stream/information model">stream</a>. Three dots ( <a id="id2502786" class="indexterm"></a><a href="#document boundary marker/">&#8220;<span class="quote"><b class="userinput"><tt>...</tt></b></span>&#8221;</a>) indicate the end of
+          a document without starting a new one, for use in communication
+          channels. <a id="id2502805" class="indexterm"></a><a href="#comment/information model">Comment</a> lines begin with the Octothorpe (usually
+          called the &#8220;<span class="quote">hash</span>&#8221; or &#8220;<span class="quote">pound</span>&#8221; sign -
+          <a id="id2502830" class="indexterm"></a><a href="## comment/">&#8220;<span class="quote"><b class="userinput"><tt>#</tt></b></span>&#8221;</a>).
+        </p>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2502858"></a><p class="title"><b>Example 2.7. 
+                Two Documents in a Stream<br />
+                (each with a leading comment)
+              </b></p><pre class="programlisting"><span class="database"># Ranking of 1998 home runs<br />---
+- Mark McGwire
+- Sammy Sosa
+- Ken Griffey
+
+# Team ranking
+---
+- Chicago Cubs
+- St Louis Cardinals
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2502884"></a><p class="title"><b>Example 2.8. 
+                Play by Play Feed<br />
+                from a Game
+              </b></p><pre class="programlisting"><span class="database">---<br />time: 20:03:20
+player: Sammy Sosa
+action: strike (miss)
+...
+---
+time: 20:03:47
+player: Sammy Sosa
+action: grand slam
+...
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+          <p>
+          Repeated <a id="id2502912" class="indexterm"></a><a href="#node/information model">nodes</a> are first <a id="id2502929" class="indexterm"></a><a href="#identified/">identified</a> by an <a id="id2502943" class="indexterm"></a><a href="#anchor/information model">anchor</a>
+          (marked with the ampersand - <a id="id2502961" class="indexterm"></a><a href="#&amp; anchor/">&#8220;<span class="quote"><b class="userinput"><tt>&amp;</tt></b></span>&#8221;</a>), and are then <a id="id2502979" class="indexterm"></a><a href="#alias/information model">aliased</a>
+          (referenced with an asterisk - <a id="id2502996" class="indexterm"></a><a href="#* alias/">&#8220;<span class="quote"><b class="userinput"><tt>*</tt></b></span>&#8221;</a>) thereafter.
+        </p>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2503024"></a><p class="title"><b>Example 2.9. 
+                Single Document with<br />
+                Two Comments
+              </b></p><pre class="programlisting"><span class="database">---<br />hr: # 1998 hr ranking
+  - Mark McGwire
+  - Sammy Sosa
+rbi:
+  # 1998 rbi ranking
+  - Sammy Sosa
+  - Ken Griffey
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2503050"></a><p class="title"><b>Example 2.10. 
+                Node for &#8220;<span class="quote"><b class="userinput"><tt>Sammy Sosa</tt></b></span>&#8221;<br />
+                appears twice in this document
+              </b></p><pre class="programlisting"><span class="database">---<br />hr:
+  - Mark McGwire
+  # Following node labeled SS
+  - &amp;SS Sammy Sosa
+rbi:
+  - *SS # Subsequent occurrence
+  - Ken Griffey
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+          <p>
+          A question mark and space <a id="id2503089" class="indexterm"></a><a href="#? mapping key/">(&#8220;<span class="quote"><b class="userinput"><tt>? </tt></b></span>&#8221;</a>) indicate a complex <a id="id2503109" class="indexterm"></a><a href="#key/information model">mapping key</a>.
+          Within a <a id="id2503124" class="indexterm"></a><a href="#block collection style/information model">block collection</a>, <a id="id2503142" class="indexterm"></a><a href="#key/information model">key:</a> <a id="id2503158" class="indexterm"></a><a href="#value/information model">value</a> pairs can start
+          immediately following the dash, colon or question mark.
+        </p>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2503185"></a><p class="title"><b>Example 2.11. Mapping between Sequences</b></p><pre class="programlisting"><span class="database">? - Detroit Tigers<br />  - Chicago cubs
+:
+  - 2001-07-23
+
+? [ New York Yankees,
+    Atlanta Braves ]
+: [ 2001-07-02, 2001-08-12,
+    2001-08-14 ]
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2503208"></a><p class="title"><b>Example 2.12. In-Line Nested Mapping</b></p><pre class="programlisting"><span class="database">---<br /># products purchased
+- item    : Super Hoop
+  quantity: 1
+- item    : Basketball
+  quantity: 4
+- item    : Big Shoes
+  quantity: 1
+
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2503232"></a>2.3. Scalars</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+          <a id="id2503239" class="indexterm"></a><a href="#scalar/information model">Scalar
+          content</a> can be written in <a id="id2503255" class="indexterm"></a><a href="#block style/information model">block</a> form using a <a id="id2503272" class="indexterm"></a><a href="#literal style/information model">literal
+          style</a> (<a id="id2503289" class="indexterm"></a><a href="#| literal style/">&#8220;<span class="quote"><b class="userinput"><tt>|</tt></b></span>&#8221;</a>) where all <a id="id2503308" class="indexterm"></a><a href="#line break character/">line breaks</a> count. Or they can be written
+          with the <a id="id2503322" class="indexterm"></a><a href="#folded style/information model">folded style</a> <a id="id2503340" class="indexterm"></a><a href="#&gt; folded style/">(&#8220;<span class="quote"><b class="userinput"><tt>&gt;</tt></b></span>&#8221;</a>) where each <a id="id2503361" class="indexterm"></a><a href="#line break character/">line break</a> is <a id="id2503375" class="indexterm"></a><a href="#line folding/">folded</a> to a space unless it ends an
+          <a id="id2503388" class="indexterm"></a><a href="#empty line/">empty</a> or a <a id="id2503400" class="indexterm"></a><a href="#more indented line/">&#8220;<span class="quote">more indented</span>&#8221;
+          line</a>.
+        </p>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2503426"></a><p class="title"><b>Example 2.13. 
+                In literals,<br />
+                newlines are preserved
+              </b></p><pre class="programlisting"><span class="database"># ASCII Art<br />--- |
+  \//||\/||
+  // ||  ||__
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2503451"></a><p class="title"><b>Example 2.14. 
+                In the plain scalar,<br />
+                newlines become spaces
+              </b></p><pre class="programlisting"><span class="database">---<br />  Mark McGwire's
+  year was crippled
+  by a knee injury.
+</span></pre></div>
+          </td>
+            </tr>
+            <tr>
+              <td>
+            <div class="example"><a id="id2503477"></a><p class="title"><b>Example 2.15. 
+                Folded newlines preserved<br />
+                for "more indented" and blank lines
+              </b></p><pre class="programlisting"><span class="database">&gt;<br /> Sammy Sosa completed another
+ fine season with great stats.
+
+   63 Home Runs
+   0.288 Batting Average
+
+ What a year!
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2503504"></a><p class="title"><b>Example 2.16. 
+                Indentation determines scope<br />
+                 
+              </b></p><pre class="programlisting"><span class="database">name: Mark McGwire<br />accomplishment: &gt;
+  Mark set a major league
+  home run record in 1998.
+stats: |
+  65 Home Runs
+  0.278 Batting Average
+
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+          <p>
+          YAML's <a id="id2503535" class="indexterm"></a><a href="#flow scalar style/information model">flow scalars</a> include the <a id="id2503554" class="indexterm"></a><a href="#plain style/information model">plain style</a> (most
+          examples thus far) and <a id="id2503573" class="indexterm"></a><a href="#quoted style/information model">quoted styles</a>. The <a id="id2503590" class="indexterm"></a><a href="#double quoted style/information model">double
+          quoted style</a> provides <a id="id2503607" class="indexterm"></a><a href="#escaping in double quoted style/">escape sequences</a>. The <a id="id2503621" class="indexterm"></a><a href="#single quoted style/information model">single
+          quoted style</a> is useful when <a id="id2503639" class="indexterm"></a><a href="#escaping in double quoted style/">escaping</a> is not needed. All <a id="id2503654" class="indexterm"></a><a href="#flow scalar style/information model">flow
+          scalars</a> can span multiple lines; <a id="id2503670" class="indexterm"></a><a href="#line break character/">line breaks</a> are always <a id="id2503684" class="indexterm"></a><a href="#line folding/">folded</a>.
+        </p>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2503707"></a><p class="title"><b>Example 2.17. Quoted Scalars</b></p><pre class="programlisting"><span class="database">unicode: "Sosa did fine.\u263A"<br />control: "\b1998\t1999\t2000\n"
+hexesc:  "\x13\x10 is \r\n"
+
+single: '"Howdy!" he cried.'
+quoted: ' # not a ''comment''.'
+tie-fighter: '|\-*-/|'
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2503731"></a><p class="title"><b>Example 2.18. Multi-line Flow Scalars</b></p><pre class="programlisting"><span class="database">plain:<br />  This unquoted scalar
+  spans many lines.
+
+quoted: "So does this
+  quoted scalar.\n"
+
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2503753"></a>2.4. Tags</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+          In YAML, <a id="id2503762" class="indexterm"></a><a href="#non-specific tag/">untagged nodes</a>
+          are given an type depending on the <a id="id2503776" class="indexterm"></a><a href="#application/">application</a>. The examples in this
+          specification generally use the <a href="http://yaml.org/type/seq.html" target="_top">&#8220;<span class="quote"><b class="userinput"><tt>seq</tt></b></span>&#8221;</a>,
+          <a href="http://yaml.org/type/map.html" target="_top">&#8220;<span class="quote"><b class="userinput"><tt>map</tt></b></span>&#8221;</a> and
+          <a href="http://yaml.org/type/str.html" target="_top">&#8220;<span class="quote"><b class="userinput"><tt>str</tt></b></span>&#8221;</a>
+          types from the <a href="http://yaml.org/type/index.html" target="_top">YAML tag
+          repository</a>. A few examples also use the <a href="http://yaml.org/type/int.html" target="_top">&#8220;<span class="quote"><b class="userinput"><tt>int</tt></b></span>&#8221;</a> and
+          <a href="http://yaml.org/type/float.html" target="_top">&#8220;<span class="quote"><b class="userinput"><tt>float</tt></b></span>&#8221;</a>
+          types. The repository includes additional types such as <a href="http://yaml.org/type/null.html" target="_top">&#8220;<span class="quote"><b class="userinput"><tt>null</tt></b></span>&#8221;</a>,
+          <a href="http://yaml.org/type/bool.html" target="_top">&#8220;<span class="quote"><b class="userinput"><tt>bool</tt></b></span>&#8221;</a>,
+          <a href="http://yaml.org/type/set.html" target="_top">&#8220;<span class="quote"><b class="userinput"><tt>set</tt></b></span>&#8221;</a> and
+          others.
+        </p>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2503895"></a><p class="title"><b>Example 2.19. Integers</b></p><pre class="programlisting"><span class="database">canonical: 12345<br />decimal: +12,345
+sexagecimal: 3:25:45
+octal: 014
+hexadecimal: 0xC
+
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2503918"></a><p class="title"><b>Example 2.20. Floating Point</b></p><pre class="programlisting"><span class="database">canonical: 1.23015e+3<br />exponential: 12.3015e+02
+sexagecimal: 20:30.15
+fixed: 1,230.15
+negative infinity: -.inf
+not a number: .NaN
+</span></pre></div>
+          </td>
+            </tr>
+            <tr>
+              <td>
+            <div class="example"><a id="id2503941"></a><p class="title"><b>Example 2.21. Miscellaneous</b></p><pre class="programlisting"><span class="database">null: ~<br />true: y
+false: n
+string: '12345'
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2503963"></a><p class="title"><b>Example 2.22. Timestamps</b></p><pre class="programlisting"><span class="database">canonical: 2001-12-15T02:59:43.1Z<br />iso8601: 2001-12-14t21:59:43.10-05:00
+spaced: 2001-12-14 21:59:43.10 -5
+date: 2002-12-14
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+          <p>
+          Explicit typing is denoted with a <a id="id2503989" class="indexterm"></a><a href="#tag/information model">tag</a> using the exclamantion
+          point (<a id="id2504005" class="indexterm"></a><a href="#! tag indicator/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a>) symbol. <a id="id2504023" class="indexterm"></a><a href="#global tag/">Global tags</a> are URIs and may be
+          specified in a <a id="id2504036" class="indexterm"></a><a href="#tag shorthand/">shorthand</a>
+          form using a <a id="id2504051" class="indexterm"></a><a href="#tag handle/">handle</a>. <a id="id2504064" class="indexterm"></a><a href="#application/">Application</a>-specific <a id="id2504077" class="indexterm"></a><a href="#local tag/">local tags</a> may also be used.
+        </p>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2504100"></a><p class="title"><b>Example 2.23. Various Explicit Tags</b></p><pre class="programlisting"><span class="database">---<br />not-date: !!str 2002-04-28
+
+picture: !!binary |
+ R0lGODlhDAAMAIQAAP//9/X
+ 17unp5WZmZgAAAOfn515eXv
+ Pz7Y6OjuDg4J+fn5OTk6enp
+ 56enmleECcgggoBADs=
+
+application specific tag: !something |
+ The semantics of the tag
+ above may be different for
+ different documents.
+
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2504126"></a><p class="title"><b>Example 2.24. Global Tags</b></p><pre class="programlisting"><span class="database">%TAG ! tag:clarkevans.com,2002:<br />--- !shape
+  # Use the ! handle for presenting
+  # tag:clarkevans.com,2002:circle
+- !circle
+  center: &amp;ORIGIN {x: 73, y: 129}
+  radius: 7
+- !line
+  start: *ORIGIN
+  finish: { x: 89, y: 102 }
+- !label
+  start: *ORIGIN
+  color: 0xFFEEBB
+  text: Pretty vector drawing.
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2504168"></a><p class="title"><b>Example 2.25. Unordered Sets</b></p><pre class="programlisting"><span class="database"># sets are represented as a<br /># mapping where each key is
+# associated with the empty string
+--- !!set
+? Mark McGwire
+? Sammy Sosa
+? Ken Griff
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2504191"></a><p class="title"><b>Example 2.26. Ordered Mappings</b></p><pre class="programlisting"><span class="database"># ordered maps are represented as<br /># a sequence of mappings, with
+# each mapping having one key
+--- !!omap
+- Mark McGwire: 65
+- Sammy Sosa: 63
+- Ken Griffy: 58
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2504215"></a>2.5. Full Length Example</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+          Below are two full-length examples of YAML. On the left is a sample
+          invoice; on the right is a sample log file.
+        </p>
+          <table class="simplelist" border="0" summary="Simple list">
+            <tr>
+              <td>
+            <div class="example"><a id="id2504235"></a><p class="title"><b>Example 2.27. Invoice</b></p><pre class="programlisting"><span class="database">--- !&lt;tag:clarkevans.com,2002:invoice&gt;<br />invoice: 34843
+date   : 2001-01-23
+bill-to: &amp;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.
+</span></pre></div>
+          </td>
+              <td>
+            <div class="example"><a id="id2504280"></a><p class="title"><b>Example 2.28. Log File</b></p><pre class="programlisting"><span class="database">---<br />Time: 2001-11-23 15:01:42 -5
+User: ed
+Warning:
+  This is an error message
+  for the log file
+---
+Time: 2001-11-23 15:02:31 -5
+User: ed
+Warning:
+  A slightly different error
+  message.
+---
+Date: 2001-11-23 15:03:17 -5
+User: ed
+Fatal:
+  Unknown variable "bar"
+Stack:
+  - file: TopClass.py
+    line: 23
+    code: |
+      x = MoreObject("345\n")
+  - file: MoreClass.py
+    line: 58
+    code: |-
+      foo = bar
+
+
+
+</span></pre></div>
+          </td>
+            </tr>
+          </table>
+        </div>
+      </div>
+      <div class="chapter" lang="en" xml:lang="en">
+        <div class="titlepage">
+          <div>
+            <div>
+              <h2 class="title"><a id="id2504309"></a>Chapter 3. Processing YAML Information</h2>
+            </div>
+          </div>
+          <div></div>
+        </div>
+        <p>
+      YAML is both a text format and a method for <a id="id2504318" class="indexterm"></a><a href="#present/">presenting</a> any data structure in this format.
+      Therefore, this specification defines two concepts: a class of data
+      objects called YAML <a id="id2504333" class="indexterm"></a><a href="#representation/">representations</a>, and a syntax for
+      <a id="id2504348" class="indexterm"></a><a href="#present/">presenting</a> YAML <a id="id2504360" class="indexterm"></a><a href="#representation/">representations</a> as a series of
+      characters, called a YAML <a id="id2504374" class="indexterm"></a><a href="#stream/information model">stream</a>. A YAML <a id="id2504390" class="indexterm"></a><a id="processor/"></a
+            ><a href="#index-entry-processor"
+            ><i class="firstterm"
+            >processor</i></a
+          > is a tool for converting
+      information between these complementary views. It is assumed that a YAML
+      processor does its work on behalf of another module, called an <a id="id2504406" class="indexterm"></a><a id="application/"></a
+            ><a href="#index-entry-application"
+            ><i class="firstterm"
+            >application</i></a
+          >. This chapter describes the
+      information structures a YAML processor must provide to or obtain from
+      the application.
+    </p>
+        <p>
+      YAML information is used in two ways: for machine processing, and for
+      human consumption. The challenge of reconciling these two perspectives is
+      best done in three distinct translation stages: <a id="id2504430" class="indexterm"></a><a href="#representation/">representation</a>, <a id="id2504443" class="indexterm"></a><a href="#serialization/">serialization</a>, and <a id="id2504457" class="indexterm"></a><a href="#presentation/">presentation</a>. <a id="id2504471" class="indexterm"></a><a href="#representation/">Representation</a> addresses how YAML
+      views native data structures to achieve portability between programming
+      environments. <a id="id2504486" class="indexterm"></a><a href="#serialization/">Serialization</a>
+      concerns itself with turning a YAML <a id="id2504499" class="indexterm"></a><a href="#representation/">representation</a> into a serial form,
+      that is, a form with sequential access constraints. <a id="id2504514" class="indexterm"></a><a href="#presentation/">Presentation</a> deals with the formatting
+      of a YAML <a id="id2504528" class="indexterm"></a><a href="#serialization/">serialization</a> as a
+      series of characters in a human-friendly manner.
+    </p>
+        <div class="figure">
+          <a id="id2504543"></a>
+          <p class="title">
+            <b>Figure 3.1. Processing Overview</b>
+          </p>
+          <div class="mediaobject">
+            <img src="overview2.png" alt="Processing Overview" />
+          </div>
+        </div>
+        <p>
+      A YAML processor need not expose the <a id="id2504568" class="indexterm"></a><a href="#serialization/">serialization</a> or <a id="id2504581" class="indexterm"></a><a href="#representation/">representation</a> stages. It may
+      translate directly between native data structures and a character
+      <a id="id2504596" class="indexterm"></a><a href="#stream/information model">stream</a>
+      (<a id="id2504612" class="indexterm"></a><a id="dump/"></a
+            ><a href="#index-entry-dump"
+            ><i class="firstterm"
+            >dump</i></a
+          > and <a id="id2504626" class="indexterm"></a><a id="load/"></a
+            ><a href="#index-entry-load"
+            ><i class="firstterm"
+            >load</i></a
+          > in the diagram above). However, such a
+      direct translation should take place so that the native data structures
+      are <a id="id2504642" class="indexterm"></a><a href="#construct/">constructed</a> only from
+      information available in the <a id="id2504656" class="indexterm"></a><a href="#representation/">representation</a>.
+    </p>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2504671"></a>3.1. Processes</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+        This section details the processes shown in the diagram above. Note a
+        YAML <a id="id2504680" class="indexterm"></a><a href="#processor/">processor</a> need not provide
+        all these processes. For example, a YAML library may provide only YAML
+        input ability, for loading configuration files, or only output ability,
+        for sending data to other <a id="id2504696" class="indexterm"></a><a href="#application/">applications</a>.
+      </p>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2504710"></a>3.1.1. Represent</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          YAML <a id="id2504718" class="indexterm"></a><a id="represent/"></a
+            ><a href="#index-entry-represent"
+            ><i class="firstterm"
+            >represents</i></a
+          > any native
+          data structure using three <a id="id2504733" class="indexterm"></a><a href="#kind/">node
+          kinds</a>: the <a id="id2504747" class="indexterm"></a><a href="#sequence/information model">sequence</a>, the <a id="id2504763" class="indexterm"></a><a href="#mapping/information model">mapping</a> and
+          the <a id="id2504779" class="indexterm"></a><a href="#scalar/information model">scalar</a>. By <a id="id2504795" class="indexterm"></a><a href="#sequence/information model">sequence</a> we mean an ordered
+          series of entries, by <a id="id2504811" class="indexterm"></a><a href="#mapping/information model">mapping</a> we mean an unordered
+          association of <a id="id2504828" class="indexterm"></a><a href="#equality/">unique</a> <a id="id2504841" class="indexterm"></a><a href="#key/information model">keys</a> to
+          <a id="id2504857" class="indexterm"></a><a href="#value/information model">values</a>, and by <a id="id2504873" class="indexterm"></a><a href="#scalar/information model">scalar</a> we mean any datum with
+          opaque structure <a id="id2504890" class="indexterm"></a><a href="#present/">presentable</a> as
+          a series of Unicode characters. Combined, these primitives generate
+          directed graph structures. These primitives were chosen because they
+          are both powerful and familiar: the <a id="id2504906" class="indexterm"></a><a href="#sequence/information model">sequence</a> corresponds to a
+          Perl array and a Python list, the <a id="id2504922" class="indexterm"></a><a href="#mapping/information model">mapping</a> corresponds to a Perl
+          hash table and a Python dictionary. The <a id="id2504939" class="indexterm"></a><a href="#scalar/information model">scalar</a> represents strings,
+          integers, dates and other atomic data types.
+        </p>
+            <p>
+          Each YAML <a id="id2504959" class="indexterm"></a><a href="#node/information model">node</a> requires, in addition to its <a id="id2504976" class="indexterm"></a><a href="#kind/">kind</a> and <a id="id2504989" class="indexterm"></a><a href="#content/information model">content</a>, a <a id="id2505005" class="indexterm"></a><a href="#tag/information model">tag</a> specifying
+          its data type. Type specifiers are either <a id="id2505021" class="indexterm"></a><a href="#global tag/">global</a> URIs, or are <a id="id2505034" class="indexterm"></a><a href="#local tag/">local</a> in scope to a single <a id="id2505046" class="indexterm"></a><a href="#application/">application</a>. For example, an integer
+          is represented in YAML with a <a id="id2505061" class="indexterm"></a><a href="#scalar/information model">scalar</a> plus the <a id="id2505077" class="indexterm"></a><a href="#global tag/">global tag</a>
+          &#8220;<span class="quote"><b class="userinput"><tt>tag:yaml.org,2002:int</tt></b></span>&#8221;. Similarly, an invoice object,
+          particular to a given organization, could be represented as a
+          <a id="id2505098" class="indexterm"></a><a href="#mapping/information model">mapping</a> together with the <a id="id2505114" class="indexterm"></a><a href="#local tag/">local tag</a> &#8220;<span class="quote"><b class="userinput"><tt>!invoice</tt></b></span>&#8221;. This simple model
+          can represent any data structure independent of programming language.
+        </p>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2505138"></a>3.1.2. Serialize</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          For sequential access mediums, such as an event callback API, a YAML
+          <a id="id2505147" class="indexterm"></a><a href="#representation/">representation</a> must be
+          <a id="id2505160" class="indexterm"></a><a id="serialize/"></a
+            ><a href="#index-entry-serialize"
+            ><i class="firstterm"
+            >serialized</i></a
+          > to an ordered tree.
+          Since in a YAML <a id="id2505174" class="indexterm"></a><a href="#representation/">representation</a>, <a id="id2505187" class="indexterm"></a><a href="#key/information model">mapping keys</a>
+          are unordered and <a id="id2505204" class="indexterm"></a><a href="#node/information model">nodes</a> may be referenced more than once (have more
+          than one incoming &#8220;<span class="quote">arrow</span>&#8221;), the serialization process is
+          required to impose an <a id="id2505226" class="indexterm"></a><a href="#key order/">ordering</a>
+          on the <a id="id2505239" class="indexterm"></a><a href="#key/information model">mapping
+          keys</a> and to replace the second and subsequent references to
+          a given <a id="id2505255" class="indexterm"></a><a href="#node/information model">node</a> with place holders called <a id="id2505272" class="indexterm"></a><a href="#alias/information model">aliases</a>. YAML
+          does not specify how these <a id="id2505289" class="indexterm"></a><a id="serialization detail/"></a
+            ><a href="#index-entry-serialization detail"
+            ><i class="firstterm"
+            >serialization details</i></a
+          > are chosen. It is up to the
+          YAML <a id="id2505305" class="indexterm"></a><a href="#processor/">processor</a> to come up with
+          human-friendly <a id="id2505317" class="indexterm"></a><a href="#key order/">key order</a> and
+          <a id="id2505330" class="indexterm"></a><a href="#anchor/information model">anchor</a> names, possibly with the help of the <a id="id2505348" class="indexterm"></a><a href="#application/">application</a>. The result of this
+          process, a YAML <a id="id2505361" class="indexterm"></a><a href="#serialization/">serialization
+          tree</a>, can then be traversed to produce a series of event
+          calls for one-pass processing of YAML data.
+        </p>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2505379"></a>3.1.3. Present</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          The final output process is <a id="id2505387" class="indexterm"></a><a id="present/"></a
+            ><a href="#index-entry-present"
+            ><i class="firstterm"
+            >presenting</i></a
+          > the YAML <a id="id2505400" class="indexterm"></a><a href="#serialization/">serializations</a> as a character
+          <a id="id2505414" class="indexterm"></a><a href="#stream/information model">stream</a> in a human-friendly manner. To maximize human
+          readability, YAML offsers a rich set of stylistic options which go
+          far beyond the minimal functional needs of simple data storage.
+          Therefore the YAML <a id="id2505434" class="indexterm"></a><a href="#processor/">processor</a>
+          is required to introduce various <a id="id2505447" class="indexterm"></a><a id="presentation detail/"></a
+            ><a href="#index-entry-presentation detail"
+            ><i class="firstterm"
+            >presentation details</i></a
+          > when creating the <a id="id2505462" class="indexterm"></a><a href="#stream/information model">stream</a>, such
+          as the choice of <a id="id2505479" class="indexterm"></a><a href="#style/">node styles</a>, how
+          to <a id="id2505492" class="indexterm"></a><a href="#format/">format content</a>, the amount of
+          <a id="id2505506" class="indexterm"></a><a href="#indentation space/">indentation</a>, which
+          <a id="id2505519" class="indexterm"></a><a href="#tag handle/">tag handles</a> to use, the
+          <a id="id2505532" class="indexterm"></a><a href="#tag/information model">node
+          tags</a> to leave <a id="id2505548" class="indexterm"></a><a href="#non-specific tag/">unspecified</a>, the set of <a id="id2505561" class="indexterm"></a><a href="#directive/information model">directives</a> to provide and
+          possibly even what <a id="id2505579" class="indexterm"></a><a href="#comment/information model">comments</a> to add. While some of this can be done with
+          the help of of the <a id="id2505596" class="indexterm"></a><a href="#application/">application</a>, in general this process
+          should guided by the preferences of the user.
+        </p>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2505613"></a>3.1.4. Parse</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          <a id="id2505620" class="indexterm"></a><a id="parse/"></a
+            ><a href="#index-entry-parse"
+            ><i class="firstterm"
+            >Parsing</i></a
+          > is the inverse process of
+          <a id="id2505634" class="indexterm"></a><a href="#present/">presentation</a>, it takes a
+          <a id="id2505647" class="indexterm"></a><a href="#stream/information model">stream</a> of characters and produces a series of
+          events. Parsing discards all the <a id="id2505665" class="indexterm"></a><a href="#presentation detail/">details</a> introduced in the <a id="id2505679" class="indexterm"></a><a href="#present/">presentation</a> process, reporting only the
+          <a id="id2505693" class="indexterm"></a><a href="#serialization/">serialization</a> events.
+          Parsing can fail fue to <a id="id2505706" class="indexterm"></a><a href="#ill-formed stream/">ill-formed</a> input.
+        </p>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2505723"></a>3.1.5. Compose</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          <a id="id2505730" class="indexterm"></a><a id="compose/"></a
+            ><a href="#index-entry-compose"
+            ><i class="firstterm"
+            >Composing</i></a
+          > takes a series of
+          <a id="id2505744" class="indexterm"></a><a href="#serialization/">serialization</a> events and
+          produces a <a id="id2505758" class="indexterm"></a><a href="#representation/">representation
+          graph</a>. Composing discards all the <a id="id2505772" class="indexterm"></a><a href="#serialization detail/">serialization details</a>
+          introduced in the <a id="id2505787" class="indexterm"></a><a href="#serialize/">serialization</a> process, producing only
+          the <a id="id2505801" class="indexterm"></a><a href="#representation/">representation graph</a>.
+          Composing can fail due to any of several reasons, detailed <a id="id2505815" class="indexterm"></a><a href="#load failure point/">below</a>.
+        </p>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2505832"></a>3.1.6. Construct</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          The final input process is <a id="id2505840" class="indexterm"></a><a id="construct/"></a
+            ><a href="#index-entry-construct"
+            ><i class="firstterm"
+            >constructing</i></a
+          > native data structures
+          from the YAML <a id="id2505855" class="indexterm"></a><a href="#representation/">representation</a>. Construction must
+          be based only on the information available in the <a id="id2505869" class="indexterm"></a><a href="#representation/">representation</a>, and not on
+          additional <a id="id2505883" class="indexterm"></a><a href="#serialization/">serialization</a>
+          or <a id="id2505896" class="indexterm"></a><a href="#presentation detail/">presentation
+          details</a> such as <a id="id2505910" class="indexterm"></a><a href="#comment/information model">comments</a>, <a id="id2505926" class="indexterm"></a><a href="#directive/information model">directives</a>, <a id="id2505942" class="indexterm"></a><a href="#key order/">mapping key
+          order</a>, <a id="id2505954" class="indexterm"></a><a href="#style/">node styles</a>,
+          <a id="id2505966" class="indexterm"></a><a href="#format/">content format</a>, <a id="id2505979" class="indexterm"></a><a href="#indentation space/">indentation</a> levels etc.
+          Construction can fail due to the <a id="id2505993" class="indexterm"></a><a href="#unavailable tag/">unavailability</a> of the required native data types.
+        </p>
+          </div>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2506012"></a>3.2. Information Models</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+        This section specifies the formal details of the results of the above
+        processes. To maximize data portability between programming languages
+        and implementations, users of YAML should be mindful of the distinction
+        between <a id="id2506024" class="indexterm"></a><a href="#serialization/">serialization</a> or
+        <a id="id2506037" class="indexterm"></a><a href="#presentation/">presentation</a> properties and
+        those which are part of the YAML <a id="id2506051" class="indexterm"></a><a href="#representation/">representation</a>. Thus, while imposing
+        a <a id="id2506064" class="indexterm"></a><a href="#key order/">order</a> on <a id="id2506077" class="indexterm"></a><a href="#key/information model">mapping keys</a> is
+        necessary for flattening YAML <a id="id2506094" class="indexterm"></a><a href="#representation/">representations</a> to a sequential
+        access medium, this <a id="id2506107" class="indexterm"></a><a href="#serialization detail/">serialization detail</a> must not be used to convey
+        <a id="id2506122" class="indexterm"></a><a href="#application/">application</a> level information.
+        In a similar manner, while <a id="id2506136" class="indexterm"></a><a href="#indentation space/">indentation</a> technique and a choice of a <a id="id2506150" class="indexterm"></a><a href="#style/">node style</a> are needed for the human
+        readability, these <a id="id2506162" class="indexterm"></a><a href="#presentation detail/">presentation
+        details</a> are neither part of the YAML <a id="id2506177" class="indexterm"></a><a href="#serialization/">serialization</a> nor the YAML <a id="id2506190" class="indexterm"></a><a href="#representation/">representation</a>. By carefully
+        separating properties needed for <a id="id2506204" class="indexterm"></a><a href="#serialization/">serialization</a> and <a id="id2506218" class="indexterm"></a><a href="#presentation/">presentation</a>, YAML <a id="id2506231" class="indexterm"></a><a href="#representation/">representations</a> of <a id="id2506244" class="indexterm"></a><a href="#application/">application</a> information will be
+        consistent and portable between various programming environments.
+      </p>
+          <div class="figure">
+            <a id="id2506260"></a>
+            <p class="title">
+              <b>Figure 3.2. Information Models</b>
+            </p>
+            <div class="mediaobject">
+              <img src="model2.png" alt="Information Models" />
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2506281"></a>3.2.1. Representation Graph</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          YAML's <a id="id2506289" class="indexterm"></a><a id="representation/"></a
+            ><a href="#index-entry-representation"
+            ><i class="firstterm"
+            >representation</i></a
+          > of
+          native data is a rooted, connected, directed graph of <a id="id2506305" class="indexterm"></a><a href="#tag/information model">tagged</a> <a id="id2506320" class="indexterm"></a><a href="#node/information model">nodes</a>. By
+          &#8220;<span class="quote">directed graph</span>&#8221; we mean a set of <a id="id2506340" class="indexterm"></a><a href="#node/information model">nodes</a> and
+          directed edges (&#8220;<span class="quote">arrows</span>&#8221;), where each edge connects one
+          <a id="id2506361" class="indexterm"></a><a href="#node/information model">node</a>
+          to another (see <a href="http://www.nist.gov/dads/HTML/directedGraph.html" target="_top"> a formal
+          definition</a>). All the <a id="id2506383" class="indexterm"></a><a href="#node/information model">nodes</a> must be reachable from
+          the <a id="id2506400" class="indexterm"></a><a id="root node/"></a
+            ><a href="#index-entry-root node"
+            ><i class="firstterm"
+            >root node</i></a
+          > via such edges.
+          Note that the YAML graph may include cycles, and a <a id="id2506414" class="indexterm"></a><a href="#node/information model">node</a> may have
+          more than one incoming edge.
+        </p>
+            <p>
+          <a id="id2506435" class="indexterm"></a><a href="#node/information model">Nodes</a>
+          that are defined in terms of other <a id="id2506451" class="indexterm"></a><a href="#node/information model">nodes</a> are <a id="id2506467" class="indexterm"></a><a href="#collection/information model">collections</a> and <a id="id2506483" class="indexterm"></a><a href="#node/information model">nodes</a> that are independent of
+          any other <a id="id2506500" class="indexterm"></a><a href="#node/information model">nodes</a> are <a id="id2506516" class="indexterm"></a><a href="#scalar/information model">scalars</a>. YAML supports two
+          <a id="id2506532" class="indexterm"></a><a href="#kind/">kinds</a> of <a id="id2506544" class="indexterm"></a><a href="#collection/information model">collection
+          nodes</a>, <a id="id2506560" class="indexterm"></a><a href="#sequence/information model">sequences</a> and <a id="id2506577" class="indexterm"></a><a href="#mapping/information model">mappings</a>. <a id="id2506592" class="indexterm"></a><a href="#mapping/information model">Mapping
+          nodes</a> are somewhat tricky because their <a id="id2506608" class="indexterm"></a><a href="#key/information model">keys</a> are
+          unordered and must be <a id="id2506624" class="indexterm"></a><a href="#equality/">unique</a>.
+        </p>
+            <div class="figure">
+              <a id="id2506638"></a>
+              <p class="title">
+                <b>Figure 3.3. Representation Model</b>
+              </p>
+              <div class="mediaobject">
+                <img src="represent2.png" alt="Representation Model" />
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2506659"></a>3.2.1.1. Nodes</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+            YAML <a id="id2506667" class="indexterm"></a><a id="node/information model"></a
+            ><a href="#index-entry-node"
+            ><i class="firstterm"
+            >nodes</i></a
+          > have <a id="id2506686" class="indexterm"></a><a id="content/information model"></a
+            ><a href="#index-entry-content"
+            ><i class="firstterm"
+            >content</i></a
+          > of one of three
+            <a id="id2506703" class="indexterm"></a><a id="kind/"></a
+            ><a href="#index-entry-kind"
+            ><i class="firstterm"
+            >kinds</i></a
+          >: scalar, sequence, or
+            mapping. In addition, each node has a <a id="id2506718" class="indexterm"></a><a href="#tag/information model">tag</a> which serves to
+            restrict the set of possible values which the node's content can
+            have.
+          </p>
+              <div class="variablelist">
+                <dl>
+                  <dt>
+                    <span class="term">Scalar</span>
+                  </dt>
+                  <dd>
+                    <p>
+                  The content of a <a id="id2506751" class="indexterm"></a><a id="scalar/information model"></a
+            ><a href="#index-entry-scalar"
+            ><i class="firstterm"
+            >scalar</i></a
+          > node is an
+                  opaque datum that can be <a id="id2506772" class="indexterm"></a><a href="#present/">presented</a> as a series of zero or
+                  more Unicode characters.
+                </p>
+                  </dd>
+                  <dt>
+                    <span class="term">Sequence</span>
+                  </dt>
+                  <dd>
+                    <p>
+                  The content of a <a id="id2506799" class="indexterm"></a><a id="sequence/information model"></a
+            ><a href="#index-entry-sequence"
+            ><i class="firstterm"
+            >sequence</i></a
+          > node is an
+                  ordered series of zero or more nodes. In particular, a
+                  sequence may contain the same node more than once or it could
+                  even contain itself (directly or indirectly).
+                </p>
+                  </dd>
+                  <dt>
+                    <span class="term">Mapping</span>
+                  </dt>
+                  <dd>
+                    <p>
+                  The content of a <a id="id2506833" class="indexterm"></a><a id="mapping/information model"></a
+            ><a href="#index-entry-mapping"
+            ><i class="firstterm"
+            >mapping</i></a
+          > node is an
+                  unordered set of <a id="id2506851" class="indexterm"></a><a id="key/information model"></a
+            ><a href="#index-entry-key"
+            ><i class="firstterm"
+            >key:</i></a
+          > <a id="id2506869" class="indexterm"></a><a id="value/information model"></a
+            ><a href="#index-entry-value"
+            ><i class="firstterm"
+            >value</i></a
+          >
+                  node pairs, with the restriction that each of the keys is
+                  <a id="id2506887" class="indexterm"></a><a href="#equality/">unique</a>. YAML places no
+                  further restrictions on the nodes. In particular, keys may be
+                  arbitrary nodes, the same node may be used as the value of
+                  several key: value pairs, and a mapping could even
+                  contain itself as a key or a value (directly or indirectly).
+                </p>
+                  </dd>
+                </dl>
+              </div>
+              <p>
+            When appropriate, it is convenient to consider sequences and
+            mappings together, as <a id="id2506915" class="indexterm"></a><a id="collection/information model"></a
+            ><a href="#index-entry-collection"
+            ><i class="firstterm"
+            >collections</i></a
+          >. In this view,
+            sequences are treated as mappings with integer keys starting at
+            zero. Having a unified collections view for sequences and mappings
+            is helpful both for creating practical YAML tools and APIs and for
+            theoretical analysis.
+          </p>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2506940"></a>3.2.1.2. Tags</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+            YAML <a id="id2506948" class="indexterm"></a><a href="#represent/">represents</a> type
+            information of native data structures with a simple identifier,
+            called a <a id="id2506962" class="indexterm"></a><a id="tag/information model"></a
+            ><a href="#index-entry-tag"
+            ><i class="firstterm"
+            >tag</i></a
+          >. <a id="id2506980" class="indexterm"></a><a id="global tag/"></a
+            ><a href="#index-entry-global tag"
+            ><i class="firstterm"
+            >Global
+            tags</i></a
+          > are are <a href="http://www.ietf.org/rfc/rfc2396.txt" target="_top">URIs</a> and hence
+            globally unique across all <a id="id2507000" class="indexterm"></a><a href="#application/">applications</a>. The
+            &#8220;<span class="quote"><b class="userinput"><tt>tag</tt></b></span>&#8221;: <a href="http://www.taguri.org" target="_top">URI
+            scheme</a> (<a href="http://yaml.org/spec/taguri.txt" target="_top">mirror</a>) is
+            recommended for all global YAML tags. In contrast, <a id="id2507033" class="indexterm"></a><a id="local tag/"></a
+            ><a href="#index-entry-local tag"
+            ><i class="firstterm"
+            >local tags</i></a
+          > are specific to a single
+            <a id="id2507047" class="indexterm"></a><a href="#application/">application</a>. Local tags
+            start with <a id="id2507061" class="indexterm"></a><a id="! local tag/"></a
+            ><a href="#index-entry-! local tag"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</i></a
+          >, are not URIs and are not
+            expected to be globally unique. YAML provides a <a id="id2507082" class="indexterm"></a><a href="#TAG directive/">&#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221; directive</a> to
+            make tag notation less verbose; it also offers easy migration from
+            local to global tags. To ensure this, local tags are restricted to
+            the URI character set and use URI character <a id="id2507104" class="indexterm"></a><a href="#escaping in URI/">escaping</a>.
+          </p>
+              <p>
+            YAML does not mandate any special relationship between different
+            tags that begin with the same substring. Tags ending with URI
+            fragments (containing <a id="id2507124" class="indexterm"></a><a href="## comment/">&#8220;<span class="quote"><b class="userinput"><tt>#</tt></b></span>&#8221;</a>) are no exception; tags that
+            share the same base URI but differ in their fragment part are
+            considered to be different, independent tags. By convention,
+            fragments are used to identify different &#8220;<span class="quote">variants</span>&#8221; of
+            a tag, while &#8220;<span class="quote"><b class="userinput"><tt>/</tt></b></span>&#8221; is used to define nested tag
+            &#8220;<span class="quote">namespace</span>&#8221; hierarchies. However, this is merely a
+            convention, and each tag may employ its own rules. For example,
+            Perl tags may use &#8220;<span class="quote"><b class="userinput"><tt>::</tt></b></span>&#8221; to express namespace
+            hierarchies, Java tags may use &#8220;<span class="quote"><b class="userinput"><tt>.</tt></b></span>&#8221;, etc.
+          </p>
+              <p>
+            YAML tags are used to associate meta information with each <a id="id2507182" class="indexterm"></a><a href="#node/information model">node</a>. In
+            particular, each tag must specify the expected <a id="id2507200" class="indexterm"></a><a href="#kind/">node kind</a> (<a id="id2507212" class="indexterm"></a><a href="#scalar/information model">scalar</a>, <a id="id2507228" class="indexterm"></a><a href="#sequence/information model">sequence</a>, or <a id="id2507244" class="indexterm"></a><a href="#mapping/information model">mapping</a>). <a id="id2507259" class="indexterm"></a><a href="#scalar/information model">Scalar</a>
+            tags must also provide mechanism for converting <a id="id2507276" class="indexterm"></a><a href="#format/">formatted content</a> to a <a id="id2507289" class="indexterm"></a><a href="#canonical form/">canonical form</a> for supporting
+            <a id="id2507302" class="indexterm"></a><a href="#equality/">equality</a> testing.
+            Furthermore, a tag may provide additional information such as the
+            set of allowed <a id="id2507317" class="indexterm"></a><a href="#content/information model">content values</a> for validation, a mechanism for
+            <a id="id2507334" class="indexterm"></a><a href="#tag resolution/">tag resolution</a>, or any
+            other data that is applicable to all of the tag's <a id="id2507349" class="indexterm"></a><a href="#node/information model">nodes</a>.
+          </p>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2507367"></a>3.2.1.3. Nodes Comparison</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+            Since YAML <a id="id2507374" class="indexterm"></a><a href="#mapping/information model">mappings</a> require <a id="id2507391" class="indexterm"></a><a href="#key/information model">key</a> uniqueness, <a id="id2507406" class="indexterm"></a><a href="#representation/">representations</a> must include a
+            mechanism for testing the equality of <a id="id2507421" class="indexterm"></a><a href="#node/information model">nodes</a>. This is non-trivial
+            since YAML allows various ways to <a id="id2507437" class="indexterm"></a><a href="#format/">format</a> a given <a id="id2507450" class="indexterm"></a><a href="#scalar/information model">scalar content</a>. For
+            example, the integer eleven can be written as &#8220;<span class="quote"><b class="userinput"><tt>013</tt></b></span>&#8221;
+            (octal) or &#8220;<span class="quote"><b class="userinput"><tt>0xB</tt></b></span>&#8221; (hexadecimal). If both forms are
+            used as <a id="id2507481" class="indexterm"></a><a href="#key/information model">keys</a> in the same <a id="id2507497" class="indexterm"></a><a href="#mapping/information model">mapping</a>, only a YAML
+            <a id="id2507513" class="indexterm"></a><a href="#processor/">processor</a> which recognizes
+            integer <a id="id2507526" class="indexterm"></a><a href="#format/">formats</a> would correctly
+            flag the duplicate <a id="id2507539" class="indexterm"></a><a href="#key/information model">key</a> as an error.
+          </p>
+              <div class="variablelist">
+                <dl>
+                  <dt>
+                    <span class="term">Canonical Form</span>
+                  </dt>
+                  <dd>
+                    <p>
+                  YAML supports the need for <a id="id2507570" class="indexterm"></a><a href="#scalar/information model">scalar</a> equality by
+                  requiring that every <a id="id2507586" class="indexterm"></a><a href="#scalar/information model">scalar</a> <a id="id2507602" class="indexterm"></a><a href="#tag/information model">tag</a>
+                  must specify a mechanism to producing the <a id="id2507618" class="indexterm"></a><a id="canonical form/"></a
+            ><a href="#index-entry-canonical form"
+            ><i class="firstterm"
+            >canonical form</i></a
+          > of any
+                  <a id="id2507632" class="indexterm"></a><a href="#format/">formatted content</a>. This
+                  form is a Unicode character string which <a id="id2507646" class="indexterm"></a><a href="#present/">presents</a> the <a id="id2507659" class="indexterm"></a><a href="#content/information model">content</a> and can be used for equality
+                  testing. While this requirement is stronger than a well
+                  defined equality operator, it has other uses, such as the
+                  production of digital signatures.
+                </p>
+                  </dd>
+                  <dt>
+                    <span class="term">Equality</span>
+                  </dt>
+                  <dd>
+                    <p>
+                   Two <a id="id2507692" class="indexterm"></a><a href="#node/information model">nodes</a> must have the same <a id="id2507709" class="indexterm"></a><a href="#tag/information model">tag</a>
+                   and <a id="id2507724" class="indexterm"></a><a href="#content/information model">content</a> to be <a id="id2507741" class="indexterm"></a><a id="equality/"></a
+            ><a href="#index-entry-equality"
+            ><i class="firstterm"
+            >equal</i></a
+          >. Since each <a id="id2507755" class="indexterm"></a><a href="#tag/information model">tag</a>
+                   applies to exactly one <a id="id2507771" class="indexterm"></a><a href="#kind/">kind</a>, this implies that the two
+                   <a id="id2507785" class="indexterm"></a><a href="#node/information model">nodes</a> must have the same <a id="id2507801" class="indexterm"></a><a href="#kind/">kind</a> to be equal. Two <a id="id2507814" class="indexterm"></a><a href="#scalar/information model">scalars</a> are equal only when their <a id="id2507830" class="indexterm"></a><a href="#tag/information model">tags</a>
+                   and canonical forms are equal character-by-character.
+                   Equality of <a id="id2507848" class="indexterm"></a><a href="#collection/information model">collections</a> is
+                   defined recursively. Two <a id="id2507865" class="indexterm"></a><a href="#sequence/information model">sequences</a> are equal
+                   only when they have the same <a id="id2507882" class="indexterm"></a><a href="#tag/information model">tag</a> and length, and
+                   each <a id="id2507897" class="indexterm"></a><a href="#node/information model">node</a> in one <a id="id2507914" class="indexterm"></a><a href="#sequence/information model">sequence</a> is equal to
+                   the corresponding <a id="id2507930" class="indexterm"></a><a href="#node/information model">node</a> in the other
+                   <a id="id2507945" class="indexterm"></a><a href="#sequence/information model">sequence</a>. Two <a id="id2507962" class="indexterm"></a><a href="#mapping/information model">mappings</a> are equal
+                   only when they have the same <a id="id2507978" class="indexterm"></a><a href="#tag/information model">tag</a> and an equal set
+                   of <a id="id2507994" class="indexterm"></a><a href="#key/information model">keys</a>, and each <a id="id2508010" class="indexterm"></a><a href="#key/information model">key</a> in this set is
+                   associated with equal <a id="id2508026" class="indexterm"></a><a href="#value/information model">values</a> in both
+                   <a id="id2508042" class="indexterm"></a><a href="#mapping/information model">mappings</a>.
+                </p>
+                  </dd>
+                  <dt>
+                    <span class="term">Identity</span>
+                  </dt>
+                  <dd>
+                    <p>
+                  Two <a id="id2508071" class="indexterm"></a><a href="#node/information model">nodes</a> are <a id="id2508088" class="indexterm"></a><a id="identity/"></a
+            ><a href="#index-entry-identity"
+            ><i class="firstterm"
+            >identical</i></a
+          > only when they
+                  <a id="id2508102" class="indexterm"></a><a href="#represent/">represent</a> the same
+                  native data structure. Typically, this corresponds to a
+                  single memory address. Identity should not be confused with
+                  equality; two equal <a id="id2508118" class="indexterm"></a><a href="#node/information model">nodes</a> need not have
+                  the same identity. A YAML <a id="id2508135" class="indexterm"></a><a href="#processor/">processor</a> may treat equal
+                  <a id="id2508148" class="indexterm"></a><a href="#scalar/information model">scalars</a> as if they were identical. In
+                  contrast, the separate identity of two distinct but equal
+                  <a id="id2508166" class="indexterm"></a><a href="#collection/information model">collections</a> must be preserved.
+                </p>
+                  </dd>
+                </dl>
+              </div>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2508190"></a>3.2.2. Serialization Tree</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          To express a YAML <a id="id2508198" class="indexterm"></a><a href="#representation/">representation</a> using a serial API,
+          it necessary to impose an <a id="id2508212" class="indexterm"></a><a href="#key order/">order</a> on <a id="id2508225" class="indexterm"></a><a href="#key/information model">mapping keys</a> and employ
+          <a id="id2508240" class="indexterm"></a><a href="#alias/information model">alias
+          nodes</a> to indicate a subsequent occurrence of a previously
+          encountered <a id="id2508257" class="indexterm"></a><a href="#node/information model">node</a>. The result of this process is a <a id="id2508274" class="indexterm"></a><a id="serialization/"></a
+            ><a href="#index-entry-serialization"
+            ><i class="firstterm"
+            >serialization tree</i></a
+          >, where each
+          <a id="id2508288" class="indexterm"></a><a href="#node/information model">node</a>
+          has an ordered set of children. This tree can be traversed for a
+          serial event based API. <a id="id2508306" class="indexterm"></a><a href="#construct/">Construction</a> of native structures from
+          the serial interface should not use <a id="id2508320" class="indexterm"></a><a href="#key order/">key
+          order</a> or <a id="id2508333" class="indexterm"></a><a href="#anchor/information model">anchors</a> for the preservation of important data.
+        </p>
+            <div class="figure">
+              <a id="id2508351"></a>
+              <p class="title">
+                <b>Figure 3.4. Serialization Model</b>
+              </p>
+              <div class="mediaobject">
+                <img src="serialize2.png" alt="Serialization Model" />
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2508372"></a>3.2.2.1. Keys Order</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+            In the <a id="id2508380" class="indexterm"></a><a href="#representation/">representation</a>
+            model, <a id="id2508393" class="indexterm"></a><a href="#key/information model">mapping
+            keys</a> do not have an order. To <a id="id2508409" class="indexterm"></a><a href="#serialize/">serialize</a> a <a id="id2508422" class="indexterm"></a><a href="#mapping/information model">mapping</a>,
+            it is necessary to impose an <a id="id2508439" class="indexterm"></a><a id="key order/"></a
+            ><a href="#index-entry-key order"
+            ><i class="firstterm"
+            >ordering</i></a
+          > on its <a id="id2508453" class="indexterm"></a><a href="#key/information model">keys</a>. This order is a
+            <a id="id2508469" class="indexterm"></a><a href="#serialization detail/">serialization
+            detail</a> and should not be used when <a id="id2508483" class="indexterm"></a><a href="#compose/">composing</a> the <a id="id2508496" class="indexterm"></a><a href="#representation/">representation graph</a> (and hence
+            for the preservation of important data). In every case where
+            <a id="id2508512" class="indexterm"></a><a href="#node/information model">node</a> order is significant, a <a id="id2508528" class="indexterm"></a><a href="#sequence/information model">sequence</a>
+            must be used. For example, an ordered <a id="id2508545" class="indexterm"></a><a href="#mapping/information model">mapping</a> can be <a id="id2508560" class="indexterm"></a><a href="#represent/">represented</a> as a <a id="id2508573" class="indexterm"></a><a href="#sequence/information model">sequence</a>
+            of <a id="id2508589" class="indexterm"></a><a href="#mapping/information model">mappings</a>, where each <a id="id2508605" class="indexterm"></a><a href="#mapping/information model">mapping</a> is a single
+            <a id="id2508620" class="indexterm"></a><a href="#key/information model">key:</a> <a id="id2508637" class="indexterm"></a><a href="#value/information model">value</a> pair. YAML provides
+            convenient compact notation for this case.
+          </p>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2508656"></a>3.2.2.2. Anchors and Aliases</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+            In the <a id="id2508664" class="indexterm"></a><a href="#representation/">representation
+            graph</a>, a <a id="id2508678" class="indexterm"></a><a href="#node/information model">node</a> may appear in more than one <a id="id2508695" class="indexterm"></a><a href="#collection/information model">collection</a>. When <a id="id2508712" class="indexterm"></a><a href="#serialize/">serializing</a> such data, the first
+            occurrence of the <a id="id2508725" class="indexterm"></a><a href="#node/information model">node</a> is <a id="id2508740" class="indexterm"></a><a id="identified/"></a
+            ><a href="#index-entry-identified"
+            ><i class="firstterm"
+            >identified</i></a
+          > by an <a id="id2508754" class="indexterm"></a><a id="anchor/information model"></a
+            ><a href="#index-entry-anchor"
+            ><i class="firstterm"
+            >anchor</i></a
+          > and
+            each subsequent occurrence is <a id="id2508773" class="indexterm"></a><a href="#serialize/">serialized</a> as an <a id="id2508785" class="indexterm"></a><a id="alias/information model"></a
+            ><a href="#index-entry-alias"
+            ><i class="firstterm"
+            >alias node</i></a
+          >
+            which refers back to this anchor. Otherwise, anchor names are a
+            <a id="id2508804" class="indexterm"></a><a href="#serialization detail/">serialization
+            detail</a> and are discarded once <a id="id2508818" class="indexterm"></a><a href="#compose/">composing</a> is completed. When <a id="id2508830" class="indexterm"></a><a href="#compose/">composing</a> a <a id="id2508843" class="indexterm"></a><a href="#representation/">representation graph</a> from
+            <a id="id2508856" class="indexterm"></a><a href="#serialize/">serialized</a> events, an alias
+            node refers to the most recent <a id="id2508870" class="indexterm"></a><a href="#node/information model">node</a> in the <a id="id2508886" class="indexterm"></a><a href="#serialization/">serialization</a> having the
+            specified anchor. Therefore, anchors need not be unique within a
+            <a id="id2508901" class="indexterm"></a><a href="#serialization/">serialization</a>. In
+            addition, an anchor need not have an alias node referring to it. It
+            is therefore possible to provide an anchor for all <a id="id2508917" class="indexterm"></a><a href="#node/information model">nodes</a> in
+            <a id="id2508932" class="indexterm"></a><a href="#serialization/">serialization</a>.
+          </p>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2508949"></a>3.2.3. Presentation Stream</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          A YAML <a id="id2508957" class="indexterm"></a><a id="presentation/"></a
+            ><a href="#index-entry-presentation"
+            ><i class="firstterm"
+            >presentation</i></a
+          > is a
+          <a id="id2508971" class="indexterm"></a><a id="stream/information model"></a
+            ><a href="#index-entry-stream"
+            ><i class="firstterm"
+            >stream</i></a
+          > of Unicode characters making use of of
+          <a id="id2508990" class="indexterm"></a><a href="#style/">styles</a>, <a id="id2509002" class="indexterm"></a><a href="#format/">formats</a>, <a id="id2509015" class="indexterm"></a><a href="#comment/information model">comments</a>, <a id="id2509030" class="indexterm"></a><a href="#directive/information model">directives</a> and other <a id="id2509046" class="indexterm"></a><a href="#presentation detail/">presentation details</a> to <a id="id2509060" class="indexterm"></a><a href="#present/">present</a> a YAML <a id="id2509072" class="indexterm"></a><a href="#serialization/">serialization</a> in a human readable
+          way. Although a YAML <a id="id2509086" class="indexterm"></a><a href="#processor/">processor</a>
+          may provide these <a id="id2509100" class="indexterm"></a><a href="#presentation detail/">details</a> when <a id="id2509114" class="indexterm"></a><a href="#parse/">parsing</a>, they should not be reflected in
+          the resulting <a id="id2509128" class="indexterm"></a><a href="#serialization/">serialization</a>. YAML allows several
+          <a id="id2509142" class="indexterm"></a><a href="#serialization/">serializations</a> to be
+          contained in the same YAML character stream as a series of <a id="id2509156" class="indexterm"></a><a id="document/information model"></a
+            ><a href="#index-entry-document"
+            ><i class="firstterm"
+            >documents</i></a
+          >
+          separated by <a id="id2509174" class="indexterm"></a><a href="#document boundary marker/">document
+          boundary markers</a>. Documents appearing in the same stream
+          are independent; that is, a <a id="id2509189" class="indexterm"></a><a href="#node/information model">node</a> must not appear in more
+          than one <a id="id2509206" class="indexterm"></a><a href="#serialization/">serialization
+          tree</a> or <a id="id2509219" class="indexterm"></a><a href="#representation/">representation
+          graph</a>.
+        </p>
+            <div class="figure">
+              <a id="id2509234"></a>
+              <p class="title">
+                <b>Figure 3.5. Presentation Model</b>
+              </p>
+              <div class="mediaobject">
+                <img src="present2.png" alt="Presentation Model" />
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2509255"></a>3.2.3.1. Node Styles</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+            Each <a id="id2509263" class="indexterm"></a><a href="#node/information model">node</a> is presented in some <a id="id2509280" class="indexterm"></a><a id="style/"></a
+            ><a href="#index-entry-style"
+            ><i class="firstterm"
+            >style</i></a
+          >, depending on its <a id="id2509293" class="indexterm"></a><a href="#kind/">kind</a>. The node style is a <a id="id2509306" class="indexterm"></a><a href="#presentation detail/">presentation detail</a> and is
+            not reflected in the <a id="id2509321" class="indexterm"></a><a href="#serialization/">serialization
+            tree</a> or <a id="id2509335" class="indexterm"></a><a href="#representation/">representation
+            graph</a>. There are two groups of styles, <a id="id2509348" class="indexterm"></a><a id="block style/information model"></a
+            ><a href="#index-entry-block style"
+            ><i class="firstterm"
+            >block</i></a
+          >
+            and <a id="id2509366" class="indexterm"></a><a id="flow style/information model"></a
+            ><a href="#index-entry-flow style"
+            ><i class="firstterm"
+            >flow</i></a
+          >. Block styles use <a id="id2509384" class="indexterm"></a><a href="#indentation space/">indentation</a> to denote nesting
+            and scope within the <a id="id2509398" class="indexterm"></a><a href="#document/information model">document</a>. In contrast, flow
+            styles rely on explicit <a id="id2509415" class="indexterm"></a><a href="#indicator/">indicators</a> to denote nesting and
+            scope.
+          </p>
+              <p>
+            YAML provides a rich set of <a id="id2509432" class="indexterm"></a><a href="#scalar/information model">scalar styles</a>. <a id="id2509448" class="indexterm"></a><a id="block scalar style/information model"></a
+            ><a href="#index-entry-block scalar style"
+            ><i class="firstterm"
+            >Block
+            scalar styles</i></a
+          > include the <a id="id2509466" class="indexterm"></a><a id="literal style/information model"></a
+            ><a href="#index-entry-literal style"
+            ><i class="firstterm"
+            >literal style</i></a
+          > and
+            the <a id="id2509486" class="indexterm"></a><a id="folded style/information model"></a
+            ><a href="#index-entry-folded style"
+            ><i class="firstterm"
+            >folded style</i></a
+          >; <a id="id2509504" class="indexterm"></a><a id="flow scalar style/information model"></a
+            ><a href="#index-entry-flow scalar style"
+            ><i class="firstterm"
+            >flow scalar styles</i></a
+          > include
+            the <a id="id2509522" class="indexterm"></a><a id="plain style/information model"></a
+            ><a href="#index-entry-plain style"
+            ><i class="firstterm"
+            >plain style</i></a
+          > and two <a id="id2509541" class="indexterm"></a><a id="quoted style/information model"></a
+            ><a href="#index-entry-quoted style"
+            ><i class="firstterm"
+            >quoted styles</i></a
+          >, the
+            <a id="id2509559" class="indexterm"></a><a id="single quoted style/information model"></a
+            ><a href="#index-entry-single quoted style"
+            ><i class="firstterm"
+            >single quoted style</i></a
+          > and the <a id="id2509577" class="indexterm"></a><a id="double quoted style/information model"></a
+            ><a href="#index-entry-double quoted style"
+            ><i class="firstterm"
+            >double
+            quoted style</i></a
+          >. These styles offer a range of trade-offs
+            between expressive power and readability.
+          </p>
+              <p>
+            Normally, the <a id="id2509601" class="indexterm"></a><a href="#content/information model">content</a> of <a id="id2509618" class="indexterm"></a><a id="block collection style/information model"></a
+            ><a href="#index-entry-block collection style"
+            ><i class="firstterm"
+            >block collections</i></a
+          >
+            begins on the next line. In most cases, YAML also allows block
+            collections to start <a id="id2509638" class="indexterm"></a><a id="in-line style/information model"></a
+            ><a href="#index-entry-in-line style"
+            ><i class="firstterm"
+            >in-line</i></a
+          > for more compact
+            notation when nesting <a id="id2509657" class="indexterm"></a><a id="block sequence style/information model"></a
+            ><a href="#index-entry-block sequence style"
+            ><i class="firstterm"
+            >block sequences</i></a
+          > and
+            <a id="id2509675" class="indexterm"></a><a id="block mapping style/information model"></a
+            ><a href="#index-entry-block mapping style"
+            ><i class="firstterm"
+            >block mappings</i></a
+          > inside each other. When nesting
+            <a id="id2509694" class="indexterm"></a><a id="flow collection style/information model"></a
+            ><a href="#index-entry-flow collection style"
+            ><i class="firstterm"
+            >flow collections</i></a
+          >, a <a id="id2509713" class="indexterm"></a><a id="flow mapping style/information model"></a
+            ><a href="#index-entry-flow mapping style"
+            ><i class="firstterm"
+            >flow mapping</i></a
+          > with a
+            <a id="id2509733" class="indexterm"></a><a id="single pair style/information model"></a
+            ><a href="#index-entry-single pair style"
+            ><i class="firstterm"
+            >single key: value pair</i></a
+          > may be specified
+            directly inside a <a id="id2509752" class="indexterm"></a><a id="flow sequence style/information model"></a
+            ><a href="#index-entry-flow sequence style"
+            ><i class="firstterm"
+            >flow sequence</i></a
+          >, allowing for
+            a compact &#8220;<span class="quote">ordered mapping</span>&#8221; notation.
+          </p>
+              <div class="figure">
+                <a id="id2509776"></a>
+                <p class="title">
+                  <b>Figure 3.6. Kind/Style Combinations</b>
+                </p>
+                <div class="mediaobject">
+                  <img src="styles2.png" alt="Kind/Style Combinations" />
+                </div>
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2509799"></a>3.2.3.2. Scalar Formats</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+            YAML allows <a id="id2509807" class="indexterm"></a><a href="#scalar/information model">scalar content</a> to be <a id="id2509823" class="indexterm"></a><a href="#present/">presented</a> in several <a id="id2509836" class="indexterm"></a><a id="format/"></a
+            ><a href="#index-entry-format"
+            ><i class="firstterm"
+            >formats</i></a
+          >. For example, the boolean
+            &#8220;<span class="quote"><b class="userinput"><tt>true</tt></b></span>&#8221; might also be written as
+            &#8220;<span class="quote"><b class="userinput"><tt>yes</tt></b></span>&#8221;. <a id="id2509864" class="indexterm"></a><a href="#tag/information model">Tags</a> must specify a mechanism for converting any
+            formatted <a id="id2509882" class="indexterm"></a><a href="#scalar/information model">scalar content</a> to a <a id="id2509898" class="indexterm"></a><a href="#canonical form/">canonical form</a> for use in <a id="id2509911" class="indexterm"></a><a href="#equality/">equality</a> testing. Like <a id="id2509924" class="indexterm"></a><a href="#style/">node style</a>, the format is a <a id="id2509936" class="indexterm"></a><a href="#presentation detail/">presentation detail</a> and is
+            not reflected in the <a id="id2509951" class="indexterm"></a><a href="#serialization/">serialization
+            tree</a> and <a id="id2509965" class="indexterm"></a><a href="#representation/">representation
+            graph</a>.
+          </p>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2509980"></a>3.2.3.3. Comments</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+            <a id="id2509988" class="indexterm"></a><a id="comment/information model"></a
+            ><a href="#index-entry-comment"
+            ><i class="firstterm"
+            >Comments</i></a
+          > are a <a id="id2510005" class="indexterm"></a><a href="#presentation detail/">presentation detail</a> and must not have any effect
+            on the <a id="id2510020" class="indexterm"></a><a href="#serialization/">serialization
+            tree</a> or <a id="id2510034" class="indexterm"></a><a href="#representation/">representation
+            graph</a>. In particular, comments are not associated with
+            a particular <a id="id2510048" class="indexterm"></a><a href="#node/information model">node</a>. The usual purpose of a comment is to
+            communicate between the human maintainers of a file. A typical
+            example is comments in a configuration file. Comments may not
+            appear inside <a id="id2510068" class="indexterm"></a><a href="#scalar/information model">scalars</a>, but may be interleaved with such <a id="id2510084" class="indexterm"></a><a href="#scalar/information model">scalars</a>
+            inside <a id="id2510099" class="indexterm"></a><a href="#collection/information model">collections</a>.
+          </p>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2510119"></a>3.2.3.4. Directives</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+            Each <a id="id2510127" class="indexterm"></a><a href="#document/information model">document</a> may be associated with a set of <a id="id2510143" class="indexterm"></a><a id="directive/information model"></a
+            ><a href="#index-entry-directive"
+            ><i class="firstterm"
+            >directives</i></a
+          >. A directive has a name and an optional
+            sequence of parameters. Directives are instructions to the YAML
+            <a id="id2510164" class="indexterm"></a><a href="#processor/">processor</a>, and like all
+            other <a id="id2510176" class="indexterm"></a><a href="#presentation detail/">presentation
+            details</a> are not reflected in the YAML <a id="id2510190" class="indexterm"></a><a href="#serialization/">serialization tree</a> or <a id="id2510204" class="indexterm"></a><a href="#representation/">representation graph</a>. This
+            version of YAML defines a two directives, <a id="id2510218" class="indexterm"></a><a href="#YAML directive/">&#8220;<span class="quote"><b class="userinput"><tt>YAML</tt></b></span>&#8221;</a> and <a id="id2510236" class="indexterm"></a><a href="#TAG directive/">&#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221;</a>. All other
+            directives are <a id="id2510254" class="indexterm"></a><a href="#reserved directive/">reserved</a> for future versions of YAML.
+          </p>
+            </div>
+          </div>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2510274"></a>3.3. Loading Failure Points</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+        The process of <a id="id2510282" class="indexterm"></a><a href="#load/">loading</a> native data
+        structures from a YAML <a id="id2510296" class="indexterm"></a><a href="#stream/information model">stream</a> has several potential <a id="id2510313" class="indexterm"></a><a id="load failure point/"></a
+            ><a href="#index-entry-load failure point"
+            ><i class="firstterm"
+            >failure points</i></a
+          >. The character <a id="id2510328" class="indexterm"></a><a href="#stream/information model">stream</a> may be
+        <a id="id2510344" class="indexterm"></a><a href="#ill-formed stream/">ill-formed</a>, <a id="id2510357" class="indexterm"></a><a href="#alias/information model">aliases</a> may be
+        <a id="id2510373" class="indexterm"></a><a href="#unidentified alias/">unidentified</a>,
+        <a id="id2510387" class="indexterm"></a><a href="#non-specific tag/">unspecified tags</a> may be
+        <a id="id2510400" class="indexterm"></a><a href="#unresolved tag/">unresolvable</a>, <a id="id2510414" class="indexterm"></a><a href="#tag/information model">tags</a> may be
+        <a id="id2510430" class="indexterm"></a><a href="#unrecognized tag/">unrecognized</a>, the
+        <a id="id2510445" class="indexterm"></a><a href="#content/information model">content</a> may be <a id="id2510461" class="indexterm"></a><a href="#invalid content/">invalid</a>, and a native type may be <a id="id2510476" class="indexterm"></a><a href="#unavailable tag/">unavailable</a>. Each of these failures
+        results with an incomplete loading.
+      </p>
+          <p>
+        A <a id="id2510493" class="indexterm"></a><a id="partial representation/"></a
+            ><a href="#index-entry-partial representation"
+            ><i class="firstterm"
+            >partial
+        representation</i></a
+          > need not <a id="id2510510" class="indexterm"></a><a href="#tag resolution/">resolve</a> the <a id="id2510522" class="indexterm"></a><a href="#tag/information model">tag</a> of each <a id="id2510538" class="indexterm"></a><a href="#node/information model">node</a>, and the
+        <a id="id2510554" class="indexterm"></a><a href="#canonical form/">canonical form</a> of <a id="id2510567" class="indexterm"></a><a href="#scalar/information model">scalar content</a>
+        need not be available. This weaker representation is useful for cases
+        of incomplete knowledge of the types used in the <a id="id2510585" class="indexterm"></a><a href="#document/information model">document</a>. In
+        contrast, a <a id="id2510600" class="indexterm"></a><a id="complete representation/"></a
+            ><a href="#index-entry-complete representation"
+            ><i class="firstterm"
+            >complete
+        representation</i></a
+          > specifies the <a id="id2510616" class="indexterm"></a><a href="#tag/information model">tag</a> of each <a id="id2510631" class="indexterm"></a><a href="#node/information model">node</a>, and
+        provides the <a id="id2510647" class="indexterm"></a><a href="#canonical form/">canonical form</a>
+        of <a id="id2510660" class="indexterm"></a><a href="#scalar/information model">scalar
+        content</a>, allowing for <a id="id2510676" class="indexterm"></a><a href="#equality/">equality</a> testing. A complete
+        representation is required in order to <a id="id2510690" class="indexterm"></a><a href="#construct/">construct</a> native data structures.
+      </p>
+          <div class="figure">
+            <a id="id2510704"></a>
+            <p class="title">
+              <b>Figure 3.7. Loading Failure Points</b>
+            </p>
+            <div class="mediaobject">
+              <img src="validity2.png" alt="Loading Failure Points" />
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2510726"></a>3.3.1. Well-Formed and Identified</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          A <a id="id2510734" class="indexterm"></a><a id="well-formed stream/"></a
+            ><a href="#index-entry-well-formed stream"
+            ><i class="firstterm"
+            >well-formed</i></a
+          >
+          character <a id="id2510750" class="indexterm"></a><a href="#stream/information model">stream</a> must match the productions specified in the
+          next chapter. Successful loading also requires that each <a id="id2510768" class="indexterm"></a><a href="#alias/information model">alias</a> shall
+          refer to a previous <a id="id2510784" class="indexterm"></a><a href="#node/information model">node</a> <a id="id2510800" class="indexterm"></a><a href="#identified/">identified</a> by the <a id="id2510812" class="indexterm"></a><a href="#anchor/information model">anchor</a>. A
+          YAML <a id="id2510828" class="indexterm"></a><a href="#processor/">processor</a> should reject
+          <a id="id2510840" class="indexterm"></a><a id="ill-formed stream/"></a
+            ><a href="#index-entry-ill-formed stream"
+            ><i class="firstterm"
+            >ill-formed streams</i></a
+          > and
+          <a id="id2510855" class="indexterm"></a><a id="unidentified alias/"></a
+            ><a href="#index-entry-unidentified alias"
+            ><i class="firstterm"
+            >unidentified aliases</i></a
+          >.
+          A YAML <a id="id2510870" class="indexterm"></a><a href="#processor/">processor</a> may recover
+          from syntax errors, possibly by ignoring certain parts of the input,
+          but it must provide a mechanism for reporting such errors.
+        </p>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2510888"></a>3.3.2. Resolved</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          It is not required that all the <a id="id2510896" class="indexterm"></a><a href="#tag/information model">tags</a> of the <a id="id2510912" class="indexterm"></a><a href="#complete representation/">complete representation</a>
+          be explicitly specified in the character <a id="id2510927" class="indexterm"></a><a href="#stream/information model">stream</a>. During <a id="id2510944" class="indexterm"></a><a href="#parse/">parsing</a>, <a id="id2510956" class="indexterm"></a><a href="#node/information model">nodes</a> that omit the <a id="id2510972" class="indexterm"></a><a href="#tag/information model">tag</a> are given a
+          <a id="id2510987" class="indexterm"></a><a id="non-specific tag/"></a
+            ><a href="#index-entry-non-specific tag"
+            ><i class="firstterm"
+            >non-specific tag</i></a
+          >:
+          <a id="id2511002" class="indexterm"></a><a id="? non-specific tag/"></a
+            ><a href="#index-entry-? non-specific tag"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>?</tt></b></span>&#8221;</i></a
+          >
+          for <a id="id2511020" class="indexterm"></a><a href="#plain style/information model">plain scalars</a> and <a id="id2511037" class="indexterm"></a><a id="! non-specific tag/"></a
+            ><a href="#index-entry-! non-specific tag"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</i></a
+          > for all other <a id="id2511056" class="indexterm"></a><a href="#node/information model">nodes</a>. These
+          non-specific tags must be <a id="id2511072" class="indexterm"></a><a id="tag resolution/"></a
+            ><a href="#index-entry-tag resolution"
+            ><i class="firstterm"
+            >resolved</i></a
+          > to a <a id="id2511087" class="indexterm"></a><a id="specific tag/"></a
+            ><a href="#index-entry-specific tag"
+            ><i class="firstterm"
+            >specific tag</i></a
+          > (either a <a id="id2511102" class="indexterm"></a><a href="#local tag/">local tag</a> or a <a id="id2511115" class="indexterm"></a><a href="#global tag/">global
+          tag</a>) for a <a id="id2511127" class="indexterm"></a><a href="#complete representation/">complete representation</a> to be <a id="id2511142" class="indexterm"></a><a href="#compose/">composed</a>.
+        </p>
+            <p>
+          Resolving the <a id="id2511158" class="indexterm"></a><a href="#tag/information model">tag</a> of a <a id="id2511174" class="indexterm"></a><a href="#node/information model">node</a> must only depend on the
+          following three parameters: the non-specific tag of the <a id="id2511191" class="indexterm"></a><a href="#node/information model">node</a>, the path
+          leading from the <a id="id2511207" class="indexterm"></a><a href="#root node/">root node</a> to
+          the <a id="id2511221" class="indexterm"></a><a href="#node/information model">node</a>, and the <a id="id2511237" class="indexterm"></a><a href="#content/information model">content</a> (and hence the
+          <a id="id2511252" class="indexterm"></a><a href="#kind/">kind</a>) of the <a id="id2511265" class="indexterm"></a><a href="#node/information model">node</a>. In
+          particular, resolution must not consider <a id="id2511282" class="indexterm"></a><a href="#presentation detail/">presentation details</a> such as
+          <a id="id2511295" class="indexterm"></a><a href="#comment/information model">comments</a>, <a id="id2511312" class="indexterm"></a><a href="#indentation space/">indentation</a> and <a id="id2511324" class="indexterm"></a><a href="#style/">node
+          style</a>. Also, resolution must not consider the <a id="id2511338" class="indexterm"></a><a href="#content/information model">content</a> of
+          any other <a id="id2511354" class="indexterm"></a><a href="#node/information model">node</a>, except for the <a id="id2511370" class="indexterm"></a><a href="#content/information model">content</a> of the <a id="id2511386" class="indexterm"></a><a href="#key/information model">key nodes</a>
+          directly along the path leading from the <a id="id2511402" class="indexterm"></a><a href="#root node/">root node</a> to the resolved <a id="id2511415" class="indexterm"></a><a href="#node/information model">node</a>. In particular,
+          resolution must not consider the <a id="id2511432" class="indexterm"></a><a href="#content/information model">content</a> of a sibling <a id="id2511448" class="indexterm"></a><a href="#node/information model">node</a> in a
+          <a id="id2511463" class="indexterm"></a><a href="#collection/information model">collection</a> or the <a id="id2511480" class="indexterm"></a><a href="#content/information model">content</a> of the <a id="id2511496" class="indexterm"></a><a href="#value/information model">value node</a>
+          associated with a resolved <a id="id2511512" class="indexterm"></a><a href="#key/information model">key node</a>.
+        </p>
+            <p>
+          Tag resolution is specific to the <a id="id2511532" class="indexterm"></a><a href="#application/">application</a>, hence a YAML <a id="id2511545" class="indexterm"></a><a href="#processor/">processor</a> should provide a mechanism
+          allowing the <a id="id2511558" class="indexterm"></a><a href="#application/">application</a> to
+          specify the tag resolution rules. It is recommended that <a id="id2511573" class="indexterm"></a><a href="#node/information model">nodes</a> having
+          the &#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221; non-specific tag should be resolved as
+          &#8220;<span class="quote"><b class="userinput"><tt>tag:yaml.org,2002:seq</tt></b></span>&#8221;,
+          &#8220;<span class="quote"><b class="userinput"><tt>tag:yaml.org,2002:map</tt></b></span>&#8221; or
+          &#8220;<span class="quote"><b class="userinput"><tt>tag:yaml.org,2002:str</tt></b></span>&#8221; depending on the <a id="id2511617" class="indexterm"></a><a href="#node/information model">node's kind</a>.
+          This convention allows the author of a YAML character <a id="id2511634" class="indexterm"></a><a href="#stream/information model">stream</a> to
+          exert some measure of control over the tag resolution process. By
+          explicitly specifying a <a id="id2511652" class="indexterm"></a><a href="#plain style/information model">plain scalar</a> has the
+          &#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221; non-specific tag, the <a id="id2511675" class="indexterm"></a><a href="#node/information model">node</a> is resolved as a string,
+          as if it was <a id="id2511692" class="indexterm"></a><a href="#quoted style/information model">quoted</a> or written in a <a id="id2511708" class="indexterm"></a><a href="#block style/information model">block style</a>. Note,
+          however, that each <a id="id2511725" class="indexterm"></a><a href="#application/">application</a> may override this
+          behavior. For example, an <a id="id2511739" class="indexterm"></a><a href="#application/">application</a> may automatically detect
+          the type of programming language used in source code <a id="id2511753" class="indexterm"></a><a href="#present/">presented</a> as a non-<a id="id2511766" class="indexterm"></a><a href="#plain style/information model">plain</a>
+          <a id="id2511781" class="indexterm"></a><a href="#scalar/information model">scalar</a> and resolve it accordingly.
+        </p>
+            <p>
+          When a <a id="id2511802" class="indexterm"></a><a href="#node/information model">node</a> has more than one occurence (using an <a id="id2511819" class="indexterm"></a><a href="#anchor/information model">anchor</a> and
+          <a id="id2511834" class="indexterm"></a><a href="#alias/information model">alias
+          nodes</a>), tag resolution must depend only on the path to the
+          first occurence of the <a id="id2511851" class="indexterm"></a><a href="#node/information model">node</a>. Typically, the path leading to a <a id="id2511868" class="indexterm"></a><a href="#node/information model">node</a> is
+          sufficient to determine its specific tag. In cases where the path
+          does not imply a single specific tag, the resolution also needs to
+          consider the <a id="id2511886" class="indexterm"></a><a href="#content/information model">node content</a> to select amongst the set of possible
+          <a id="id2511903" class="indexterm"></a><a href="#tag/information model">tags</a>.
+          Thus, <a id="id2511918" class="indexterm"></a><a href="#plain style/information model">plain scalars</a> may be matched against a set of
+          regular expressions to provide automatic resolution of integers,
+          floats, timestamps and similar types. Similarly, the <a id="id2511938" class="indexterm"></a><a href="#content/information model">content</a> of
+          <a id="id2511954" class="indexterm"></a><a href="#mapping/information model">mapping
+          nodes</a> may be matched against sets of expected <a id="id2511970" class="indexterm"></a><a href="#key/information model">keys</a> to
+          automatically resolve points, complex numbers and similar types.
+        </p>
+            <p>
+          The combined effect of these rules is to ensure that tag resolution
+          can be performed as soon as a <a id="id2511992" class="indexterm"></a><a href="#node/information model">node</a> is first encountered in
+          the <a id="id2512009" class="indexterm"></a><a href="#stream/information model">stream</a>, typically before its <a id="id2512025" class="indexterm"></a><a href="#content/information model">content</a> is
+          <a id="id2512041" class="indexterm"></a><a href="#parse/">parsed</a>. Also, tag resolution only
+          requires refering to a relatively small number of previously parsed
+          <a id="id2512055" class="indexterm"></a><a href="#node/information model">nodes</a>. Thus, tag resolution in one-pass <a id="id2512071" class="indexterm"></a><a href="#processor/">processors</a> is both possible and
+          practical.
+        </p>
+            <p>
+          If a <a id="id2512088" class="indexterm"></a><a href="#document/information model">document</a> contains <a id="id2512104" class="indexterm"></a><a id="unresolved tag/"></a
+            ><a href="#index-entry-unresolved tag"
+            ><i class="firstterm"
+            >unresolved tags</i></a
+          >, the YAML <a id="id2512118" class="indexterm"></a><a href="#processor/">processor</a> is unable to <a id="id2512131" class="indexterm"></a><a href="#compose/">compose</a> a <a id="id2512143" class="indexterm"></a><a href="#complete representation/">complete representation</a> graph. In such a
+          case, the YAML <a id="id2512158" class="indexterm"></a><a href="#processor/">processor</a> may
+          <a id="id2512171" class="indexterm"></a><a href="#compose/">compose</a> an <a id="id2512183" class="indexterm"></a><a href="#partial representation/">partial representation</a>,
+          based on each <a id="id2512199" class="indexterm"></a><a href="#kind/">node's kind</a> and
+          allowing for non-specific tags.
+        </p>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2512215"></a>3.3.3. Recognized and Valid</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          To be <a id="id2512223" class="indexterm"></a><a id="valid content/"></a
+            ><a href="#index-entry-valid content"
+            ><i class="firstterm"
+            >valid</i></a
+          >, a <a id="id2512238" class="indexterm"></a><a href="#node/information model">node</a> must have
+          a <a id="id2512253" class="indexterm"></a><a href="#tag/information model">tag</a>
+          which is <a id="id2512269" class="indexterm"></a><a id="recognized tag/"></a
+            ><a href="#index-entry-recognized tag"
+            ><i class="firstterm"
+            >recognized</i></a
+          > by
+          the YAML <a id="id2512284" class="indexterm"></a><a href="#processor/">processor</a> and its
+          <a id="id2512296" class="indexterm"></a><a href="#content/information model">content</a> must satisfy the constraints imposed by this
+          <a id="id2512314" class="indexterm"></a><a href="#tag/information model">tag</a>.
+          If a <a id="id2512329" class="indexterm"></a><a href="#document/information model">document</a> contains a <a id="id2512345" class="indexterm"></a><a href="#scalar/information model">scalar node</a> with an <a id="id2512361" class="indexterm"></a><a id="unrecognized tag/"></a
+            ><a href="#index-entry-unrecognized tag"
+            ><i class="firstterm"
+            >unrecognized tag</i></a
+          > or <a id="id2512375" class="indexterm"></a><a id="invalid content/"></a
+            ><a href="#index-entry-invalid content"
+            ><i class="firstterm"
+            >invalid content</i></a
+          >, only a <a id="id2512390" class="indexterm"></a><a href="#partial representation/">partial representation</a> may
+          be <a id="id2512404" class="indexterm"></a><a href="#compose/">composed</a>. In contrast, a YAML
+          <a id="id2512417" class="indexterm"></a><a href="#processor/">processor</a> can always <a id="id2512430" class="indexterm"></a><a href="#compose/">compose</a> a <a id="id2512442" class="indexterm"></a><a href="#complete representation/">complete representation</a> for an unrecognized
+          or an invalid <a id="id2512457" class="indexterm"></a><a href="#collection/information model">collection</a>, since <a id="id2512474" class="indexterm"></a><a href="#collection/information model">collection</a> <a id="id2512489" class="indexterm"></a><a href="#equality/">equality</a> does not depend upon knowledge
+          of the <a id="id2512503" class="indexterm"></a><a href="#collection/information model">collection's</a> data type. However, such a <a id="id2512519" class="indexterm"></a><a href="#complete representation/">complete representation</a>
+          can not be used to <a id="id2512533" class="indexterm"></a><a href="#construct/">construct</a> a
+          native data structure.
+        </p>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2512548"></a>3.3.4. Available</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          In a given processing environment, there need not be an <a id="id2512557" class="indexterm"></a><a id="available tag/"></a
+            ><a href="#index-entry-available tag"
+            ><i class="firstterm"
+            >available</i></a
+          > native type corresponding
+          to a given <a id="id2512573" class="indexterm"></a><a href="#tag/information model">tag</a>. If a <a id="id2512589" class="indexterm"></a><a href="#tag/information model">node's tag</a> is <a id="id2512604" class="indexterm"></a><a id="unavailable tag/"></a
+            ><a href="#index-entry-unavailable tag"
+            ><i class="firstterm"
+            >unavailable</i></a
+          >, a YAML <a id="id2512618" class="indexterm"></a><a href="#processor/">processor</a> will not be able to <a id="id2512631" class="indexterm"></a><a href="#construct/">construct</a> a native data structure for
+          it. In this case, a <a id="id2512644" class="indexterm"></a><a href="#complete representation/">complete representation</a> may still be
+          <a id="id2512659" class="indexterm"></a><a href="#compose/">composed</a>, and an <a id="id2512671" class="indexterm"></a><a href="#application/">application</a> may wish to use this
+          <a id="id2512685" class="indexterm"></a><a href="#representation/">representation</a> directly.
+        </p>
+          </div>
+        </div>
+      </div>
+      <div class="chapter" lang="en" xml:lang="en">
+        <div class="titlepage">
+          <div>
+            <div>
+              <h2 class="title"><a id="id2512702"></a>Chapter 4. Syntax</h2>
+            </div>
+          </div>
+          <div></div>
+        </div>
+        <p>
+      Following are the BNF productions defining the syntax of YAML character
+      <a id="id2512712" class="indexterm"></a><a href="#stream/syntax">streams</a>. To make
+      this chapter easier to follow, production names use Hungarian-style
+      notation:
+    </p>
+        <div class="variablelist">
+          <dl>
+            <dt>
+              <span class="term">
+                <b class="userinput">
+                  <tt>e-</tt>
+                </b>
+              </span>
+            </dt>
+            <dd>
+              <p>
+            A production matching no characters.
+          </p>
+            </dd>
+            <dt>
+              <span class="term">
+                <b class="userinput">
+                  <tt>c-</tt>
+                </b>
+              </span>
+            </dt>
+            <dd>
+              <p>
+            A production matching one or more characters starting and ending
+            with a special (non-space) character.
+          </p>
+            </dd>
+            <dt>
+              <span class="term">
+                <b class="userinput">
+                  <tt>b-</tt>
+                </b>
+              </span>
+            </dt>
+            <dd>
+              <p>
+            A production matching a single <a id="id2512783" class="indexterm"></a><a href="#line break character/">line break</a>.
+          </p>
+            </dd>
+            <dt>
+              <span class="term">
+                <b class="userinput">
+                  <tt>nb-</tt>
+                </b>
+              </span>
+            </dt>
+            <dd>
+              <p>
+            A production matching one or more characters starting and ending
+            with a non-<a id="id2512815" class="indexterm"></a><a href="#line break character/">break</a>
+            character.
+          </p>
+            </dd>
+            <dt>
+              <span class="term">
+                <b class="userinput">
+                  <tt>s-</tt>
+                </b>
+              </span>
+            </dt>
+            <dd>
+              <p>
+            A production matching one or more characters starting and ending
+            with a space character.
+          </p>
+            </dd>
+            <dt>
+              <span class="term">
+                <b class="userinput">
+                  <tt>ns-</tt>
+                </b>
+              </span>
+            </dt>
+            <dd>
+              <p>
+            A production matching one or more characters starting and ending
+            with a non-space character.
+          </p>
+            </dd>
+            <dt>
+              <span class="term">
+          <tt class="varname">X</tt><b class="userinput"><tt>-</tt></b><tt class="varname">Y</tt><b class="userinput"><tt>-</tt></b>
+        </span>
+            </dt>
+            <dd>
+              <p>
+            A production matching a sequence of one or more characters,
+            starting with an <tt class="varname">X</tt><b class="userinput"><tt>-</tt></b>
+            character and ending with a
+            <tt class="varname">Y</tt><b class="userinput"><tt>-</tt></b> character.
+          </p>
+            </dd>
+            <dt>
+              <span class="term">
+                <b class="userinput">
+                  <tt>l-</tt>
+                </b>
+              </span>
+            </dt>
+            <dd>
+              <p>
+            A production matching one or more lines (shorthand for
+            <b class="userinput"><tt>s-b-</tt></b>).
+          </p>
+            </dd>
+            <dt>
+              <span class="term">
+          <tt class="varname">X</tt><b class="userinput"><tt>+</tt></b>,
+          <tt class="varname">X</tt><b class="userinput"><tt>-</tt></b><tt class="varname">Y</tt><b class="userinput"><tt>+</tt></b>
+        </span>
+            </dt>
+            <dd>
+              <p>
+            A production as above, with the additional property that the
+            <a id="id2512971" class="indexterm"></a><a href="#indentation space/">indentation</a> level
+            used is greater than the specified <tt class="varname">n</tt> parameter.
+          </p>
+            </dd>
+          </dl>
+        </div>
+        <p>
+      Productions are generally introduced in a &#8220;<span class="quote">bottom-up</span>&#8221; order;
+      basic productions are specified before the more complex productions using
+      them. Examples accompanying the productions list display sample YAML text
+      side-by-side with equivalent YAML text using only <a id="id2513004" class="indexterm"></a><a href="#flow collection style/syntax">flow collections</a> and
+      <a id="id2513022" class="indexterm"></a><a href="#double quoted style/syntax">double quoted
+      scalars</a>. For improved readability, the equivalent YAML text
+      uses the &#8220;<span class="quote"><b class="userinput"><tt>!!seq</tt></b></span>&#8221;, &#8220;<span class="quote"><b class="userinput"><tt>!!map</tt></b></span>&#8221; and
+      &#8220;<span class="quote"><b class="userinput"><tt>!!str</tt></b></span>&#8221; <a id="id2513060" class="indexterm"></a><a href="#tag shorthand/">shorthands</a> instead of the <a id="id2513074" class="indexterm"></a><a href="#verbatim tag/">verbatim</a> &#8220;<span class="quote"><b class="userinput"><tt>!&lt;tag:yaml.org,2002:seq&gt;</tt></b></span>&#8221;,
+      &#8220;<span class="quote"><b class="userinput"><tt>!&lt;tag:yaml.org,2002:map&gt;</tt></b></span>&#8221; and
+      &#8220;<span class="quote"><b class="userinput"><tt>!&lt;tag:yaml.org,2002:str&gt;</tt></b></span>&#8221; forms. These types are
+      used to <a id="id2513112" class="indexterm"></a><a href="#tag resolution/">resolve</a> all <a id="id2513125" class="indexterm"></a><a href="#non-specific tag/">untagged nodes</a>, except for a few
+      examples that use the &#8220;<span class="quote"><b class="userinput"><tt>!!int</tt></b></span>&#8221; and &#8220;<span class="quote"><b class="userinput"><tt>!!float</tt></b></span>&#8221;
+      types.
+    </p>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2513154"></a>4.1. Characters</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2513160"></a>4.1.1. Character Set</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            YAML <a id="id2513168" class="indexterm"></a><a href="#stream/syntax">streams</a>
+            use the <a id="id2513184" class="indexterm"></a><a id="printable character/"></a
+            ><a href="#index-entry-printable character"
+            ><i class="firstterm"
+            >printable</i></a
+          >
+            subset of the Unicode character set. On input, a YAML <a id="id2513200" class="indexterm"></a><a href="#processor/">processor</a> must accept all printable
+            ASCII characters, the space, <a id="id2513214" class="indexterm"></a><a href="#tab/">tab</a>,
+            <a id="id2513226" class="indexterm"></a><a href="#line break character/">line break</a>, and
+            all Unicode characters beyond #x9F. On output, a YAML <a id="id2513241" class="indexterm"></a><a href="#processor/">processor</a> must only produce these
+            acceptable characters, and should also <a id="id2513254" class="indexterm"></a><a href="#escaping in double quoted style/">escape</a> all non-printable Unicode
+            characters. The allowed character range explicitly excludes the
+            surrogate block <b class="userinput"><tt>#xD800-#xDFFF</tt></b>, DEL
+            <b class="userinput"><tt>#x7F</tt></b>, the C0 control block
+            <b class="userinput"><tt>#x0-#x1F</tt></b>, the C1 control block
+            <b class="userinput"><tt>#x80-#x9F</tt></b>, <b class="userinput"><tt>#xFFFE</tt></b> and
+            <b class="userinput"><tt>#xFFFF</tt></b>. Any such characters must be <a id="id2513307" class="indexterm"></a><a href="#present/">presented</a> using <a id="id2513320" class="indexterm"></a><a href="#escaping in double quoted style/">escape</a>
+            sequences.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[1]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-printable"></a>c-printable</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  #x9 | #xA | #xD | [#x20-#x7E]   
+                      /* 8 bit */<br />
+                | #x85 | [#xA0-#xD7FF] | [#xE000-#xFFFD] /* 16 bit */<br />
+                | [#x10000-#x10FFFF]      
+                         
+                    /* 32 bit */
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2513364"></a>4.1.2. Character Encoding</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            All characters mentioned in this specification are Unicode code
+            points. Each such code point is written as one or more octets
+            depending on the <a id="id2513376" class="indexterm"></a><a id="character encoding/"></a
+            ><a href="#index-entry-character encoding"
+            ><i class="firstterm"
+            >character
+            encoding</i></a
+          > used. Note that in UTF-16, characters above
+            <b class="userinput"><tt>#xFFFF</tt></b> are written as four octets, using a
+            surrogate pair. A YAML <a id="id2513398" class="indexterm"></a><a href="#processor/">processor</a> must support the UTF-16 and
+            UTF-8 character encodings. If a character <a id="id2513412" class="indexterm"></a><a href="#stream/syntax">stream</a> does not begin with a <a id="id2513428" class="indexterm"></a><a id="byte order mark/"></a
+            ><a href="#index-entry-byte order mark"
+            ><i class="firstterm"
+            >byte order mark</i></a
+          >
+            (<b class="userinput"><tt>#FEFF</tt></b>), the character encoding shall be
+            UTF-8. Otherwise it shall be either UTF-8, UTF-16 LE or UTF-16 BE
+            as indicated by the byte order mark. On output, it is recommended
+            that a byte order mark should only be emitted for UTF-16 character
+            encodings. Note that the UTF-32 encoding is explicitly not
+            supported. For more information about the byte order mark and the
+            Unicode character encoding schemes see the Unicode <a href="http://www.unicode.org/unicode/faq/utf_bom.html" target="_top">FAQ</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[2]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-byte-order-mark"></a>c-byte-order-mark</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                #xFEFF
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            In the examples, byte order mark characters are displayed as
+            &#8220;<span class="quote"><b class="userinput"><tt>&#8660;</tt></b></span>&#8221;.
+          </p>
+            <div class="example">
+              <a id="id2438013"></a>
+              <p class="title">
+                <b>Example 4.1. Byte Order Mark</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><tt class="filename">&#8660;</tt># Comment only.<br /></span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-byte-order-mark">c-byte-order-mark</a></tt>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database"># This stream contains no<br /># documents, only comments.
+</span></pre>
+              </td>
+                </tr>
+              </table>
+            </div>
+            <div class="example">
+              <a id="id2438080"></a>
+              <p class="title">
+                <b>Example 4.2. Invalid Byte Order Mark</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="screen"><span class="database"># Invalid use of BOM<br /><tt class="filename">&#8660;</tt># inside a
+# document.
+</span></pre>
+              </td>
+                  <td>
+<pre class="screen"><span class="database">ERROR:<br /> A <tt class="filename">BOM</tt> must not appear
+ inside a document.
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2513753"></a>4.1.3. Indicator Characters</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          <a id="id2513761" class="indexterm"></a><a id="indicator/"></a
+            ><a href="#index-entry-indicator"
+            ><i class="firstterm"
+            >Indicators</i></a
+          > are characters that
+          have special semantics used to describe the structure and <a id="id2513776" class="indexterm"></a><a href="#content/syntax">content</a> of a YAML
+          <a id="id2513793" class="indexterm"></a><a href="#document/syntax">document</a>.
+        </p>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2513817" class="indexterm"></a><a href="#- block sequence entry/">&#8220;<span class="quote"><b class="userinput"><tt>-</tt></b></span>&#8221;</a> denotes a <a id="id2513835" class="indexterm"></a><a href="#block sequence style/syntax">blocks
+                equence</a> entry.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[3]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-sequence-entry"></a>c-sequence-entry</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">-</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2513881" class="indexterm"></a><a href="#? mapping key/">&#8220;<span class="quote"><b class="userinput"><tt>?</tt></b></span>&#8221;</a> denotes a <a id="id2513899" class="indexterm"></a><a href="#key/syntax">mapping key</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[4]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-mapping-key"></a>c-mapping-key</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">?</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2513943" class="indexterm"></a><a href="#: mapping value/">&#8220;<span class="quote"><b class="userinput"><tt>:</tt></b></span>&#8221;</a> denotes a <a id="id2513961" class="indexterm"></a><a href="#value/syntax">mapping value</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[5]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-mapping-value"></a>c-mapping-value</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">:</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2513999"></a>
+              <p class="title">
+                <b>Example 4.3. Block Structure Indicators</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">sequence<span class="property">:</span><br /><tt class="filename">-</tt> one
+<tt class="filename">-</tt> two
+mapping<span class="property">:</span>
+  <tt class="literal">?</tt> sky
+  <span class="property">:</span> blue
+  <tt class="literal">?</tt> sea <span class="property">:</span> green
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-sequence-entry">c-sequence-entry</a></tt>
+  <tt class="literal"><a href="#c-mapping-key">c-mapping-key</a></tt>
+  <span class="property"><a href="#c-mapping-value">c-mapping-value</a></span>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "sequence"
+  : !!seq [
+    !!str "one", !!str "two"
+  ],
+  ? !!str "mapping"
+  : !!map {
+    ? !!str "sky" : !!str "blue",
+    ? !!str "sea" : !!str "green",
+  }
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2514138" class="indexterm"></a><a href="#, end flow entry/">&#8220;<span class="quote"><b class="userinput"><tt>,</tt></b></span>&#8221;</a> ends a <a id="id2514157" class="indexterm"></a><a href="#flow collection style/syntax">flow
+                collection</a> entry.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[6]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-collect-entry"></a>c-collect-entry</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">,</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2514202" class="indexterm"></a><a href="#[ start flow sequence/">&#8220;<span class="quote"><b class="userinput"><tt>[</tt></b></span>&#8221;</a> starts a <a id="id2514222" class="indexterm"></a><a href="#flow sequence style/syntax">flow
+                sequence</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[7]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-sequence-start"></a>c-sequence-start</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">[</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2514268" class="indexterm"></a><a href="#] end flow sequence/">&#8220;<span class="quote"><b class="userinput"><tt>]</tt></b></span>&#8221;</a> ends a <a id="id2514288" class="indexterm"></a><a href="#flow sequence style/syntax">flow
+                sequence</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[8]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-sequence-end"></a>c-sequence-end</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">]</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2514333" class="indexterm"></a><a href="#{ start flow mapping/">&#8220;<span class="quote"><b class="userinput"><tt>{</tt></b></span>&#8221;</a> starts a <a id="id2514352" class="indexterm"></a><a href="#flow mapping style/syntax">flow
+                mapping</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[9]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-mapping-start"></a>c-mapping-start</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">{</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2514398" class="indexterm"></a><a href="#} end flow mapping/">&#8220;<span class="quote"><b class="userinput"><tt>}</tt></b></span>&#8221;</a> ends a <a id="id2514417" class="indexterm"></a><a href="#flow mapping style/syntax">flow
+                mapping</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[10]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-mapping-end"></a>c-mapping-end</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">}</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2514455"></a>
+              <p class="title">
+                <b>Example 4.4. Flow Collection Indicators</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">sequence: <tt class="filename">[</tt> one<span class="property">,</span> two<span class="property">,</span> <tt class="filename">]</tt><br />mapping: <tt class="literal">{</tt> sky: blue<span class="property">,</span> sea: green <tt class="literal">}</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-sequence-start">c-sequence-start</a></tt> <tt class="filename"><a href="#c-sequence-end">c-sequence-end</a></tt>
+  <tt class="literal"><a href="#c-mapping-start">c-mapping-start</a></tt>  <tt class="literal"><a href="#c-mapping-end">c-mapping-end</a></tt>
+  <span class="property"><a href="#c-collect-entry">c-collect-entry</a></span>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "sequence"
+  : !!seq [
+    !!str "one", !!str "two"
+  ],
+  ? !!str "mapping"
+  : !!map {
+    ? !!str "sky" : !!str "blue",
+    ? !!str "sea" : !!str "green",
+  }
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2514610" class="indexterm"></a><a href="## comment/">&#8220;<span class="quote"><b class="userinput"><tt> #</tt></b></span>&#8221;</a> denotes a <a id="id2514628" class="indexterm"></a><a href="#comment/syntax">comment</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[11]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-comment"></a>c-comment</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">#</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2514666"></a>
+              <p class="title">
+                <b>Example 4.5. Comment Indicator</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><tt class="filename">#</tt> Comment only.<br /></span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-comment">c-comment</a></tt>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database"># This stream contains no<br /># documents, only comments.
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2514739" class="indexterm"></a><a href="#&amp; anchor/">&#8220;<span class="quote"><b class="userinput"><tt>&amp;</tt></b></span>&#8221;</a> denotes a <a id="id2514757" class="indexterm"></a><a href="#anchor/syntax">node's anchor
+                property</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[12]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-anchor"></a>c-anchor</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">&amp;</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2514802" class="indexterm"></a><a href="#* alias/">&#8220;<span class="quote"><b class="userinput"><tt>*</tt></b></span>&#8221;</a>
+                denotes an <a id="id2514820" class="indexterm"></a><a href="#alias/syntax">alias
+                node</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[13]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-alias"></a>c-alias</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">*</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2514865" class="indexterm"></a><a href="#! tag indicator/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a> denotes a <a id="id2514883" class="indexterm"></a><a href="#tag/syntax">node's tag</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[14]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-tag"></a>c-tag</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">!</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2514920"></a>
+              <p class="title">
+                <b>Example 4.6. Node Property Indicators</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">anchored: <span class="property">!</span>local <tt class="filename">&amp;</tt>anchor value<br />alias: <tt class="literal">*</tt>anchor
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-anchor">c-anchor</a></tt>
+  <tt class="literal"><a href="#c-alias">c-alias</a></tt>
+  <span class="property"><a href="#c-tag">c-tag</a></span>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "anchored"
+  : !local &amp;A1 "value",
+  ? !!str "alias"
+  : *A1,
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2515029" class="indexterm"></a><a href="#| literal style/">&#8220;<span class="quote"><b class="userinput"><tt>|</tt></b></span>&#8221;</a> denotes a <a id="id2515047" class="indexterm"></a><a href="#literal style/syntax">literal block
+                scalar</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[15]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-literal"></a>c-literal</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">|</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2515093" class="indexterm"></a><a href="#&gt; folded style/">&#8220;<span class="quote"><b class="userinput"><tt>&gt;</tt></b></span>&#8221;</a> denotes a <a id="id2515112" class="indexterm"></a><a href="#folded style/syntax">folded block
+                scalar</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[16]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-folded"></a>c-folded</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">&gt;</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2515150"></a>
+              <p class="title">
+                <b>Example 4.7. Block Scalar Indicators</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">literal: <tt class="filename">|</tt><br />  text
+folded: <tt class="literal">&gt;</tt>
+  text
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-literal">c-literal</a></tt>
+  <tt class="literal"><a href="#c-folded">c-folded</a></tt>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "literal"
+  : !!str "text\n",
+  ? !!str "folded"
+  : !!str "text\n",
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2515240" class="indexterm"></a><a href="#' single quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>'</tt></b></span>&#8221;</a> surrounds a <a id="id2515259" class="indexterm"></a><a href="#single quoted style/syntax">single quoted
+                flow scalar</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[17]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-single-quote"></a>c-single-quote</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">'</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2515306" class="indexterm"></a><a href="#&quot; double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>"</tt></b></span>&#8221;</a> surrounds a <a id="id2515325" class="indexterm"></a><a href="#double quoted style/syntax">double quoted
+                flow scalar</a>.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[18]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-double-quote"></a>c-double-quote</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">"</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2515364"></a>
+              <p class="title">
+                <b>Example 4.8. Quoted Scalar Indicators</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">single: <tt class="filename">'</tt>text<tt class="filename">'</tt><br />double: <tt class="literal">"</tt>text<tt class="literal">"</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-single-quote">c-single-quote</a></tt>
+  <tt class="literal"><a href="#c-double-quote">c-double-quote</a></tt>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "double"
+  : !!str "text",
+  ? !!str "single"
+  : !!str "text",
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2515466" class="indexterm"></a><a href="#% directive/">&#8220;<span class="quote"><b class="userinput"><tt>%</tt></b></span>&#8221;</a>
+                denotes a <a id="id2515485" class="indexterm"></a><a href="#directive/syntax">directive</a> line.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[19]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-directive"></a>c-directive</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">%</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2515524"></a>
+              <p class="title">
+                <b>Example 4.9. Directive Indicator</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><tt class="filename">%</tt>YAML 1.1<br />--- text
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-directive">c-directive</a></tt>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "text"
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                The <a id="id2515596" class="indexterm"></a><a id="@ reserved indicator/"></a
+            ><a href="#index-entry-@ reserved indicator"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>@</tt></b></span>&#8221;</i></a
+          > and <a id="id2515616" class="indexterm"></a><a id="` reserved indicator/"></a
+            ><a href="#index-entry-` reserved indicator"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>`</tt></b></span>&#8221;</i></a
+          > are <a id="id2515636" class="indexterm"></a><a id="reserved indicator/"></a
+            ><a href="#index-entry-reserved indicator"
+            ><i class="firstterm"
+            >reserved</i></a
+          > for future use.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[20]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-reserved"></a>c-reserved</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">@</span>&#8221; | &#8220;<span class="quote">`</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2515676"></a>
+              <p class="title">
+                <b>Example 4.10. Invalid use of Reserved Indicators</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="screen"><span class="database">commercial-at: <tt class="filename">@</tt>text<br />grave-accent: <tt class="filename">`</tt>text
+</span></pre>
+              </td>
+                  <td>
+<pre class="screen"><span class="database">ERROR:<br /> <tt class="filename">Reserved indicators</tt> can't
+ start a plain scalar.
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Any indicator character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[21]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-indicator"></a>c-indicator</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  <a href="#c-sequence-entry">&#8220;<span class="quote">-</span>&#8221;</a>
+                | <a href="#c-mapping-key">&#8220;<span class="quote">?</span>&#8221;</a>
+                | <a href="#c-mapping-value">&#8220;<span class="quote">:</span>&#8221;</a>
+                | <a href="#c-collect-entry">&#8220;<span class="quote">,</span>&#8221;</a>
+                | <a href="#c-sequence-start">&#8220;<span class="quote">[</span>&#8221;</a>
+                | <a href="#c-sequence-end">&#8220;<span class="quote">]</span>&#8221;</a>
+                | <a href="#c-mapping-start">&#8220;<span class="quote">{</span>&#8221;</a>
+                | <a href="#c-mapping-end">&#8220;<span class="quote">}</span>&#8221;</a><br />
+                | <a href="#c-comment">&#8220;<span class="quote">#</span>&#8221;</a>
+                | <a href="#c-anchor">&#8220;<span class="quote">&amp;</span>&#8221;</a>
+                | <a href="#c-alias">&#8220;<span class="quote">*</span>&#8221;</a>
+                | <a href="#c-tag">&#8220;<span class="quote">!</span>&#8221;</a>
+                | <a href="#c-literal">&#8220;<span class="quote">|</span>&#8221;</a>
+                | <a href="#c-folded">&#8220;<span class="quote">&gt;</span>&#8221;</a>
+                | <a href="#c-single-quote">&#8220;<span class="quote">'</span>&#8221;</a>
+                | <a href="#c-double-quote">&#8220;<span class="quote">"</span>&#8221;</a><br />
+                | <a href="#c-directive">&#8220;<span class="quote">%</span>&#8221;</a>
+                | <a href="#c-reserved">&#8220;<span class="quote">@</span>&#8221;
+                | &#8220;<span class="quote">`</span>&#8221;</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2515898"></a>4.1.4. Line Break Characters</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            The Unicode standard defines the following <a id="id2515907" class="indexterm"></a><a id="line break character/"></a
+            ><a href="#index-entry-line break character"
+            ><i class="firstterm"
+            >line break</i></a
+          > characters:
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[22]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-line-feed"></a>b-line-feed</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                #xA /*LF*/
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[23]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-carriage-return"></a>b-carriage-return</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                #xD /*CR*/
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[24]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-next-line"></a>b-next-line</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                #x85 /*NEL*/
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[25]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-line-separator"></a>b-line-separator</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                #x2028 /*LS*/
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[26]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-paragraph-separator"></a>b-paragraph-separator</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                #x2029 /*PS*/
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            A YAML <a id="id2515996" class="indexterm"></a><a href="#processor/">processor</a> must accept
+            all the possible Unicode line break characters.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[27]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-char"></a>b-char</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  <a href="#b-line-feed">b-line-feed</a>
+                | <a href="#b-carriage-return">b-carriage-return</a>
+                | <a href="#b-next-line">b-next-line</a><br />
+                | <a href="#b-line-separator">b-line-separator</a>
+                | <a href="#b-paragraph-separator">b-paragraph-separator</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            Line breaks can be grouped into two categories. <a id="id2516056" class="indexterm"></a><a id="specific line break/"></a
+            ><a href="#index-entry-specific line break"
+            ><i class="firstterm"
+            >Specific line breaks</i></a
+          > have
+            well-defined semantics for breaking text into lines and paragraphs,
+            and must be preserved by the YAML <a id="id2516073" class="indexterm"></a><a href="#processor/">processor</a> inside <a id="id2516086" class="indexterm"></a><a href="#scalar/syntax">scalar content</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[28]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-specific"></a>b-specific</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#b-line-separator">b-line-separator</a>
+                | <a href="#b-paragraph-separator">b-paragraph-separator</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            <a id="id2516131" class="indexterm"></a><a id="generic line break/"></a
+            ><a href="#index-entry-generic line break"
+            ><i class="firstterm"
+            >Generic line breaks</i></a
+          >
+            do not carry a meaning beyond &#8220;<span class="quote">ending a line</span>&#8221;. Unlike
+            specific line breaks, there are several widely used forms for
+            generic line breaks.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[29]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-generic"></a>b-generic</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  ( <a href="#b-carriage-return">b-carriage-return</a>
+                <a href="#b-line-feed">b-line-feed</a> ) /* DOS, Windows */<br />
+                | <a href="#b-carriage-return">b-carriage-return</a>
+                         
+                      /* Macintosh */<br />
+                | <a href="#b-line-feed">b-line-feed</a>
+                         
+                         
+                  /* UNIX */<br />
+                | <a href="#b-next-line">b-next-line</a>
+                         
+                         
+                  /* Unicode */
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            Generic line breaks inside <a id="id2516212" class="indexterm"></a><a href="#scalar/syntax">scalar content</a> must be <a id="id2516227" class="indexterm"></a><a id="line break normalization/"></a
+            ><a href="#index-entry-line break normalization"
+            ><i class="firstterm"
+            >normalized</i></a
+          > by the YAML
+            <a id="id2516243" class="indexterm"></a><a href="#processor/">processor</a>. Each such line
+            break must be <a id="id2516256" class="indexterm"></a><a href="#parse/">parsed</a> into a
+            single line feed character. The original line break form is a
+            <a id="id2516270" class="indexterm"></a><a href="#presentation detail/">presentation
+            detail</a> and must not be used to convey <a id="id2516285" class="indexterm"></a><a href="#content/information model">content
+            information</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[30]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-as-line-feed"></a>b-as-line-feed</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#b-generic">b-generic</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[31]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-normalized"></a>b-normalized</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#b-as-line-feed">b-as-line-feed</a>
+                | <a href="#b-specific">b-specific</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            Normalization does not apply to ignored (<a id="id2516347" class="indexterm"></a><a href="#escaped (ignored) line break/">escaped</a> or <a id="id2516363" class="indexterm"></a><a href="#chomping/">chomped</a>) generic line breaks.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[32]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-ignored-generic"></a>b-ignored-generic</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#b-generic">b-generic</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            Outside <a id="id2516400" class="indexterm"></a><a href="#scalar/syntax">scalar
+            content</a>, YAML allows any line break to be used to
+            terminate lines.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[33]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-ignored-any"></a>b-ignored-any</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#b-generic">b-generic</a>
+                | <a href="#b-specific">b-specific</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+          On output, a YAML <a id="id2516446" class="indexterm"></a><a href="#processor/">processor</a> is
+          free to <a id="id2516459" class="indexterm"></a><a href="#present/">present</a> line breaks
+          using whatever convention is most appropriate, though specific line
+          breaks must be preserved in <a id="id2516473" class="indexterm"></a><a href="#scalar/syntax">scalar content</a>. These rules are
+          compatible with <a href="http://www.unicode.org/unicode/reports/tr13/" target="_top">Unicode's newline
+          guidelines</a>.
+        </p>
+            <p>
+            In the examples, line break characters are displayed as follows:
+            &#8220;<span class="quote"><b class="userinput"><tt>&#8595;</tt></b></span>&#8221; or no glyph for a generic line break,
+            &#8220;<span class="quote"><b class="userinput"><tt>&#8659;</tt></b></span>&#8221; for a line separator and
+            &#8220;<span class="quote"><b class="userinput"><tt>¶</tt></b></span>&#8221; for a paragraph separator.
+          </p>
+            <div class="example">
+              <a id="id2516526"></a>
+              <p class="title">
+                <b>Example 4.11. Line Break Characters</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">|<br />  Generic line break (no glyph)
+  Generic line break (glyphed)<tt class="filename">&#8595;</tt>
+  Line separator<tt class="literal">&#8659;</tt>
+  Paragraph separator<span class="property">¶</span>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#b-generic">b-generic</a></tt> <tt class="literal"><a href="#b-line-separator">b-line-separator</a></tt>
+  <span class="property"><a href="#b-paragraph-separator">b-paragraph-separator</a></span>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />--- !!str
+"Generic line break (no glyph)\n\
+ Generic line break (glyphed)\n\
+ Line separator\u2028\
+ Paragraph separator\u2029"
+</span></pre>
+              </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2516631"></a>4.1.5. Miscellaneous Characters</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            The YAML syntax productions make use of the following character
+            range definitions:
+          </p>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A non-<a id="id2516649" class="indexterm"></a><a href="#line break character/">break</a>
+                character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[34]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="nb-char"></a>nb-char</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-printable">c-printable</a>
+                - <a href="#b-char">b-char</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                An ignored space character outside <a id="id2516699" class="indexterm"></a><a href="#scalar/syntax">scalar content</a>. Such spaces are
+                used for <a id="id2516715" class="indexterm"></a><a href="#indentation space/">indentation</a> and <a id="id2516729" class="indexterm"></a><a href="#separation space/">separation</a> between tokens. To maintain
+                portability, <a id="id2516745" class="indexterm"></a><a id="tab/"></a
+            ><a href="#index-entry-tab"
+            ><i class="firstterm"
+            >tab</i></a
+          > characters
+                must not be used in these cases, since different systems treat
+                tabs differently. Note that most modern editors may be
+                configured so that pressing the tab key results in the
+                insertion of an appropriate number of spaces.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[35]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-ignored-space"></a>s-ignored-space</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                #x20 /*SP*/
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2516782"></a>
+              <p class="title">
+                <b>Example 4.12. Invalid Use of Tabs</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="screen"><span class="database"># Tabs do's and don'ts:<br /># comment: <tt class="filename">&#8594;</tt>
+quoted: "Quoted <tt class="filename">&#8594;</tt>"
+block: |
+  void main() {
+  <tt class="filename">&#8594;</tt>printf("Hello, world!\n");
+  }
+elsewhere:<tt class="literal">&#8594;</tt># separation
+<tt class="literal">&#8594;</tt>indentation, in<tt class="literal">&#8594;</tt>plain scalar
+</span></pre>
+            </td>
+                  <td>
+<pre class="screen"><span class="database">ERROR:<br /> Tabs <tt class="filename">may</tt> appear inside
+ comments and quoted or
+ block scalar content.
+ Tabs <tt class="literal">must not</tt> appear
+ elsewhere, such as
+ in indentation and
+ separation spaces.
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A <a id="id2516884" class="indexterm"></a><a id="white space/"></a
+            ><a href="#index-entry-white space"
+            ><i class="firstterm"
+            >white space</i></a
+          >
+                character in <a id="id2516900" class="indexterm"></a><a href="#quoted style/syntax">quoted</a> or <a id="id2516916" class="indexterm"></a><a href="#block scalar style/syntax">block scalar
+                content</a>:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[36]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-white"></a>s-white</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                #x9 /*TAB*/ | #x20 /*SP*/
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            In the examples, tab characters are displayed as the glyph
+            &#8220;<span class="quote"><b class="userinput"><tt>&#8594;</tt></b></span>&#8221;. Space characters are sometimes displayed
+            as the glyph &#8220;<span class="quote"><b class="userinput"><tt>·</tt></b></span>&#8221; for clarity.
+          </p>
+            <div class="example">
+              <a id="id2516974"></a>
+              <p class="title">
+                <b>Example 4.13. Tabs and Spaces</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><tt class="literal">·</tt><tt class="literal">·</tt>"Text<tt class="literal">·</tt>containing<tt class="literal">·</tt><tt class="literal">·</tt><tt class="literal">·</tt><br /><tt class="literal">·</tt><tt class="literal">·</tt>both<tt class="literal">·</tt>space<tt class="literal">·</tt>and<tt class="filename">&#8594;</tt>
+<tt class="literal">·</tt><tt class="literal">·</tt><tt class="filename">&#8594;</tt>tab<tt class="filename">&#8594;</tt>characters"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename">#x9 (TAB)</tt> <tt class="literal">#x20 (SP)</tt>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />--- !!str
+"Text·containing·\
+ both·space·and·\
+ tab&#8594;characters"
+</span></pre>
+              </td>
+                </tr>
+              </table>
+            </div>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                An ignored white space character inside <a id="id2517122" class="indexterm"></a><a href="#scalar/syntax">scalar content</a>:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[37]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-ignored-white"></a>s-ignored-white</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#s-white">s-white</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A non space (and non-<a id="id2517168" class="indexterm"></a><a href="#line break character/">break</a>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[38]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-char"></a>ns-char</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#nb-char">nb-char</a> - <a href="#s-white">s-white</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A decimal digit for numbers:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[39]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-dec-digit"></a>ns-dec-digit</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                [#x30-#x39] /*0-9*/
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A hexadecimal digit for <a id="id2517244" class="indexterm"></a><a href="#escaping in double quoted style/">escape sequences</a>:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[40]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-hex-digit"></a>ns-hex-digit</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#ns-dec-digit">ns-dec-digit</a>
+                | [#x41-#x46] /*A-F*/ | [#x61-#x66] /*a-f*/
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                An ASCII letter (alphabetic) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[41]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-ascii-letter"></a>ns-ascii-letter</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                [#x41-#x5A] /*A-Z*/ | [#x61-#x7A] /*a-z*/
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A word (alphanumeric) character for identifiers:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[42]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-word-char"></a>ns-word-char</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#ns-dec-digit">ns-dec-digit</a>
+                | <a href="#ns-ascii-letter">ns-ascii-letter</a>
+                | &#8220;<span class="quote">-</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                A URI character for <a id="id2517359" class="indexterm"></a><a href="#tag/syntax">tags</a>, as specified in <a href="http://www.ietf.org/rfc/rfc2396.txt" target="_top">RFC2396</a> with
+                the addition of the <a id="id2517380" class="indexterm"></a><a href="#[ start flow sequence/">&#8220;<span class="quote"><b class="userinput"><tt>[</tt></b></span>&#8221;</a> and <a id="id2517399" class="indexterm"></a><a href="#] end flow sequence/">&#8220;<span class="quote"><b class="userinput"><tt>]</tt></b></span>&#8221;</a> for presenting
+                IPv6 addresses as proposed in <a href="http://www.ietf.org/rfc/rfc2732.txt" target="_top">RFC2732</a>. A
+                limited form of 8-bit <a id="id2517424" class="indexterm"></a><a id="escaping in URI/"></a
+            ><a href="#index-entry-escaping in URI"
+            ><i class="firstterm"
+            >escaping</i></a
+          > is available using the <a id="id2517440" class="indexterm"></a><a id="% escaping in URI/"></a
+            ><a href="#index-entry-% escaping in URI"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>%</tt></b></span>&#8221;</i></a
+          >
+                character. By convention, URIs containing 16 and 32 bit Unicode
+                characters are <a id="id2517460" class="indexterm"></a><a href="#character encoding/">encoded</a> in UTF-8, and then each octet is
+                written as a separate character.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[43]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-uri-char"></a>ns-uri-char</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  <a href="#ns-word-char">ns-word-char</a>
+                | &#8220;<span class="quote">%</span>&#8221; <a href="#ns-hex-digit">ns-hex-digit</a>
+                <a href="#ns-hex-digit">ns-hex-digit</a><br />
+                | &#8220;<span class="quote">;</span>&#8221; | &#8220;<span class="quote">/</span>&#8221; | &#8220;<span class="quote">?</span>&#8221;
+                | &#8220;<span class="quote">:</span>&#8221; | &#8220;<span class="quote">@</span>&#8221; | &#8220;<span class="quote">&amp;</span>&#8221;
+                | &#8220;<span class="quote">=</span>&#8221; | &#8220;<span class="quote">+</span>&#8221; | &#8220;<span class="quote">$</span>&#8221;
+                | &#8220;<span class="quote">,</span>&#8221;<br />
+                | &#8220;<span class="quote">_</span>&#8221; | &#8220;<span class="quote">.</span>&#8221; | &#8220;<span class="quote">!</span>&#8221;
+                | &#8220;<span class="quote">~</span>&#8221; | &#8220;<span class="quote">*</span>&#8221; | &#8220;<span class="quote">'</span>&#8221;
+                | &#8220;<span class="quote">(</span>&#8221; | &#8220;<span class="quote">)</span>&#8221; | &#8220;<span class="quote">[</span>&#8221;
+                | &#8220;<span class="quote">]</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                The <a id="id2517589" class="indexterm"></a><a href="#! named handle/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a> character is used to
+                indicate the end of a <a id="id2517609" class="indexterm"></a><a href="#named tag handle/">named
+                tag handle</a>; hence its use in <a id="id2517623" class="indexterm"></a><a href="#tag shorthand/">tag shorthands</a> is restricted.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[44]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-tag-char"></a>ns-tag-char</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#ns-uri-char">ns-uri-char</a>
+                - <a href="#c-tag">&#8220;<span class="quote">!</span>&#8221;</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2517668"></a>4.1.6. Escape Sequences</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            All non-<a id="id2517676" class="indexterm"></a><a href="#printable character/">printable</a>
+            characters must be <a id="id2517690" class="indexterm"></a><a href="#present/">presented</a>
+            as <a id="id2517703" class="indexterm"></a><a id="escaping in double quoted style/"></a
+            ><a href="#index-entry-escaping in double quoted style"
+            ><i class="firstterm"
+            >escape
+            sequences</i></a
+          >. Each escape sequences must be <a id="id2517720" class="indexterm"></a><a href="#parse/">parsed</a> into the appropriate Unicode
+            character. The original escape sequence form is a <a id="id2517734" class="indexterm"></a><a href="#presentation detail/">presentation detail</a> and
+            must not be used to convey <a id="id2517748" class="indexterm"></a><a href="#content/information model">content information</a>. YAML
+            escape sequences use the <a id="id2517765" class="indexterm"></a><a id="\ escaping in double quoted style/"></a
+            ><a href="#index-entry-\ escaping in double quoted style"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>\</tt></b></span>&#8221;</i></a
+          > notation common to most
+            modern computer languages. Note that escape sequences are only
+            interpreted in <a id="id2517787" class="indexterm"></a><a href="#double quoted style/syntax">double quoted scalars</a>. In all other
+            <a id="id2517803" class="indexterm"></a><a href="#scalar/syntax">scalar
+            styles</a>, the <a id="id2517819" class="indexterm"></a><a href="#\ escaping in double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>\</tt></b></span>&#8221;</a> character has no special
+            meaning and non-<a id="id2517840" class="indexterm"></a><a href="#printable character/">printable</a> characters are not available.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[45]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-escape"></a>c-escape</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">\</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            YAML escape sequences are a superset of C's escape sequences:
+          </p>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII null (<b class="userinput"><tt>#x0</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[46]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-null"></a>ns-esc-null</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">0</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII bell (<b class="userinput"><tt>#x7</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[47]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-bell"></a>ns-esc-bell</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">a</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII backspace (<b class="userinput"><tt>#x8</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[48]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-backspace"></a>ns-esc-backspace</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">b</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII horizontal <a id="id2518009" class="indexterm"></a><a href="#tab/">tab</a>
+                (<b class="userinput"><tt>#x9</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[49]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-horizontal-tab"></a>ns-esc-horizontal-tab</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">t</span>&#8221;
+                | <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                #x9
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII <a id="id2518071" class="indexterm"></a><a href="#generic line break/">line
+                feed</a> (<b class="userinput"><tt>#xA</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[50]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-line-feed"></a>ns-esc-line-feed</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">n</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII vertical tab (<b class="userinput"><tt>#xB</tt></b>)
+                character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[51]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-vertical-tab"></a>ns-esc-vertical-tab</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">v</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII form feed (<b class="userinput"><tt>#xC</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[52]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-form-feed"></a>ns-esc-form-feed</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">f</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII <a id="id2518211" class="indexterm"></a><a href="#generic line break/">carriage
+                return</a> (<b class="userinput"><tt>#xD</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[53]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-carriage-return"></a>ns-esc-carriage-return</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">r</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII escape (<b class="userinput"><tt>#x1B</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[54]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-escape"></a>ns-esc-escape</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">e</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII space (<b class="userinput"><tt>#x20</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[55]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-space"></a>ns-esc-space</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                #x20
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII double quote (<a id="id2518348" class="indexterm"></a><a href="#&quot; double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>"</tt></b></span>&#8221;</a>):
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[56]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-double-quote"></a>ns-esc-double-quote</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                <a href="#c-double-quote">&#8220;<span class="quote">"</span>&#8221;</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped ASCII back slash (<a id="id2518406" class="indexterm"></a><a href="#\ escaping in double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>\</tt></b></span>&#8221;</a>):
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[57]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-backslash"></a>ns-esc-backslash</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped Unicode <a id="id2518463" class="indexterm"></a><a href="#generic line break/">next
+                line</a> (<b class="userinput"><tt>#x85</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[58]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-next-line"></a>ns-esc-next-line</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">N</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped Unicode non-breaking space
+                (<b class="userinput"><tt>#xA0</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[59]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-non-breaking-space"></a>ns-esc-non-breaking-space</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">_</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped Unicode <a id="id2518560" class="indexterm"></a><a href="#specific line break/">line
+                separator</a> (<b class="userinput"><tt>#x2028</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[60]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-line-separator"></a>ns-esc-line-separator</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">L</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped Unicode <a id="id2518618" class="indexterm"></a><a href="#specific line break/">paragraph separator</a>
+                (<b class="userinput"><tt>#x2029</tt></b>) character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[61]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-paragraph-separator"></a>ns-esc-paragraph-separator</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">P</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped 8-bit Unicode character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[62]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-8-bit"></a>ns-esc-8-bit</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">x</span>&#8221; ( <a href="#ns-hex-digit">ns-hex-digit</a> x 2 )
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped 16-bit Unicode character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[63]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-16-bit"></a>ns-esc-16-bit</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">u</span>&#8221; ( <a href="#ns-hex-digit">ns-hex-digit</a> x 4 )
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Escaped 32-bit Unicode character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[64]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-32-bit"></a>ns-esc-32-bit</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                &#8220;<span class="quote">U</span>&#8221; ( <a href="#ns-hex-digit">ns-hex-digit</a> x 8 )
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Any escaped character:
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[65]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-esc-char"></a>ns-esc-char</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  <a href="#ns-esc-null">ns-esc-null</a>
+                | <a href="#ns-esc-bell">ns-esc-bell</a>
+                | <a href="#ns-esc-backspace">ns-esc-backspace</a><br />
+                | <a href="#ns-esc-horizontal-tab">ns-esc-horizontal-tab</a>
+                | <a href="#ns-esc-line-feed">ns-esc-line-feed</a><br />
+                | <a href="#ns-esc-vertical-tab">ns-esc-vertical-tab</a>
+                | <a href="#ns-esc-form-feed">ns-esc-form-feed</a><br />
+                | <a href="#ns-esc-carriage-return">ns-esc-carriage-return</a>
+                | <a href="#ns-esc-escape">ns-esc-escape</a>
+                | <a href="#ns-esc-space">ns-esc-space</a><br />
+                | <a href="#ns-esc-double-quote">ns-esc-double-quote</a>
+                | <a href="#ns-esc-backslash">ns-esc-backslash</a><br />
+                | <a href="#ns-esc-next-line">ns-esc-next-line</a>
+                | <a href="#ns-esc-non-breaking-space">ns-esc-non-breaking-space</a><br />
+                | <a href="#ns-esc-line-separator">ns-esc-line-separator</a>
+                | <a href="#ns-esc-paragraph-separator">ns-esc-paragraph-separator</a><br />
+                | <a href="#ns-esc-8-bit">ns-esc-8-bit</a>
+                | <a href="#ns-esc-16-bit">ns-esc-16-bit</a>
+                | <a href="#ns-esc-32-bit">ns-esc-32-bit</a><br />
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2518920"></a>
+              <p class="title">
+                <b>Example 4.14. Escaped Characters</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">"Fun with <tt class="filename">\\</tt><br /> <tt class="filename">\"</tt> <tt class="filename">\a</tt> <tt class="filename">\b</tt> <tt class="filename">\e</tt> <tt class="filename">\f</tt> <tt class="filename">\&#8595;</tt>
+ <tt class="filename">\n</tt> <tt class="filename">\r</tt> <tt class="filename">\t</tt> <tt class="filename">\v</tt> <tt class="filename">\0</tt> <tt class="filename">\&#8659;</tt>
+ <tt class="filename">\ </tt> <tt class="filename">\_</tt> <tt class="filename">\N</tt> <tt class="filename">\L</tt> <tt class="filename">\P</tt> <tt class="filename">\¶</tt>
+ <tt class="filename">\x41</tt> <tt class="filename">\u0041</tt> <tt class="filename">\U00000041</tt>"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-esc-char">ns-esc-char</a></tt>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+"Fun with \x5C
+ \x22 \x07 \x08 \x1B \0C
+ \x0A \x0D \x09 \x0B \x00
+ \x20 \xA0 \x85 \u2028 \u2029
+ A A A"
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="example">
+              <a id="id2519104"></a>
+              <p class="title">
+                <b>Example 4.15. Invalid Escaped Characters</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="screen"><span class="database">Bad escapes:<br />  "\<tt class="filename">c</tt>
+  \x<tt class="literal">q-</tt>"
+</span></pre>
+              </td>
+                  <td>
+<pre class="screen"><span class="database">ERROR:<br />- <tt class="filename">c</tt> is an invalid escaped character.
+- <tt class="literal">q</tt> and <tt class="literal">-</tt> are invalid hex digits.
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2519180"></a>4.2. Syntax Primitives</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2519186"></a>4.2.1. Production Parameters</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          As YAML's syntax is designed for maximal readability, it makes heavy
+          use of the context that each syntactical entity appears in. For
+          notational compactness, this is expressed using parameterized BNF
+          productions. The set of parameters and the range of allowed values
+          depend on the specific production. The full list of possible
+          parameters and their values is:
+        </p>
+            <div class="variablelist">
+              <dl>
+                <dt>
+                  <span class="term">
+              Indentation: <tt class="varname">n</tt> or <tt class="varname">m</tt>
+            </span>
+                </dt>
+                <dd>
+                  <p>
+                Since the character <a id="id2519224" class="indexterm"></a><a href="#stream/syntax">stream</a> depends upon <a id="id2519240" class="indexterm"></a><a href="#indentation space/">indentation</a> level to
+                delineate blocks, many productions are parameterized by it. In
+                some cases, the notations &#8220;<span class="quote"><b class="userinput"><tt>production(&lt;n)</tt></b></span>&#8221;,
+                &#8220;<span class="quote"><b class="userinput"><tt>production(&#8804;n)</tt></b></span>&#8221; and
+                &#8220;<span class="quote"><b class="userinput"><tt>production(&gt;n)</tt></b></span>&#8221; are used; these are
+                shorthands for &#8220;<span class="quote"><b class="userinput"><tt>production(m)</tt></b></span>&#8221; for some specific
+                <tt class="varname">m</tt> where
+                0 &#8804; <tt class="varname">m</tt> &lt; <tt class="varname">n</tt>,
+                0 &#8804; <tt class="varname">m</tt> &#8804; <tt class="varname">n</tt> and
+                <tt class="varname">m</tt> &gt; <tt class="varname">n</tt>,
+                respectively.
+              </p>
+                </dd>
+                <dt>
+                  <span class="term">Context: <tt class="varname">c</tt></span>
+                </dt>
+                <dd>
+                  <p>
+                YAML supports two groups of <a id="id2519329" class="indexterm"></a><a id="context/"></a
+            ><a href="#index-entry-context"
+            ><i class="firstterm"
+            >contexts</i></a
+          >, distinguishing between
+                <a id="id2519343" class="indexterm"></a><a href="#block style/syntax">block
+                styles</a> and <a id="id2519361" class="indexterm"></a><a href="#flow style/syntax">flow styles</a>. In the <a id="id2519377" class="indexterm"></a><a href="#block style/syntax">block
+                styles</a>, <a id="id2519393" class="indexterm"></a><a href="#indentation space/">indentation</a> is used to delineate structure.
+                Due to the fact that the <a id="id2519408" class="indexterm"></a><a href="#- block sequence entry/">&#8220;<span class="quote"><b class="userinput"><tt>-</tt></b></span>&#8221;</a> character denoting a
+                <a id="id2519426" class="indexterm"></a><a href="#block sequence style/syntax">block sequence</a> entry is perceived
+                as an <a id="id2519443" class="indexterm"></a><a href="#indentation space/">indentation</a> character, some productions
+                distinguish between the <a id="id2519458" class="indexterm"></a><a href="#block-in context/">block-in</a> context (inside a <a id="id2519472" class="indexterm"></a><a href="#block sequence style/syntax">block
+                sequence</a>) and the <a id="id2519488" class="indexterm"></a><a href="#block-out context/">block-out</a> context (outside one). In the
+                <a id="id2519504" class="indexterm"></a><a href="#flow style/syntax">flow
+                styles</a>, explicit <a id="id2519519" class="indexterm"></a><a href="#indicator/">indicators</a> are used to delineate
+                structure. As <a id="id2519532" class="indexterm"></a><a href="#plain style/syntax">plain scalars</a> have no such
+                <a id="id2519549" class="indexterm"></a><a href="#indicator/">indicators</a>, they are the
+                most context sensitive, distinguishing between being nested
+                inside a <a id="id2519563" class="indexterm"></a><a href="#flow collection style/syntax">flow collection</a> (<a id="id2519580" class="indexterm"></a><a href="#flow-in context/">flow-in</a> context) or being
+                outside one (<a id="id2519596" class="indexterm"></a><a href="#flow-out context/">flow-out</a> context). YAML also provides a
+                terse and intuitive syntax for <a id="id2519611" class="indexterm"></a><a href="#simple key/">simple keys</a>. <a id="id2519625" class="indexterm"></a><a href="#plain style/syntax">Plain scalars</a> in this (<a id="id2519640" class="indexterm"></a><a href="#flow-key context/">flow-key</a>) context are the
+                most restricted, for readability and implementation reasons.
+              </p>
+                </dd>
+                <dt>
+                  <span class="term">(Scalar) Style: <tt class="varname">s</tt></span>
+                </dt>
+                <dd>
+                  <p>
+                <a id="id2519672" class="indexterm"></a><a href="#scalar/syntax">Scalar
+                content</a> may be <a id="id2519688" class="indexterm"></a><a href="#present/">presented</a> in one of five <a id="id2519700" class="indexterm"></a><a href="#scalar/syntax">styles</a>: the
+                <a id="id2519716" class="indexterm"></a><a href="#plain style/syntax">plain</a>, <a id="id2519731" class="indexterm"></a><a href="#double quoted style/syntax">double quoted</a> and
+                <a id="id2519748" class="indexterm"></a><a href="#single quoted style/syntax">single quoted</a> <a id="id2519764" class="indexterm"></a><a href="#flow style/syntax">flow styles</a>,
+                and the <a id="id2519779" class="indexterm"></a><a href="#literal style/syntax">literal</a> and <a id="id2519795" class="indexterm"></a><a href="#folded style/syntax">folded</a>
+                <a id="id2519810" class="indexterm"></a><a href="#block style/syntax">block
+                styles</a>.
+              </p>
+                </dd>
+                <dt>
+                  <span class="term">(Block) Chomping: <tt class="varname">t</tt></span>
+                </dt>
+                <dd>
+                  <p>
+                Block scalars offer three possible mechanisms for <a id="id2519842" class="indexterm"></a><a href="#chomping/">chomping</a> any trailing <a id="id2519855" class="indexterm"></a><a href="#line break character/">line breaks</a>: <a id="id2519868" class="indexterm"></a><a href="#strip chomping/">strip</a>, <a id="id2519883" class="indexterm"></a><a href="#clip chomping/">clip</a> and <a id="id2519897" class="indexterm"></a><a href="#keep chomping/">keep</a>.
+              </p>
+                </dd>
+              </dl>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2519916"></a>4.2.2. Indentation Spaces</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            In a YAML character <a id="id2519924" class="indexterm"></a><a href="#stream/syntax">stream</a>, structure is often determined
+            from <a id="id2519941" class="indexterm"></a><a id="indentation space/"></a
+            ><a href="#index-entry-indentation space"
+            ><i class="firstterm"
+            >indentation</i></a
+          >,
+            where indentation is defined as a <a id="id2519956" class="indexterm"></a><a href="#line break character/">line break</a> character (or the start of the
+            <a id="id2519970" class="indexterm"></a><a href="#stream/syntax">stream</a>)
+            followed by zero or more space characters. Note that indentation
+            must not contain any <a id="id2519988" class="indexterm"></a><a href="#tab/">tab</a>
+            characters. The amount of indentation is a <a id="id2520000" class="indexterm"></a><a href="#presentation detail/">presentation detail</a> used
+            exclusively to delineate structure and is otherwise ignored. In
+            particular, indentation characters must never be considered part of
+            a <a id="id2520016" class="indexterm"></a><a href="#content/information model">node's
+            content information</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[66]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-indent(n)"></a>s-indent(n)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#s-ignored-space">s-ignored-space</a> x n
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2520054"></a>
+              <p class="title">
+                <b>Example 4.16. Indentation Spaces</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><span class="property">··</span># Leading comment line spaces are<br /><span class="property">···</span># neither content nor indentation.
+<span class="property">····</span>
+Not indented:
+<tt class="filename">·</tt>By one space: |
+<tt class="filename">····</tt>By four
+<tt class="filename">····</tt><tt class="literal">··</tt>spaces
+<tt class="filename">·</tt>Flow style: [    # Leading spaces
+<tt class="filename">··</tt><span class="property">·</span>By two,        # in flow style
+<tt class="filename">··</tt>Also by two,    # are neither
+<tt class="filename">··</tt><span class="property">&#8594;</span>Still by two   # content nor
+<tt class="filename">··</tt><span class="property">··</span>]             # indentation.
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-indent(n)">s-indent(n)</a></tt> <tt class="literal">Content</tt>
+  <span class="property">Neither content nor indentation</span>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "Not indented"
+  : !!map {
+      ? !!str "By one space"
+      : !!str "By four\n  spaces\n",
+      ? !!str "Flow style"
+      : !!seq [
+          !!str "By two",
+          !!str "Still by two",
+          !!str "Again by two",
+        ]
+    }
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <p>
+          In general, a <a id="id2520220" class="indexterm"></a><a href="#node/syntax">node</a> must be indented further than its
+          parent <a id="id2520236" class="indexterm"></a><a href="#node/syntax">node</a>. All
+          sibling <a id="id2520252" class="indexterm"></a><a href="#node/syntax">nodes</a>
+          must use the exact same indentation level, however the <a id="id2520268" class="indexterm"></a><a href="#content/syntax">content</a> of each
+          sibling <a id="id2520284" class="indexterm"></a><a href="#node/syntax">node</a> may
+          be further indented independently. The <a id="id2520299" class="indexterm"></a><a href="#- block sequence entry/">&#8220;<span class="quote"><b class="userinput"><tt>-</tt></b></span>&#8221;</a>, <a id="id2520318" class="indexterm"></a><a href="#? mapping key/">&#8220;<span class="quote"><b class="userinput"><tt>?</tt></b></span>&#8221;</a> and <a id="id2520335" class="indexterm"></a><a href="#: mapping value/">&#8220;<span class="quote"><b class="userinput"><tt>:</tt></b></span>&#8221;</a> characters used to denote
+          <a id="id2520353" class="indexterm"></a><a href="#block collection style/syntax">block
+          collection</a> entries are perceived by people to be part of
+          the indentation. Hence the indentation rules are slightly more
+          flexible when dealing with these <a id="id2520373" class="indexterm"></a><a href="#indicator/">indicators</a>. First, a <a id="id2520386" class="indexterm"></a><a href="#block sequence style/syntax">block
+          sequence</a> need not be indented relative to its parent
+          <a id="id2520403" class="indexterm"></a><a href="#node/syntax">node</a>, unless
+          that <a id="id2520418" class="indexterm"></a><a href="#node/syntax">node</a> is
+          also a <a id="id2520433" class="indexterm"></a><a href="#block sequence style/syntax">block sequence</a>. Second, compact <a id="id2520450" class="indexterm"></a><a href="#in-line style/syntax">in-line</a>
+          notations allow a nested <a id="id2520467" class="indexterm"></a><a href="#collection/syntax">collection</a> to begin immediately
+          following the <a id="id2520485" class="indexterm"></a><a href="#indicator/">indicator</a> (where
+          the <a id="id2520497" class="indexterm"></a><a href="#indicator/">indicator</a> is counted as
+          part of the indentation). This provides for an intuitive <a id="id2520510" class="indexterm"></a><a href="#collection/syntax">collection</a> nesting
+          syntax.
+        </p>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2520528"></a>4.2.3. Comments</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            An explicit <a id="id2520536" class="indexterm"></a><a id="comment/syntax"></a
+            ><a href="#index-entry-comment"
+            ><i class="firstterm"
+            >comment</i></a
+          > is is marked by a <a id="id2520553" class="indexterm"></a><a id="# comment/"></a
+            ><a href="#index-entry-# comment"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>#</tt></b></span>&#8221; indicator</i></a
+          >.
+            Comments are a <a id="id2520572" class="indexterm"></a><a href="#presentation detail/">presentation
+            detail</a> and must have no effect on the <a id="id2520587" class="indexterm"></a><a href="#serialization/">serialization tree</a> (and hence the
+            <a id="id2520601" class="indexterm"></a><a href="#representation/">representation graph</a>).
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[67]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-nb-comment-text"></a>c-nb-comment-text</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-comment">&#8220;<span class="quote">#</span>&#8221;</a>
+                <a href="#nb-char">nb-char</a>*
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            Comments always span to the end of the line.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[68]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-b-comment"></a>c-b-comment</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-nb-comment-text">c-nb-comment-text</a>?
+                <a href="#b-ignored-any">b-ignored-any</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            Outside <a id="id2520674" class="indexterm"></a><a href="#scalar/syntax">scalar
+            content</a>, comments may appear on a line of their own,
+            independent of the <a id="id2520691" class="indexterm"></a><a href="#indentation space/">indentation</a> level. Note that <a id="id2520704" class="indexterm"></a><a href="#tab/">tab</a> characters must not be used and that
+            <a id="id2520717" class="indexterm"></a><a href="#empty line/">empty lines</a> outside
+            <a id="id2520730" class="indexterm"></a><a href="#scalar/syntax">scalar
+            content</a> are taken to be (empty) comment lines.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[69]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="l-comment"></a>l-comment</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#s-ignored-space">s-ignored-space</a>*
+                <a href="#c-b-comment">c-b-comment</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2520772"></a>
+              <p class="title">
+                <b>Example 4.17. Comment Lines</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><span class="honorific"><tt class="literal">··<tt class="filename"># Comment&#8595;</tt></tt></span><br /><span class="honorific"><tt class="literal">···<tt class="filename">&#8595;</tt></tt></span>
+<span class="honorific"><tt class="literal"><tt class="filename">&#8595;</tt></tt></span>
+</span></pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database"># This stream contains no<br /># documents, only comments.
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-b-comment">c-b-comment</a></tt> <tt class="literal"><a href="#l-comment">l-comment</a></tt>
+</pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <p>
+            When a comment follows another syntax element, it must be <a id="id2520879" class="indexterm"></a><a href="#separation space/">separated</a> from it by space
+            characters. Like the comment itself, such characters are not
+            considered part of the <a id="id2520894" class="indexterm"></a><a href="#content/information model">content information</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[70]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-b-comment"></a>s-b-comment</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                ( <a href="#s-ignored-space">s-ignored-space</a>+
+                <a href="#c-nb-comment-text">c-nb-comment-text</a> )?<br />
+                <a href="#b-ignored-any">b-ignored-any</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2520943"></a>
+              <p class="title">
+                <b>Example 4.18. Comments Ending a Line</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">key:<span class="honorific"><tt class="literal">····<tt class="filename"># Comment</tt>&#8595;</tt></span><br />  value<tt class="literal">&#8595;</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-nb-comment-text">c-nb-comment-text</a></tt> <tt class="literal"><a href="#s-b-comment">s-b-comment</a></tt>
+</pre>
+              </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "key"
+  : !!str "value"
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <p>
+            In most cases, when a line may end with a comment, YAML allows it
+            to be followed by additional comment lines.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[71]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-l-comments"></a>c-l-comments</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-b-comment">c-b-comment</a>
+                <a href="#l-comment">l-comment</a>*
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[72]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-l-comments"></a>s-l-comments</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#s-b-comment">s-b-comment</a>
+                <a href="#l-comment">l-comment</a>*
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2521086"></a>
+              <p class="title">
+                <b>Example 4.19. Multi-Line Comments</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">key:<span class="honorific"><span class="property"><tt class="filename">····# Comment&#8595;</tt><br /><tt class="literal">········# lines&#8595;</tt></span></span>
+  value<span class="honorific"><span class="property"><tt class="filename">&#8595;</tt>
+<tt class="literal">&#8595;</tt></span></span>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-b-comment">s-b-comment</a></tt> <tt class="literal"><a href="#l-comment">l-comment</a></tt> <span class="property"><a href="#s-l-comments">s-l-comments</a></span>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "key"
+  : !!str "value"
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2521201"></a>4.2.4. Separation Spaces</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            Outside <a id="id2521210" class="indexterm"></a><a href="#scalar/syntax">scalar
+            content</a>, YAML uses space characters for <a id="id2521226" class="indexterm"></a><a id="separation space/"></a
+            ><a href="#index-entry-separation space"
+            ><i class="firstterm"
+            >separation</i></a
+          > between tokens.
+            Note that separation must not contain <a id="id2521242" class="indexterm"></a><a href="#tab/">tab</a> characters. Seperation spaces are a
+            <a id="id2521254" class="indexterm"></a><a href="#presentation detail/">presentation
+            detail</a> used exclusively to delineate structure and are
+            otherwise ignored; in particular, such characters must never be
+            considered part of a <a id="id2521271" class="indexterm"></a><a href="#content/information model">node's content information</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[73]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-separate(n,c)"></a>s-separate(n,c)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <tt class="varname">c</tt> = block-out &#8658;
+                <a href="#s-separate-lines(n)">s-separate-lines(n)</a><br />
+                <tt class="varname">c</tt> = block-in  &#8658;
+                <a href="#s-separate-lines(n)">s-separate-lines(n)</a><br />
+                <tt class="varname">c</tt> = flow-out  &#8658;
+                <a href="#s-separate-lines(n)">s-separate-lines(n)</a><br />
+                <tt class="varname">c</tt> = flow-in   &#8658;
+                <a href="#s-separate-lines(n)">s-separate-lines(n)</a><br />
+                <tt class="varname">c</tt> = flow-key  &#8658;
+                <a href="#s-separate-spaces">s-separate-spaces</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                YAML usually allows separation spaces to include a <a id="id2521362" class="indexterm"></a><a href="#comment/syntax">comment</a> ending
+                the line and additional <a id="id2521378" class="indexterm"></a><a href="#comment/syntax">comment</a> lines. Note that the token
+                following the separation <a id="id2521394" class="indexterm"></a><a href="#comment/syntax">comment</a> lines must be properly
+                <a id="id2521410" class="indexterm"></a><a href="#indentation space/">indented</a>, even
+                though there is no such restriction on the separation <a id="id2521424" class="indexterm"></a><a href="#comment/syntax">comment</a> lines
+                themselves.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[74]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-separate-lines(n)"></a>s-separate-lines(n)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  <a href="#s-ignored-space">s-ignored-space</a>+<br />
+                | ( <a href="#s-l-comments">s-l-comments</a>
+                <a href="#s-indent(n)">s-indent(n)</a>
+                <a href="#s-ignored-space">s-ignored-space</a>* )
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Inside <a id="id2521488" class="indexterm"></a><a href="#simple key/">simple keys</a>,
+                however, separation spaces are confined to the current line.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[75]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-separate-spaces"></a>s-separate-spaces</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#s-ignored-space">s-ignored-space</a>+
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2521526"></a>
+              <p class="title">
+                <b>Example 4.20. Separation Spaces</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">{<tt class="filename">·</tt>first:<tt class="filename">·</tt>Sammy,<tt class="filename">·</tt>last:<tt class="filename">·</tt>Sosa<tt class="filename">·</tt>}:<span class="honorific"><tt class="literal">&#8595;<br /># Statistics:
+<span class="property">··</span></tt></span>hr:<span class="honorific"><tt class="literal">··# Home runs
+····</tt></span>65
+<span class="property">··</span>avg:<span class="honorific"><tt class="literal">·# Average
+<span class="property">····</span></tt></span>0.278
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-separate-spaces">s-separate-spaces</a></tt>
+  <tt class="literal"><a href="#s-separate-lines(n)">s-separate-lines(n)</a></tt>
+  <span class="property"><a href="#s-indent(n)">s-indent(n)</a></span>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!map {
+    ? !!str "first"
+    : !!str "Sammy",
+    ? !!str "last"
+    : !!str "Sosa"
+  }
+  : !!map {
+    ? !!str "hr"
+    : !!int "65",
+    ? !!str "avg"
+    : !!float "0.278"
+  }
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2521681"></a>4.2.5. Ignored Line Prefix</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            YAML discards the &#8220;<span class="quote">empty</span>&#8221; <a id="id2521693" class="indexterm"></a><a id="ignored line prefix/"></a
+            ><a href="#index-entry-ignored line prefix"
+            ><i class="firstterm"
+            >prefix</i></a
+          > of each <a id="id2521708" class="indexterm"></a><a href="#scalar/syntax">scalar content</a> line. This prefix
+            always includes the <a id="id2521724" class="indexterm"></a><a href="#indentation space/">indentation</a>, and depending on the scalar style may
+            also include all leading <a id="id2521740" class="indexterm"></a><a href="#white space/">white
+            space</a>. The ignored prefix is a <a id="id2521754" class="indexterm"></a><a href="#presentation detail/">presentation detail</a> and
+            must never be considered part of a <a id="id2521768" class="indexterm"></a><a href="#content/information model">node's content information</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[76]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-ignored-prefix(n,s)"></a>s-ignored-prefix(n,s)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <tt class="varname">s</tt> = plain   &#8658;
+                <a href="#s-ignored-prefix-plain(n)">s-ignored-prefix-plain(n)</a><br />
+                <tt class="varname">s</tt> = double  &#8658;
+                <a href="#s-ignored-prefix-quoted(n)">s-ignored-prefix-quoted(n)</a><br />
+                <tt class="varname">s</tt> = single  &#8658;
+                <a href="#s-ignored-prefix-quoted(n)">s-ignored-prefix-quoted(n)</a><br />
+                <tt class="varname">s</tt> = literal &#8658;
+                <a href="#s-ignored-prefix-block(n)">s-ignored-prefix-block(n)</a><br />
+                <tt class="varname">s</tt> = folded  &#8658;
+                <a href="#s-ignored-prefix-block(n)">s-ignored-prefix-block(n)</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Plain scalars must not contain any <a id="id2521860" class="indexterm"></a><a href="#tab/">tab</a> characters, and all leading spaces
+                are always discarded.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[77]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-ignored-prefix-plain(n)"></a>s-ignored-prefix-plain(n)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#s-indent(n)">s-indent(n)</a>
+                <a href="#s-ignored-space">s-ignored-space</a>*
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Quoted scalars may contain <a id="id2521909" class="indexterm"></a><a href="#tab/">tab</a>
+                characters. Again, all leading <a id="id2521922" class="indexterm"></a><a href="#white space/">white space</a> is always discarded.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[78]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-ignored-prefix-quoted(n)"></a>s-ignored-prefix-quoted(n)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#s-indent(n)">s-indent(n)</a>
+                <a href="#s-ignored-white">s-ignored-white</a>*
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="itemizedlist">
+              <ul type="disc">
+                <li>
+                  <p>
+                Block scalars rely on <a id="id2521971" class="indexterm"></a><a href="#indentation space/">indentation</a>; hence leading <a id="id2521985" class="indexterm"></a><a href="#white space/">white space</a>, if any, is not
+                discarded.
+              </p>
+                </li>
+              </ul>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[79]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="s-ignored-prefix-block(n)"></a>s-ignored-prefix-block(n)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#s-indent(n)">s-indent(n)</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2522022"></a>
+              <p class="title">
+                <b>Example 4.21. Ignored Prefix</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">plain: text<br /><span class="honorific"><tt class="filename"><tt class="constant">·</tt>·</tt></span>lines
+quoted: "text
+<span class="honorific"><tt class="literal"><tt class="constant">·</tt>·&#8594;</tt></span>lines"
+block: |
+<span class="honorific"><span class="property"><tt class="constant">··</tt></span></span>text
+<span class="honorific"><span class="property"><tt class="constant">··</tt></span></span>·&#8594;lines
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-ignored-prefix-plain(n)">s-ignored-prefix-plain(n)</a></tt>
+  <tt class="literal"><a href="#s-ignored-prefix-quoted(n)">s-ignored-prefix-quoted(n)</a></tt>
+  <span class="property"><a href="#s-ignored-prefix-block(n)">s-ignored-prefix-block(n)</a></span>
+  <tt class="constant"><a href="#s-indent(n)">s-indent(n)</a></tt>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "plain"
+  : !!str "text lines",
+  ? !!str "quoted"
+  : !!str "text lines",
+  ? !!str "block"
+  : !!str "text·&#8594;lines\n"
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <p>
+            An <a id="id2522158" class="indexterm"></a><a id="empty line/"></a
+            ><a href="#index-entry-empty line"
+            ><i class="firstterm"
+            >empty line</i></a
+          > line consists
+            of the ignored prefix followed by a <a id="id2522173" class="indexterm"></a><a href="#line break character/">line break</a>. When trailing <a id="id2522187" class="indexterm"></a><a href="#block scalar style/syntax">block
+            scalars</a>, such lines can also be interpreted as (empty)
+            <a id="id2522203" class="indexterm"></a><a href="#comment/syntax">comment</a>
+            lines. YAML provides a <a id="id2522220" class="indexterm"></a><a href="#chomping/">chomping</a> mechanism to resolve this
+            ambiguity.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[80]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="l-empty(n,s)"></a>l-empty(n,s)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                ( <a href="#s-indent(n)">s-indent(&lt;n)</a>
+                | <a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,s)</a> )<br />
+                <a href="#b-normalized">b-normalized</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2522268"></a>
+              <p class="title">
+                <b>Example 4.22. Empty Lines</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">- foo
+<tt class="filename">·&#8595;</tt>
+  bar
+- |-
+  foo
+<tt class="filename">·&#8595;</tt>
+  bar
+<tt class="literal">··&#8595;</tt>
+</span></pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq {
+  !!str "foo\nbar",
+  !!str "foo\n\nbar"
+}
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-empty(n,s)">l-empty(n,s)</a></tt>
+  <tt class="literal"><a href="#l-comment">l-comment</a></tt>
+</pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2522356"></a>4.2.6. Line Folding</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            <a id="id2522364" class="indexterm"></a><a id="line folding/"></a
+            ><a href="#index-entry-line folding"
+            ><i class="firstterm"
+            >Line folding</i></a
+          > allows long
+            lines to be broken for readability, while retaining the original
+            semantics of a single long line. When folding is done, any <a id="id2522382" class="indexterm"></a><a href="#line break character/">line break</a> ending an
+            <a id="id2522396" class="indexterm"></a><a href="#empty line/">empty line</a> is preserved. In
+            addition, any <a id="id2522409" class="indexterm"></a><a href="#specific line break/">specific line
+            breaks</a> are also preserved, even when ending a
+            non-<a id="id2522424" class="indexterm"></a><a href="#empty line/">empty line</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[81]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-l-folded-specific(n,s)"></a>b-l-folded-specific(n,s)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#b-specific">b-specific</a>
+                <a href="#l-empty(n,s)">l-empty(n,s)</a>*
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            Hence, folding only applies to <a id="id2522466" class="indexterm"></a><a href="#generic line break/">generic line breaks</a> that end non-<a id="id2522480" class="indexterm"></a><a href="#empty line/">empty lines</a>. If the following line
+            is also not <a id="id2522493" class="indexterm"></a><a href="#empty line/">empty</a>, the
+            <a id="id2522505" class="indexterm"></a><a href="#generic line break/">generic line break</a>
+            is converted to a single space (<b class="userinput"><tt>#x20</tt></b>).
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[82]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-l-folded-as-space"></a>b-l-folded-as-space</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#b-generic">b-generic</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            If the following line is <a id="id2522549" class="indexterm"></a><a href="#empty line/">empty
+            line</a>, the <a id="id2522562" class="indexterm"></a><a href="#generic line break/">generic
+            line break</a> is ignored.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[83]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-l-folded-trimmed(n,s)"></a>b-l-folded-trimmed(n,s)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#b-ignored-generic">b-ignored-generic</a>
+                <a href="#l-empty(n,s)">l-empty(n,s)</a>+
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            Thus, a folded non-<a id="id2522605" class="indexterm"></a><a href="#empty line/">empty
+            line</a> may end with one of three possible folded line break
+            forms. The original form of such a folded line break is a <a id="id2522620" class="indexterm"></a><a href="#presentation detail/">presentation detail</a> and
+            must not be used to convey <a id="id2522635" class="indexterm"></a><a href="#content/information model">node's content information</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[84]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="b-l-folded-any(n,s)"></a>b-l-folded-any(n,s)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  <a href="#b-l-folded-specific(n,s)">b-l-folded-specific(n,s)</a><br />
+                | <a href="#b-l-folded-as-space">b-l-folded-as-space</a><br />
+                | <a href="#b-l-folded-trimmed(n,s)">b-l-folded-trimmed(n,s)</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2522685"></a>
+              <p class="title">
+                <b>Example 4.23. Line Folding</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">&gt;-<br />  specific<tt class="filename">&#8659;</tt>
+  trimmed<tt class="literal">&#8595;
+··&#8595;
+·&#8595;
+&#8595;</tt>
+  as<span class="property">&#8595;</span>
+  space
+</span></pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />--- !!str
+"specific\L\
+ trimmed\n\n\n\
+ as space"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#b-l-folded-specific(n,s)">b-l-folded-specific(n,s)</a></tt>
+  <tt class="literal"><a href="#b-l-folded-as-space">b-l-folded-as-space</a></tt>
+  <span class="property"><a href="#b-l-folded-trimmed(n,s)">b-l-folded-trimmed(n,s)</a></span>
+</pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <p>
+          The above rules are common to both the <a id="id2522792" class="indexterm"></a><a href="#folded style/syntax">folded block style</a> and the
+          <a id="id2522808" class="indexterm"></a><a href="#flow scalar style/syntax">scalar flow
+          styles</a>. Folding does distinguish between the <a id="id2522827" class="indexterm"></a><a href="#folded style/syntax">folded block
+          style</a> and the <a id="id2522843" class="indexterm"></a><a href="#flow scalar style/syntax">scalar flow styles</a> in the following way:
+        </p>
+            <div class="variablelist">
+              <dl>
+                <dt>
+                  <span class="term">Block Folding</span>
+                </dt>
+                <dd>
+                  <p>
+                In the <a id="id2522872" class="indexterm"></a><a href="#folded style/syntax">folded block style</a>, folding does
+                not apply to <a id="id2522889" class="indexterm"></a><a href="#line break character/">line
+                breaks</a> or <a id="id2522902" class="indexterm"></a><a href="#empty line/">empty
+                lines</a> that preced or follow a text line containing
+                leading <a id="id2522917" class="indexterm"></a><a href="#white space/">white space</a>.
+                Note that such a line may consist of only such leading <a id="id2522931" class="indexterm"></a><a href="#white space/">white space</a>; an <a id="id2522944" class="indexterm"></a><a href="#empty line/">empty</a> <a id="id2522956" class="indexterm"></a><a href="#block style/syntax">block</a> line is confined to
+                (optional) <a id="id2522973" class="indexterm"></a><a href="#indentation space/">indentation</a> spaces only. Further, the final
+                <a id="id2522987" class="indexterm"></a><a href="#line break character/">line break</a>
+                and <a id="id2523000" class="indexterm"></a><a href="#empty line/">empty lines</a> are
+                subject to <a id="id2523013" class="indexterm"></a><a href="#chomping/">chomping</a>, and
+                are never folded. The combined effect of these rules is that
+                each &#8220;<span class="quote">paragraph</span>&#8221; is interpreted as a line,
+                <a id="id2523032" class="indexterm"></a><a href="#empty line/">empty lines</a> are used to
+                <a id="id2523045" class="indexterm"></a><a href="#present/">present</a> a line feed, the
+                formatting of <a id="id2523058" class="indexterm"></a><a href="#more indented line/">&#8220;<span class="quote">more
+                indented</span>&#8221; lines</a> is preserved, and final
+                <a id="id2523075" class="indexterm"></a><a href="#line break character/">line breaks</a>
+                may be included or excluded from the <a id="id2523089" class="indexterm"></a><a href="#content/information model">node's content
+                information</a> as appropriate.
+              </p>
+                </dd>
+                <dt>
+                  <span class="term">Flow Folding</span>
+                </dt>
+                <dd>
+                  <p>
+                Folding in <a id="id2523120" class="indexterm"></a><a href="#flow style/syntax">flow styles</a> provides more relaxed,
+                less powerful semantics. <a id="id2523136" class="indexterm"></a><a href="#flow style/syntax">Flow styles</a> typically depend on
+                explicit <a id="id2523152" class="indexterm"></a><a href="#indicator/">indicators</a> to
+                convey structure, rather than <a id="id2523165" class="indexterm"></a><a href="#indentation space/">indentation</a>. Hence, in <a id="id2523179" class="indexterm"></a><a href="#flow style/syntax">flow styles</a>, spaces
+                preceding or following the text in a line are a <a id="id2523196" class="indexterm"></a><a href="#presentation detail/">presentation detail</a> and
+                must not be considered a part of the <a id="id2523210" class="indexterm"></a><a href="#content/information model">node's content
+                information</a>. Once all such spaces have been
+                discarded, folding proceeds as described above. In contrast
+                with the <a id="id2523228" class="indexterm"></a><a href="#folded style/syntax">block folded style</a>, all <a id="id2523244" class="indexterm"></a><a href="#line break character/">line breaks</a> are
+                folded, without exception, and a line consisting only of spaces
+                is considered to be an <a id="id2523259" class="indexterm"></a><a href="#empty line/">empty
+                line</a>, regardless of the number of spaces. The
+                combined effect of these processing rules is that each
+                &#8220;<span class="quote">paragraph</span>&#8221; is interpreted as a line, <a id="id2523278" class="indexterm"></a><a href="#empty line/">empty lines</a> are used to <a id="id2523291" class="indexterm"></a><a href="#present/">present</a> a line feed, and text can
+                be freely <a id="id2523304" class="indexterm"></a><a href="#more indented line/">&#8220;<span class="quote">more
+                indented</span>&#8221;</a> without affecting the <a id="id2523319" class="indexterm"></a><a href="#content/information model">node's content
+                information</a>.
+              </p>
+                </dd>
+              </dl>
+            </div>
+          </div>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2523342"></a>4.3. YAML Character Stream</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+        A YAML character <a id="id2523350" class="indexterm"></a><a href="#stream/syntax">stream</a> may contain several YAML <a id="id2523366" class="indexterm"></a><a href="#document/syntax">documents</a>, denoted by
+        <a id="id2523382" class="indexterm"></a><a href="#document boundary marker/">document boundary
+        markers</a>. Each <a id="id2523396" class="indexterm"></a><a href="#document/syntax">document</a> <a id="id2523411" class="indexterm"></a><a href="#present/">presents</a> a single independent <a id="id2523423" class="indexterm"></a><a href="#root node/">root node</a> and may be preceded by a series
+        of <a id="id2523437" class="indexterm"></a><a href="#directive/syntax">directives</a>.
+      </p>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2523453"></a>4.3.1. Directives</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            <a id="id2523461" class="indexterm"></a><a id="directive/syntax"></a
+            ><a href="#index-entry-directive"
+            ><i class="firstterm"
+            >Directives</i></a
+          > are instructions to the
+            YAML <a id="id2523479" class="indexterm"></a><a href="#processor/">processor</a>. Like
+            <a id="id2523491" class="indexterm"></a><a href="#comment/syntax">comments</a>,
+            directives are <a id="id2523507" class="indexterm"></a><a href="#presentation detail/">presentation
+            details</a> and are not reflected in the <a id="id2523522" class="indexterm"></a><a href="#serialization/">serialization tree</a> (and hence the
+            <a id="id2523535" class="indexterm"></a><a href="#representation/">representation graph</a>).
+            This specification defines two directives, <a id="id2523549" class="indexterm"></a><a href="#YAML directive/">&#8220;<span class="quote"><b class="userinput"><tt>YAML</tt></b></span>&#8221;</a> and <a id="id2523567" class="indexterm"></a><a href="#TAG directive/">&#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221;</a>, and
+            <a id="id2523584" class="indexterm"></a><a id="reserved directive/"></a
+            ><a href="#index-entry-reserved directive"
+            ><i class="firstterm"
+            >reserves</i></a
+          > all other
+            directives for future use. There is no way to define private
+            directives. This is intentional.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[85]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="l-directive"></a>l-directive</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#l-yaml-directive">l-yaml-directive</a>
+                | <a href="#l-tag-directive">l-tag-directive</a>
+                | <a href="#l-reserved-directive">l-reserved-directive</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            Each directive is specified on a separate non-<a id="id2523635" class="indexterm"></a><a href="#indentation space/">indented</a> line starting with
+            the <a id="id2523649" class="indexterm"></a><a id="% directive/"></a
+            ><a href="#index-entry-% directive"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>%</tt></b></span>&#8221;
+            indicator</i></a
+          >, followed by the directive name and a
+            space-separated list of parameters. The semantics of these tokens
+            depend on the specific directive. A YAML <a id="id2523672" class="indexterm"></a><a href="#processor/">processor</a> should ignore unknown
+            directives with an appropriate warning.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[86]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="l-reserved-directive"></a>l-reserved-directive</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-directive">&#8220;<span class="quote">%</span>&#8221;</a>
+                <a href="#ns-directive-name">ns-directive-name</a><br />
+                ( <a href="#s-ignored-space">s-ignored-space</a>+
+                  <a href="#ns-directive-parameter">ns-directive-parameter</a> )*<br />
+                <a href="#s-l-comments">s-l-comments</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[87]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-directive-name"></a>ns-directive-name</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#ns-char">ns-char</a>+
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[88]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-directive-parameter"></a>ns-directive-parameter</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#ns-char">ns-char</a>+
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2523766"></a>
+              <p class="title">
+                <b>Example 4.24. Reserved Directives</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><span class="honorific"><tt class="filename">%<tt class="literal">FOO</tt>  <span class="property">bar</span> <span class="property">baz</span> # Should be ignored<br />               # with a warning.</tt></span>
+--- "foo"
+</span></pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />--- !!str
+"foo"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-reserved-directive">l-reserved-directive</a></tt>
+  <tt class="literal"><a href="#ns-directive-name">ns-directive-name</a></tt>
+  <span class="property"><a href="#ns-directive-parameter">ns-directive-parameter</a></span>
+</pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2523874"></a>4.3.1.1. &#8220;<span class="quote"><b class="userinput"><tt>YAML</tt></b></span>&#8221; Directive</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              The <a id="id2523888" class="indexterm"></a><a id="YAML directive/"></a
+            ><a href="#index-entry-YAML directive"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>YAML</tt></b></span>&#8221;
+              directive</i></a
+          > specifies the version of YAML the <a id="id2523909" class="indexterm"></a><a href="#document/syntax">document</a> adheres
+              to. This specification defines version &#8220;<span class="quote"><b class="userinput"><tt>1.1</tt></b></span>&#8221;. A
+              version 1.1 YAML <a id="id2523933" class="indexterm"></a><a href="#processor/">processor</a>
+              should accept <a id="id2523945" class="indexterm"></a><a href="#document/syntax">documents</a> with an explicit
+              &#8220;<span class="quote"><b class="userinput"><tt>%YAML 1.1</tt></b></span>&#8221; directive, as well as <a id="id2523969" class="indexterm"></a><a href="#document/syntax">documents</a> lacking
+              a &#8220;<span class="quote"><b class="userinput"><tt>YAML</tt></b></span>&#8221; directive. <a id="id2523991" class="indexterm"></a><a href="#document/syntax">Documents</a> with a
+              &#8220;<span class="quote"><b class="userinput"><tt>YAML</tt></b></span>&#8221; directive specifying a higher minor version
+              (e.g. &#8220;<span class="quote"><b class="userinput"><tt>%YAML 1.2</tt></b></span>&#8221;) should be processed with
+              an appropriate warning. <a id="id2524023" class="indexterm"></a><a href="#document/syntax">Documents</a> with a
+              &#8220;<span class="quote"><b class="userinput"><tt>YAML</tt></b></span>&#8221; directive specifying a higher major version
+              (e.g. &#8220;<span class="quote"><b class="userinput"><tt>%YAML 2.0</tt></b></span>&#8221;) should be rejected with an
+              appropriate error message.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[89]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-yaml-directive"></a>l-yaml-directive</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-directive">&#8220;<span class="quote">%</span>&#8221;</a>
+                  &#8220;<span class="quote">Y</span>&#8221; &#8220;<span class="quote">A</span>&#8221;
+                  &#8220;<span class="quote">M</span>&#8221; &#8220;<span class="quote">L</span>&#8221; <br />
+                  <a href="#s-ignored-space">s-ignored-space</a>+
+                  <a href="#ns-yaml-version">ns-yaml-version</a><br />
+                  <a href="#s-l-comments">s-l-comments</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[90]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-yaml-version"></a>ns-yaml-version</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-dec-digit">ns-dec-digit</a>+
+                  &#8220;<span class="quote">.</span>&#8221;
+                  <a href="#ns-dec-digit">ns-dec-digit</a>+
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2524135"></a>
+                <p class="title">
+                  <b>Example 4.25. &#8220;<span class="quote"><b class="userinput"><tt>YAML</tt></b></span>&#8221; directive</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"><span class="honorific"><tt class="filename">%YAML <tt class="literal">1.2</tt> # Attempt parsing<br />           # with a warning</tt></span>
+---
+"foo"
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "foo"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-yaml-directive">l-yaml-directive</a></tt> <tt class="literal"><a href="#ns-yaml-version">ns-yaml-version</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              It is an error to specify more than one
+              &#8220;<span class="quote"><b class="userinput"><tt>YAML</tt></b></span>&#8221; directive for the same document, even if
+              both occurences give the same version number.
+            </p>
+              <div class="example">
+                <a id="id2524239"></a>
+                <p class="title">
+                  <b>Example 4.26. Invalid Repeated YAML directive</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="screen"><span class="database">%YAML 1.1<br />%<tt class="filename">YAML</tt> 1.1
+foo
+</span></pre>
+                </td>
+                    <td>
+<pre class="screen"><span class="database">ERROR:<br />The <tt class="filename">YAML</tt> directive must only be
+given at most once per document.
+</span></pre>
+                </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2524297"></a>4.3.1.2. &#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221; Directive</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              The <a id="id2524311" class="indexterm"></a><a id="TAG directive/"></a
+            ><a href="#index-entry-TAG directive"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221;
+              directive</i></a
+          > establishes a <a id="id2524331" class="indexterm"></a><a href="#tag shorthand/">shorthand</a> notation for specifying <a id="id2524345" class="indexterm"></a><a href="#tag/syntax">node tags</a>. Each
+              &#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221; directive associates a <a id="id2524367" class="indexterm"></a><a href="#tag handle/">handle</a> with a <a id="id2524380" class="indexterm"></a><a href="#tag prefix/">prefix</a>, allowing for compact and readable
+              <a id="id2524395" class="indexterm"></a><a href="#tag/syntax">tag</a> notation.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[91]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-tag-directive"></a>l-tag-directive</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-directive">&#8220;<span class="quote">%</span>&#8221;</a>
+                  &#8220;<span class="quote">T</span>&#8221; &#8220;<span class="quote">A</span>&#8221; &#8220;<span class="quote">G</span>&#8221; <br />
+                  <a href="#s-ignored-space">s-ignored-space</a>+
+                  <a href="#c-tag-handle">c-tag-handle</a><br />
+                  <a href="#s-ignored-space">s-ignored-space</a>+
+                  <a href="#ns-tag-prefix">ns-tag-prefix</a><br />
+                  <a href="#s-l-comments">s-l-comments</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2524471"></a>
+                <p class="title">
+                  <b>Example 4.27. &#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221; directive</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"><span class="honorific"><tt class="filename">%TAG <tt class="literal">!yaml!</tt> <span class="property">tag:yaml.org,2002:</span>&#8595;</tt></span><br />---
+!yaml!str "foo"
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "foo"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-tag-directive">l-tag-directive</a></tt>
+  <tt class="literal"><a href="#c-tag-handle">c-tag-handle</a></tt> <span class="property"><a href="#ns-tag-prefix">ns-tag-prefix</a></span>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              It is an error to specify more than one &#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221;
+              directive for the same <a id="id2524587" class="indexterm"></a><a href="#tag handle/">handle</a> in the same document, even if both
+              occurences give the same <a id="id2524602" class="indexterm"></a><a href="#tag prefix/">prefix</a>.
+            </p>
+              <div class="example">
+                <a id="id2524616"></a>
+                <p class="title">
+                  <b>Example 4.28. Invalid Repeated TAG directive</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="screen"><span class="database">%TAG ! !foo<br />%TAG <tt class="filename">!</tt> !foo
+bar
+</span></pre>
+                </td>
+                    <td>
+<pre class="screen"><span class="database">ERROR:<br />The TAG directive must only
+be given at most once per
+<tt class="filename">handle</tt> in the same document.
+</span></pre>
+                </td>
+                  </tr>
+                </table>
+              </div>
+              <div class="sect4" lang="en" xml:lang="en">
+                <div class="titlepage">
+                  <div>
+                    <div>
+                      <h5 class="title"><a id="id2524672"></a>4.3.1.2.1. Tag Prefixes</h5>
+                    </div>
+                  </div>
+                  <div></div>
+                </div>
+                <p>
+                There are two <a id="id2524681" class="indexterm"></a><a id="tag prefix/"></a
+            ><a href="#index-entry-tag prefix"
+            ><i class="firstterm"
+            >tag
+                prefix</i></a
+          > variants:
+              </p>
+                <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                  <tr>
+                    <td>
+                      <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                        <tr>
+                          <td align="left" valign="top" class="productioncounter">[92]</td>
+                          <td align="right" valign="top" class="productionlhs"><a id="ns-tag-prefix"></a>ns-tag-prefix</td>
+                          <td valign="top" class="productionseperator" align="center">
+                            <tt>::=</tt>
+                          </td>
+                          <td valign="top" class="productionrhs">
+                    <a href="#ns-local-tag-prefix">ns-local-tag-prefix</a>
+                    | <a href="#ns-global-tag-prefix">ns-global-tag-prefix</a>
+                  </td>
+                          <td align="left" valign="top" class="productioncomment"> </td>
+                        </tr>
+                      </table>
+                    </td>
+                  </tr>
+                </table>
+                <div class="variablelist">
+                  <dl>
+                    <dt>
+                      <span class="term">Local Tags</span>
+                    </dt>
+                    <dd>
+                      <p>
+                      If the prefix begins with a <a id="id2524736" class="indexterm"></a><a href="#! local tag/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a> character, <a id="id2524756" class="indexterm"></a><a href="#tag shorthand/">shorthands</a> using the
+                      <a id="id2524770" class="indexterm"></a><a href="#tag handle/">handle</a> are
+                      expanded to a <a id="id2524782" class="indexterm"></a><a href="#local tag/">local
+                      tag</a> beginning with <a id="id2524796" class="indexterm"></a><a href="#! local tag/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a>. Note that such a
+                      <a id="id2524814" class="indexterm"></a><a href="#tag/syntax">tag</a>
+                      is intentionally not a valid URI, since its semantics are
+                      specific to the <a id="id2524830" class="indexterm"></a><a href="#application/">application</a>. In
+                      particular, two <a id="id2524844" class="indexterm"></a><a href="#document/syntax">documents</a> in the same
+                      <a id="id2524860" class="indexterm"></a><a href="#stream/syntax">stream</a> may assign different
+                      semantics to the same <a id="id2524876" class="indexterm"></a><a href="#local tag/">local
+                      tag</a>.
+                    </p>
+                    </dd>
+                  </dl>
+                </div>
+                <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                  <tr>
+                    <td>
+                      <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                        <tr>
+                          <td align="left" valign="top" class="productioncounter">[93]</td>
+                          <td align="right" valign="top" class="productionlhs"><a id="ns-local-tag-prefix"></a>ns-local-tag-prefix</td>
+                          <td valign="top" class="productionseperator" align="center">
+                            <tt>::=</tt>
+                          </td>
+                          <td valign="top" class="productionrhs">
+                  <a href="#c-tag">&#8220;<span class="quote">!</span>&#8221;</a>
+                    <a href="#ns-uri-char">ns-uri-char</a>*
+                  </td>
+                          <td align="left" valign="top" class="productioncomment"> </td>
+                        </tr>
+                      </table>
+                    </td>
+                  </tr>
+                </table>
+                <div class="variablelist">
+                  <dl>
+                    <dt>
+                      <span class="term">Global Tags</span>
+                    </dt>
+                    <dd>
+                      <p>
+                      If the prefix begins with a character other than <a id="id2524934" class="indexterm"></a><a href="#! local tag/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a>, it
+                      must to be a valid URI prefix, and should contain at
+                      least the scheme and the authority. <a id="id2524953" class="indexterm"></a><a href="#tag shorthand/">Shorthands</a> using the associated
+                      <a id="id2524968" class="indexterm"></a><a href="#tag handle/">handle</a> are
+                      expanded to globally unique URI tags, and their semantics
+                      is consistent across <a id="id2524982" class="indexterm"></a><a href="#application/">applications</a>. In
+                      particular, two <a id="id2524995" class="indexterm"></a><a href="#document/syntax">documents</a> in different
+                      <a id="id2525012" class="indexterm"></a><a href="#stream/syntax">streams</a> must assign the same
+                      semantics to the same <a id="id2525028" class="indexterm"></a><a href="#global tag/">global tag</a>.
+                    </p>
+                    </dd>
+                  </dl>
+                </div>
+                <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                  <tr>
+                    <td>
+                      <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                        <tr>
+                          <td align="left" valign="top" class="productioncounter">[94]</td>
+                          <td align="right" valign="top" class="productionlhs"><a id="ns-global-tag-prefix"></a>ns-global-tag-prefix</td>
+                          <td valign="top" class="productionseperator" align="center">
+                            <tt>::=</tt>
+                          </td>
+                          <td valign="top" class="productionrhs">
+                    <a href="#ns-tag-char">ns-tag-char</a>
+                    <a href="#ns-uri-char">ns-uri-char</a>*
+                  </td>
+                          <td align="left" valign="top" class="productioncomment"> </td>
+                        </tr>
+                      </table>
+                    </td>
+                  </tr>
+                </table>
+                <div class="example">
+                  <a id="id2525071"></a>
+                  <p class="title">
+                    <b>Example 4.29. Tag Prefixes</b>
+                  </p>
+                  <table class="simplelist" border="0" summary="Simple list">
+                    <tr>
+                      <td>
+<pre class="programlisting"><span class="database">%TAG !      <tt class="filename">!foo</tt><br />%TAG !yaml! <tt class="literal">tag:yaml.org,2002:</tt>
+---
+- !bar "baz"
+- !yaml!str "string"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-local-tag-prefix">ns-local-tag-prefix</a></tt> <tt class="literal"><a href="#ns-global-tag-prefix">ns-global-tag-prefix</a></tt>
+</pre>
+                </td>
+                      <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !&lt;!foobar&gt; "bar",
+  !&lt;tag:yaml.org,2002:str&gt; "string"
+]
+</span></pre>
+                </td>
+                    </tr>
+                  </table>
+                </div>
+              </div>
+              <div class="sect4" lang="en" xml:lang="en">
+                <div class="titlepage">
+                  <div>
+                    <div>
+                      <h5 class="title"><a id="id2525159"></a>4.3.1.2.2. Tag Handles</h5>
+                    </div>
+                  </div>
+                  <div></div>
+                </div>
+                <p>
+                The <a id="id2525167" class="indexterm"></a><a id="tag handle/"></a
+            ><a href="#index-entry-tag handle"
+            ><i class="firstterm"
+            >tag handle</i></a
+          > exactly
+                matches the prefix of the affected <a id="id2525182" class="indexterm"></a><a href="#tag shorthand/">shorthand</a>. There are three tag handle
+                variants:
+              </p>
+                <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                  <tr>
+                    <td>
+                      <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                        <tr>
+                          <td align="left" valign="top" class="productioncounter">[95]</td>
+                          <td align="right" valign="top" class="productionlhs"><a id="c-tag-handle"></a>c-tag-handle</td>
+                          <td valign="top" class="productionseperator" align="center">
+                            <tt>::=</tt>
+                          </td>
+                          <td valign="top" class="productionrhs">
+                      <a href="#c-primary-tag-handle">c-primary-tag-handle</a><br />
+                    | <a href="#c-secondary-tag-handle">ns-secondary-tag-handle</a><br />
+                    | <a href="#c-named-tag-handle">c-named-tag-handle</a>
+                  </td>
+                          <td align="left" valign="top" class="productioncomment"> </td>
+                        </tr>
+                      </table>
+                    </td>
+                  </tr>
+                </table>
+                <div class="variablelist">
+                  <dl>
+                    <dt>
+                      <span class="term">Primary Handle</span>
+                    </dt>
+                    <dd>
+                      <p>
+                      The <a id="id2525243" class="indexterm"></a><a id="primary tag handle/"></a
+            ><a href="#index-entry-primary tag handle"
+            ><i class="firstterm"
+            >primary tag
+                      handle</i></a
+          > is a single <a id="id2525258" class="indexterm"></a><a href="#! tag indicator/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a> character. This
+                      allows using the most compact possible notation for a
+                      single &#8220;<span class="quote">primary</span>&#8221; name space. By default, the
+                      prefix associated with this handle is <a id="id2525284" class="indexterm"></a><a href="#! local tag/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a>.
+                      Thus, by default, <a id="id2525302" class="indexterm"></a><a href="#tag shorthand/">shorthands</a> using this handle are
+                      interpreted as <a id="id2525316" class="indexterm"></a><a href="#local tag/">local
+                      tags</a>. It is possible to override this behavior
+                      by providing an explicit &#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221; directive
+                      associating a different prefix for this handle. This
+                      provides smooth migration from using <a id="id2525339" class="indexterm"></a><a href="#local tag/">local tags</a> to using
+                      <a id="id2525352" class="indexterm"></a><a href="#global tag/">global tags</a> by a
+                      simple addition of a single &#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221;
+                      directive.
+                    </p>
+                    </dd>
+                  </dl>
+                </div>
+                <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                  <tr>
+                    <td>
+                      <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                        <tr>
+                          <td align="left" valign="top" class="productioncounter">[96]</td>
+                          <td align="right" valign="top" class="productionlhs"><a id="c-primary-tag-handle"></a>c-primary-tag-handle</td>
+                          <td valign="top" class="productionseperator" align="center">
+                            <tt>::=</tt>
+                          </td>
+                          <td valign="top" class="productionrhs">
+                    <a href="#c-tag">&#8220;<span class="quote">!</span>&#8221;</a>
+                  </td>
+                          <td align="left" valign="top" class="productioncomment"> </td>
+                        </tr>
+                      </table>
+                    </td>
+                  </tr>
+                </table>
+                <div class="example">
+                  <a id="id2525400"></a>
+                  <p class="title">
+                    <b>Example 4.30. Migrating from Local to Global Tags</b>
+                  </p>
+                  <table class="simplelist" border="0" summary="Simple list">
+                    <tr>
+                      <td>
+<pre class="programlisting"><span class="database"># Private application:<br />!foo "bar"
+</span></pre>
+<pre class="programlisting"><span class="database"># Migrated to global:<br />%TAG ! tag:ben-kiki.org,2000:app/
+---
+!foo "bar"
+</span></pre>
+                </td>
+                      <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!&lt;!foo&gt; "bar"
+</span></pre>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!&lt;tag:ben-kiki.org,2000:app/foo&gt; "bar"
+</span></pre>
+                </td>
+                    </tr>
+                  </table>
+                </div>
+                <div class="variablelist">
+                  <dl>
+                    <dt>
+                      <span class="term">Secondary Handle</span>
+                    </dt>
+                    <dd>
+                      <p>
+                      The <a id="id2525484" class="indexterm"></a><a id="secondary tag handle/"></a
+            ><a href="#index-entry-secondary tag handle"
+            ><i class="firstterm"
+            >secondary tag
+                      handle</i></a
+          > is written as <a id="id2525500" class="indexterm"></a><a href="#! tag indicator/">&#8220;<span class="quote"><b class="userinput"><tt>!!</tt></b></span>&#8221;</a>. This allows
+                      using a compact notation for a single
+                      &#8220;<span class="quote">secondary</span>&#8221; name space. By default, the
+                      prefix associated with this handle is
+                      &#8220;<span class="quote"><b class="userinput"><tt>tag:yaml.org,2002:</tt></b></span>&#8221; used by the <a href="http://yaml.org/type/index.html" target="_top">YAML tag
+                      repository</a> providing recommended <a id="id2525538" class="indexterm"></a><a href="#tag/information model">tags</a> for increasing the portability of
+                      YAML <a id="id2525556" class="indexterm"></a><a href="#document/syntax">documents</a> between different
+                      <a id="id2525572" class="indexterm"></a><a href="#application/">applications</a>. It
+                      is possible to override this behavior by providing an
+                      explicit &#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221; directive associating a
+                      different prefix for this handle.
+                    </p>
+                    </dd>
+                  </dl>
+                </div>
+                <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                  <tr>
+                    <td>
+                      <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                        <tr>
+                          <td align="left" valign="top" class="productioncounter">[97]</td>
+                          <td align="right" valign="top" class="productionlhs"><a id="c-secondary-tag-handle"></a>ns-secondary-tag-handle</td>
+                          <td valign="top" class="productionseperator" align="center">
+                            <tt>::=</tt>
+                          </td>
+                          <td valign="top" class="productionrhs">
+                    <a href="#c-tag">&#8220;<span class="quote">!</span>&#8221;</a>
+                    <a href="#c-tag">&#8220;<span class="quote">!</span>&#8221;</a>
+                  </td>
+                          <td align="left" valign="top" class="productioncomment"> </td>
+                        </tr>
+                      </table>
+                    </td>
+                  </tr>
+                </table>
+                <div class="variablelist">
+                  <dl>
+                    <dt>
+                      <span class="term">Named Handles</span>
+                    </dt>
+                    <dd>
+                      <p>
+                      A <a id="id2525640" class="indexterm"></a><a id="named tag handle/"></a
+            ><a href="#index-entry-named tag handle"
+            ><i class="firstterm"
+            >named tag
+                      handle</i></a
+          > surrounds the non-empty name with
+                      <a id="id2525656" class="indexterm"></a><a id="! named handle/"></a
+            ><a href="#index-entry-! named handle"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</i></a
+          > characters. A handle
+                      name must only be used in a <a id="id2525677" class="indexterm"></a><a href="#tag shorthand/">shorthand</a> if an explicit
+                      &#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221; directive has associated some prefix
+                      with it. The name of the handle is a <a id="id2525699" class="indexterm"></a><a href="#presentation detail/">presentation
+                      detail</a> and is not part of the <a id="id2525713" class="indexterm"></a><a href="#content/information model">node's
+                      content information</a>. In particular, the YAML
+                      <a id="id2525730" class="indexterm"></a><a href="#processor/">processor</a> need not
+                      preserve the handle name once <a id="id2525744" class="indexterm"></a><a href="#parse/">parsing</a> is completed.
+                    </p>
+                    </dd>
+                  </dl>
+                </div>
+                <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                  <tr>
+                    <td>
+                      <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                        <tr>
+                          <td align="left" valign="top" class="productioncounter">[98]</td>
+                          <td align="right" valign="top" class="productionlhs"><a id="c-named-tag-handle"></a>c-named-tag-handle</td>
+                          <td valign="top" class="productionseperator" align="center">
+                            <tt>::=</tt>
+                          </td>
+                          <td valign="top" class="productionrhs">
+                    <a href="#c-tag">&#8220;<span class="quote">!</span>&#8221;</a>
+                    <a href="#ns-word-char">ns-word-char</a>+
+                    <a href="#c-tag">&#8220;<span class="quote">!</span>&#8221;</a>
+                  </td>
+                          <td align="left" valign="top" class="productioncomment"> </td>
+                        </tr>
+                      </table>
+                    </td>
+                  </tr>
+                </table>
+                <div class="example">
+                  <a id="id2525794"></a>
+                  <p class="title">
+                    <b>Example 4.31. Tag Handles</b>
+                  </p>
+                  <table class="simplelist" border="0" summary="Simple list">
+                    <tr>
+                      <td>
+<pre class="programlisting"><span class="database"># Explicitly specify default settings:<br />%TAG <tt class="filename">!</tt>     !
+%TAG <tt class="literal">!!</tt>    tag:yaml.org,2002:
+# Named handles have no default:
+%TAG <span class="property">!o!</span> tag:ben-kiki.org,2000:
+---
+- !foo "bar"
+- !!str "string"
+- !o!type "baz"
+</span></pre>
+                </td>
+                      <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !&lt;!foo&gt; "bar",
+  !&lt;tag:yaml.org,2002:str&gt; "string"
+  !&lt;tag:ben-kiki.org,2000:type&gt; "baz"
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-primary-tag-handle">c-primary-tag-handle</a></tt>
+  <tt class="literal"><a href="#c-secondary-tag-handle">c-secondary-tag-handle</a></tt>
+  <span class="property"><a href="#c-named-tag-handle">c-named-tag-handle</a></span>
+</pre>
+                </td>
+                    </tr>
+                  </table>
+                </div>
+              </div>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2525905"></a>4.3.2. Document Boundary Markers</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            YAML <a id="id2525913" class="indexterm"></a><a href="#stream/syntax">streams</a>
+            use <a id="id2525929" class="indexterm"></a><a id="document boundary marker/"></a
+            ><a href="#index-entry-document boundary marker"
+            ><i class="firstterm"
+            >document boundary
+            markers</i></a
+          > to allow more than one <a id="id2525944" class="indexterm"></a><a href="#document/syntax">document</a> to be
+            contained in the same <a id="id2525961" class="indexterm"></a><a href="#stream/syntax">stream</a>. Such markers are a <a id="id2525976" class="indexterm"></a><a href="#presentation detail/">presentation detail</a> and are
+            used exclusively to convey structure. A line beginning with
+            &#8220;<span class="quote"><b class="userinput"><tt>---</tt></b></span>&#8221; may be used to explicitly denote the beginning
+            of a new YAML <a id="id2525999" class="indexterm"></a><a href="#document/syntax">document</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[99]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-document-start"></a>c-document-start</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">-</span>&#8221; &#8220;<span class="quote">-</span>&#8221; &#8220;<span class="quote">-</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            When YAML is used as the format of a communication channel, it is
+            useful to be able to indicate the end of a <a id="id2526046" class="indexterm"></a><a href="#document/syntax">document</a> without
+            closing the <a id="id2526062" class="indexterm"></a><a href="#stream/syntax">stream</a>, independent of starting the
+            next <a id="id2526078" class="indexterm"></a><a href="#document/syntax">document</a>. Lacking such a marker, the
+            YAML <a id="id2526094" class="indexterm"></a><a href="#processor/">processor</a> reading the
+            <a id="id2526106" class="indexterm"></a><a href="#stream/syntax">stream</a> would
+            be forced to wait for the header of the next <a id="id2526122" class="indexterm"></a><a href="#document/syntax">document</a> (that may
+            be long time in coming) in order to detect the end of the previous
+            one. To support this scenario, a YAML <a id="id2526140" class="indexterm"></a><a href="#document/syntax">document</a> may be terminated by an
+            explicit end line denoted by &#8220;<span class="quote"><b class="userinput"><tt>...</tt></b></span>&#8221;, followed by
+            optional <a id="id2526163" class="indexterm"></a><a href="#comment/syntax">comments</a>. To ease the task of
+            concatenating YAML <a id="id2526180" class="indexterm"></a><a href="#stream/syntax">streams</a>, the end marker may be
+            repeated.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[100]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-document-end"></a>c-document-end</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                &#8220;<span class="quote">.</span>&#8221; &#8220;<span class="quote">.</span>&#8221; &#8220;<span class="quote">.</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[101]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="l-document-suffix"></a>l-document-suffix</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                ( <a href="#c-document-end">c-document-end</a>
+                <a href="#s-l-comments">s-l-comments</a> )+
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2526244"></a>
+              <p class="title">
+                <b>Example 4.32. Document Boundary Markers</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><tt class="filename">---</tt>&#8595;<br />foo
+<tt class="literal">...
+# Repeated end marker.
+...&#8595;</tt>
+<tt class="filename">---</tt>&#8595;
+bar
+# No end marker.
+<tt class="filename">---</tt>&#8595;
+baz
+<tt class="literal">...&#8595;</tt>
+</span></pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "foo"
+%YAML 1.1
+---
+!!str "bar"
+%YAML 1.1
+---
+!!str "baz"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-document-start">c-document-start</a></tt> <tt class="literal"><a href="#l-document-suffix">l-document-suffix</a></tt>
+</pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2526349"></a>4.3.3. Documents</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          A YAML <a id="id2526357" class="indexterm"></a><a id="document/syntax"></a
+            ><a href="#index-entry-document"
+            ><i class="firstterm"
+            >document</i></a
+          > is a single native data
+          structure <a id="id2526375" class="indexterm"></a><a href="#present/">presented</a> as a single
+          <a id="id2526387" class="indexterm"></a><a href="#root node/">root</a> <a id="id2526400" class="indexterm"></a><a href="#node/syntax">node</a>. <a id="id2526414" class="indexterm"></a><a href="#presentation detail/">Presentation details</a> such as <a id="id2526429" class="indexterm"></a><a href="#directive/syntax">directives</a>, <a id="id2526444" class="indexterm"></a><a href="#comment/syntax">comments</a>, <a id="id2526459" class="indexterm"></a><a href="#indentation space/">indentation</a> and <a id="id2526472" class="indexterm"></a><a href="#style/">styles</a> are not considered part of the
+          <a id="id2526485" class="indexterm"></a><a href="#content/information model">content
+          information</a> of the document.
+        </p>
+            <div class="variablelist">
+              <dl>
+                <dt>
+                  <span class="term">Explicit Documents</span>
+                </dt>
+                <dd>
+                  <p>
+                  An <a id="id2526515" class="indexterm"></a><a id="explicit document/"></a
+            ><a href="#index-entry-explicit document"
+            ><i class="firstterm"
+            >explicit
+                  document</i></a
+          > begins with a <a id="id2526530" class="indexterm"></a><a href="#document boundary marker/">document start marker</a> followed by
+                  the <a id="id2526545" class="indexterm"></a><a href="#presentation/">presentation</a> of
+                  the <a id="id2526558" class="indexterm"></a><a href="#root node/">root node</a>. The
+                  <a id="id2526571" class="indexterm"></a><a href="#node/syntax">node</a> may
+                  begin in the same line as the <a id="id2526587" class="indexterm"></a><a href="#document boundary marker/">document start marker</a>. If the
+                  explicit document's <a id="id2526602" class="indexterm"></a><a href="#node/syntax">node</a> is <a id="id2526617" class="indexterm"></a><a href="#completely empty node/">completely empty</a>,
+                  it is assumed to be an empty <a id="id2526633" class="indexterm"></a><a href="#plain style/syntax">plain scalar</a> with no specified
+                  <a id="id2526649" class="indexterm"></a><a href="#node property/">properties</a>.
+                  Optional <a id="id2526664" class="indexterm"></a><a href="#document boundary marker/">document
+                  end marker(s)</a> may follow the document.
+                </p>
+                </dd>
+              </dl>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[102]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="l-explicit-document"></a>l-explicit-document</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-document-start">c-document-start</a><br />
+                ( <a href="#s-l+block-node(n,c)">s-l+block-node(-1,block-in)</a>
+                | <a href="#s-l-empty-block">s-l-empty-block</a> )<br />
+                <a href="#l-document-suffix">l-document-suffix</a>?
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="variablelist">
+              <dl>
+                <dt>
+                  <span class="term">Implicit Documents</span>
+                </dt>
+                <dd>
+                  <p>
+                  An <a id="id2526734" class="indexterm"></a><a id="implicit document/"></a
+            ><a href="#index-entry-implicit document"
+            ><i class="firstterm"
+            >implicit
+                  document</i></a
+          > does not begin with a <a id="id2526749" class="indexterm"></a><a href="#document boundary marker/">document start
+                  marker</a>. In this case, the <a id="id2526763" class="indexterm"></a><a href="#root node/">root node</a> must not be <a id="id2526777" class="indexterm"></a><a href="#present/">presented</a> as a <a id="id2526789" class="indexterm"></a><a href="#completely empty node/">completely empty
+                  node</a>. Again, optional <a id="id2526804" class="indexterm"></a><a href="#document boundary marker/">document end marker(s)</a> may follow
+                  the document.
+                </p>
+                </dd>
+              </dl>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[103]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="l-implicit-document"></a>l-implicit-document</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#s-ignored-space">s-ignored-space</a>*
+                <a href="#ns-l+block-node(n,c)">ns-l+block-node(-1,block-in)</a><br />
+                <a href="#l-document-suffix">l-document-suffix</a>?
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+          In general, the document's <a id="id2526858" class="indexterm"></a><a href="#node/syntax">node</a> is <a id="id2526873" class="indexterm"></a><a href="#indentation space/">indented</a> as if it has a parent <a id="id2526888" class="indexterm"></a><a href="#indentation space/">indented</a> at -1 spaces. Since a
+          <a id="id2526901" class="indexterm"></a><a href="#node/syntax">node</a> must be
+          more <a id="id2526916" class="indexterm"></a><a href="#indentation space/">indented</a> that its
+          parent <a id="id2526929" class="indexterm"></a><a href="#node/syntax">node</a>,
+          this allows the document's <a id="id2526945" class="indexterm"></a><a href="#node/syntax">node</a> to be <a id="id2526960" class="indexterm"></a><a href="#indentation space/">indented</a> at zero or more spaces. Note that <a id="id2526974" class="indexterm"></a><a href="#flow scalar style/syntax">flow scalar</a>
+          continuation lines must be <a id="id2526990" class="indexterm"></a><a href="#indentation space/">indented</a> by at least one space, even if their first
+          line is not <a id="id2527005" class="indexterm"></a><a href="#indentation space/">indented</a>.
+        </p>
+            <div class="example">
+              <a id="id2527018"></a>
+              <p class="title">
+                <b>Example 4.33. Documents</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><tt class="filename">"Root flow<br /> scalar"</tt>
+--- <tt class="literal">!!str &gt;
+ Root block
+ scalar</tt>
+---
+# Root collection:
+<tt class="literal">foo : bar
+... # Is optional.</tt>
+---
+# Explicit document may be empty.
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-implicit-document">l-implicit-document</a></tt> <tt class="literal"><a href="#l-explicit-document">l-explicit-document</a></tt>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "Root flow scalar"
+%YAML 1.1
+---
+!!str "Root block scalar"
+%YAML 1.1
+---
+!!map {
+  ? !!str "foo"
+  : !!str "bar"
+}
+---
+!!str ""
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2527114"></a>4.3.4. Complete Stream</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            A sequence of bytes is a YAML character <a id="id2527122" class="indexterm"></a><a id="stream/syntax"></a
+            ><a href="#index-entry-stream"
+            ><i class="firstterm"
+            >stream</i></a
+          > if, taken as a whole, it
+            complies with the <a href="#l-yaml-stream"><b class="userinput"><tt>l-yaml-stream</tt></b></a>
+            production. The stream begins with a prefix containing an optional
+            <a id="id2527153" class="indexterm"></a><a href="#byte order mark/">byte order mark</a>
+            denoting its <a id="id2527167" class="indexterm"></a><a href="#character encoding/">character
+            encoding</a>, followed by optional <a id="id2527182" class="indexterm"></a><a href="#comment/syntax">comments</a>. Note that the stream may
+            contain no <a id="id2527198" class="indexterm"></a><a href="#document/syntax">documents</a>, even if it contains a
+            non-empty prefix. In particular, a stream containing no chareacters
+            is valid and contains no <a id="id2527215" class="indexterm"></a><a href="#document/syntax">documents</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[104]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="l-yaml-stream"></a>l-yaml-stream</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-byte-order-mark">c-byte-order-mark</a>?
+                <a href="#l-comment">l-comment</a>*<br />
+                ( <a href="#l-first-document">l-first-document</a>
+                <a href="#l-next-document">l-next-document</a>* )?
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2527268"></a>
+              <p class="title">
+                <b>Example 4.34. Empty Stream</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><tt class="filename">&#8660;# A stream may contain<br /># no documents.</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-yaml-stream">l-yaml-stream</a></tt>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database"># This stream contains no<br /># documents, only comments.
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <p>
+            The first <a id="id2527337" class="indexterm"></a><a href="#document/syntax">document</a> may be <a id="id2527353" class="indexterm"></a><a href="#implicit document/">implicit</a> (omit the <a id="id2527367" class="indexterm"></a><a href="#document boundary marker/">document start
+            marker</a>). In such a case it must not specify any <a id="id2527381" class="indexterm"></a><a href="#directive/syntax">directives</a> and
+            will be <a id="id2527397" class="indexterm"></a><a href="#parse/">parsed</a> using the default
+            settings. If the <a id="id2527410" class="indexterm"></a><a href="#document/syntax">document</a> is <a id="id2527425" class="indexterm"></a><a href="#explicit document/">explicit</a> (begins with an <a id="id2527440" class="indexterm"></a><a href="#document boundary marker/">document start
+            marker</a>), it may specify <a id="id2527455" class="indexterm"></a><a href="#directive/syntax">directives</a> to control its <a id="id2527470" class="indexterm"></a><a href="#parse/">parsing</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[105]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="l-first-document"></a>l-first-document</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                ( <a href="#l-implicit-document">l-implicit-document</a><br />
+                | ( <a href="#l-directive">l-directive</a>*
+                <a href="#l-explicit-document">l-explicit-document</a> ) )
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2527516"></a>
+              <p class="title">
+                <b>Example 4.35. First Document</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"># Implicit document. Root<br /># collection (mapping) node.
+<tt class="filename">foo : bar</tt>
+</span></pre>
+<pre class="programlisting"><span class="database"># Explicit document. Root<br /># scalar (literal) node.
+<tt class="filename">--- |
+ Text content</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-first-document">l-first-document</a></tt>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "Text content\n"
+</span></pre>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "foo"
+  : !!str "bar"
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <p>
+            To ease the task of concatenating character streams, following
+            <a id="id2527618" class="indexterm"></a><a href="#document/syntax">documents</a>
+            may begin with a <a id="id2527634" class="indexterm"></a><a href="#byte order mark/">byte order
+            mark</a> and <a id="id2527648" class="indexterm"></a><a href="#comment/syntax">comments</a>, though the same <a id="id2527663" class="indexterm"></a><a href="#character encoding/">character encoding</a> must be
+            used through the stream. Each following <a id="id2527677" class="indexterm"></a><a href="#document/syntax">document</a> must be <a id="id2527692" class="indexterm"></a><a href="#explicit document/">explicit</a> (begin with a
+            <a id="id2527706" class="indexterm"></a><a href="#document boundary marker/">document start
+            marker</a>). If the <a id="id2527720" class="indexterm"></a><a href="#document/syntax">document</a> specifies no <a id="id2527735" class="indexterm"></a><a href="#directive/syntax">directives</a>, it is
+            <a id="id2527751" class="indexterm"></a><a href="#parse/">parsed</a> using the same settings
+            as the previous <a id="id2527764" class="indexterm"></a><a href="#document/syntax">document</a>. If the <a id="id2527780" class="indexterm"></a><a href="#document/syntax">document</a> does
+            specify any <a id="id2527795" class="indexterm"></a><a href="#directive/syntax">directives</a>, all <a id="id2527811" class="indexterm"></a><a href="#directive/syntax">directives</a> of
+            previous <a id="id2527826" class="indexterm"></a><a href="#document/syntax">documents</a>, if any, are ignored.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[106]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="l-next-document"></a>l-next-document</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-byte-order-mark">c-byte-order-mark</a>?
+                <a href="#l-comment">l-comment</a>*<br />
+                <a href="#l-directive">l-directive</a>*
+                <a href="#l-explicit-document">l-explicit-document</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2527879"></a>
+              <p class="title">
+                <b>Example 4.36. Next Documents</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">! "First document"<br /><tt class="filename">---
+!foo "No directives"</tt>
+<tt class="filename">%TAG ! !foo
+---
+!bar "With directives"</tt>
+<tt class="filename">%YAML 1.1
+---
+!baz "Reset settings"</tt>
+</span></pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "First document"
+---
+!&lt;!foo&gt; "No directives"
+---
+!&lt;!foobar&gt; "With directives"
+---
+!&lt;!baz&gt; "Reset settings"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-next-document">l-next-document</a></tt>
+</pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2527964"></a>4.4. Nodes</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+          Each <a id="id2527972" class="indexterm"></a><a id="node/syntax"></a
+            ><a href="#index-entry-node"
+            ><i class="firstterm"
+            >presentation
+          node</i></a
+          > may have two optional <a id="id2527989" class="indexterm"></a><a id="node property/"></a
+            ><a href="#index-entry-node property"
+            ><i class="firstterm"
+            >properties</i></a
+          >, <a id="id2528004" class="indexterm"></a><a href="#anchor/syntax">anchor</a> and <a id="id2528019" class="indexterm"></a><a href="#tag/syntax">tag</a>, in addition to its <a id="id2528033" class="indexterm"></a><a href="#content/syntax">content</a>. Node
+          properties may be specified in any order before the <a id="id2528050" class="indexterm"></a><a href="#content/syntax">node's content</a>, and
+          either or both may be omitted from the character <a id="id2528066" class="indexterm"></a><a href="#stream/syntax">stream</a>.
+        </p>
+          <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+            <tr>
+              <td>
+                <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                  <tr>
+                    <td align="left" valign="top" class="productioncounter">[107]</td>
+                    <td align="right" valign="top" class="productionlhs"><a id="c-ns-properties(n,c)"></a>c-ns-properties(n,c)</td>
+                    <td valign="top" class="productionseperator" align="center">
+                      <tt>::=</tt>
+                    </td>
+                    <td valign="top" class="productionrhs">
+                ( <a href="#c-ns-tag-property">c-ns-tag-property</a><br />
+                  (
+              <a href="#s-separate(n,c)">s-separate(n,c)</a>
+              <a href="#c-ns-anchor-property">c-ns-anchor-property</a> )? )<br />
+              | ( <a href="#c-ns-anchor-property">c-ns-anchor-property</a><br />
+                  (
+              <a href="#s-separate(n,c)">s-separate(n,c)</a>
+              <a href="#c-ns-tag-property">c-ns-tag-property</a> )? )
+            </td>
+                    <td align="left" valign="top" class="productioncomment"> </td>
+                  </tr>
+                </table>
+              </td>
+            </tr>
+          </table>
+          <div class="example">
+            <a id="id2528136"></a>
+            <p class="title">
+              <b>Example 4.37. Node Properties</b>
+            </p>
+            <table class="simplelist" border="0" summary="Simple list">
+              <tr>
+                <td>
+<pre class="programlisting"><span class="database"><span class="honorific"><span class="property"><tt class="literal">!!str</tt><br /> <tt class="filename">&amp;a1</tt></span></span>&#8595;
+  "foo" : <span class="honorific"><span class="property"><tt class="literal">!!str</tt></span></span> bar
+<span class="honorific"><span class="property"><tt class="filename">&amp;a2</tt></span></span> baz : *a1
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-ns-anchor-property">c-ns-anchor-property</a></tt> <tt class="literal"><a href="#c-ns-tag-property">c-ns-tag-property</a></tt>
+  <span class="property"><a href="#c-ns-properties(n,c)">c-ns-properties(n,c)</a></span>
+</pre>
+          </td>
+                <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? &amp;A1 !!str "foo"
+  : !!str "bar",
+  ? !!str &amp;A2 "baz"
+  : *a1
+}
+</span></pre>
+          </td>
+              </tr>
+            </table>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2528258"></a>4.4.1. Node Anchors</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            The <a id="id2528267" class="indexterm"></a><a id="anchor/syntax"></a
+            ><a href="#index-entry-anchor"
+            ><i class="firstterm"
+            >anchor
+            property</i></a
+          > marks a <a id="id2528284" class="indexterm"></a><a href="#node/syntax">node</a> for future reference. An anchor
+            is denoted by the <a id="id2528300" class="indexterm"></a><a id="&amp; anchor/"></a
+            ><a href="#index-entry-&amp; anchor"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>&amp;</tt></b></span>&#8221; indicator</i></a
+          >. An <a id="id2528320" class="indexterm"></a><a href="#alias/syntax">alias node</a> can then be
+            used to indicate additional inclusions of the anchored node by
+            specifying its anchor. An anchored node need not be referenced by
+            any <a id="id2528339" class="indexterm"></a><a href="#alias/syntax">alias
+            node</a>; in particular, it is valid for all <a id="id2528355" class="indexterm"></a><a href="#node/syntax">nodes</a> to be anchored.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[108]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-ns-anchor-property"></a>c-ns-anchor-property</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-anchor">&#8220;<span class="quote">&amp;</span>&#8221;</a>
+                <a href="#ns-anchor-name">ns-anchor-name</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <p>
+            Note that as a <a id="id2528401" class="indexterm"></a><a href="#serialization detail/">serialization detail</a>, the anchor name is
+            preserved in the <a id="id2528416" class="indexterm"></a><a href="#serialization/">serialization
+            tree</a>. However, it is not reflected in the <a id="id2528430" class="indexterm"></a><a href="#representation/">representation</a> graph and must
+            not be used to convey <a id="id2528443" class="indexterm"></a><a href="#content/information model">content information</a>. In
+            particular, the YAML <a id="id2528460" class="indexterm"></a><a href="#processor/">processor</a> need not preserve the
+            anchor name once the <a id="id2528474" class="indexterm"></a><a href="#representation/">representation</a> is <a id="id2528487" class="indexterm"></a><a href="#compose/">composed</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[109]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-anchor-name"></a>ns-anchor-name</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#ns-char">ns-char</a>+
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2528521"></a>
+              <p class="title">
+                <b>Example 4.38. Node Anchors</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">First occurence: <span class="honorific"><tt class="filename">&amp;<tt class="literal">anchor</tt></tt></span> Value<br />Second occurence: *<tt class="literal">anchor</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-ns-anchor-property">c-ns-anchor-property</a></tt>
+  <tt class="literal"><a href="#ns-anchor-name">ns-anchor-name</a></tt>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "First occurence"
+  : &amp;A !!str "Value",
+  ? !!str "Second occurence"
+  : *A
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2528616"></a>4.4.2. Node Tags</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            The <a id="id2528624" class="indexterm"></a><a id="tag/syntax"></a
+            ><a href="#index-entry-tag"
+            ><i class="firstterm"
+            >tag
+            property</i></a
+          > identifies the type of the native data structure
+            <a id="id2528642" class="indexterm"></a><a href="#present/">presented</a> by the <a id="id2528655" class="indexterm"></a><a href="#node/syntax">node</a>. A tag is denoted
+            by the <a id="id2528670" class="indexterm"></a><a id="! tag indicator/"></a
+            ><a href="#index-entry-! tag indicator"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;
+            indicator</i></a
+          >. In contrast with <a id="id2528691" class="indexterm"></a><a href="#anchor/syntax">anchors</a>, tags are an inherent part of
+            the <a id="id2528708" class="indexterm"></a><a href="#representation/">representation</a>
+            graph.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[110]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-ns-tag-property"></a>c-ns-tag-property</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  <a href="#c-verbatim-tag">c-verbatim-tag</a>
+                | <a href="#c-ns-shorthand-tag">c-ns-shorthand-tag</a><br />
+                | <a href="#c-ns-non-specific-tag">c-ns-non-specific-tag</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="variablelist">
+              <dl>
+                <dt>
+                  <span class="term">Verbatim Tags</span>
+                </dt>
+                <dd>
+                  <p>
+                  A tag may be written <a id="id2528767" class="indexterm"></a><a id="verbatim tag/"></a
+            ><a href="#index-entry-verbatim tag"
+            ><i class="firstterm"
+            >verbatim</i></a
+          > by surrounding it with the <a id="id2528783" class="indexterm"></a><a id="&lt; &#8230; &gt; verbatim tag/"></a
+            ><a href="#index-entry-&lt; &#8230; &gt; verbatim tag"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>&lt;</tt></b></span>&#8221; and
+                  &#8220;<span class="quote"><b class="userinput"><tt>&gt;</tt></b></span>&#8221;</i></a
+          > characters. In this case, the
+                  YAML <a id="id2528812" class="indexterm"></a><a href="#processor/">processor</a> must
+                  deliver the verbatim tag as-is to the <a id="id2528825" class="indexterm"></a><a href="#application/">application</a>. In particular,
+                  verbatim tags are not subject to <a id="id2528839" class="indexterm"></a><a href="#tag resolution/">tag resolution</a>. A verbatim tag must
+                  either begin with a <a id="id2528854" class="indexterm"></a><a href="#! local tag/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a> (a <a id="id2528871" class="indexterm"></a><a href="#local tag/">local tag</a>) or be a valid URI (a <a id="id2528884" class="indexterm"></a><a href="#global tag/">global tag</a>).
+                </p>
+                </dd>
+              </dl>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[111]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-verbatim-tag"></a>c-verbatim-tag</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-tag">&#8220;<span class="quote">!</span>&#8221;</a>
+                &#8220;<span class="quote">&lt;</span>&#8221;
+                <a href="#ns-uri-char">ns-uri-char</a>+
+                &#8220;<span class="quote">&gt;</span>&#8221;
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2528935"></a>
+              <p class="title">
+                <b>Example 4.39. Verbatim Tags</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"><tt class="filename">!&lt;tag:yaml.org,2002:str&gt;</tt> foo :<br />  <tt class="filename">!&lt;!bar&gt;</tt> baz
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-verbatim-tag">c-verbatim-tag</a></tt>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !&lt;tag:yaml.org,2002:str&gt; "foo"
+  : !&lt;!bar&gt; "baz"
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="example">
+              <a id="id2529010"></a>
+              <p class="title">
+                <b>Example 4.40. Invalid Verbatim Tags</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="screen"><span class="database">- !&lt;<tt class="filename">!</tt>&gt; foo<br />- !&lt;<tt class="literal">$:?</tt>&gt; bar
+</span></pre>
+            </td>
+                  <td>
+<pre class="screen"><span class="database">ERROR:<br />- Verbatim tags aren't resolved,
+  so <tt class="filename">!</tt> is invalid.
+- The <tt class="literal">$:?</tt> tag is neither a global
+  URI tag nor a local tag starting
+  with &#8220;<span class="quote">!</span>&#8221;.
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="variablelist">
+              <dl>
+                <dt>
+                  <span class="term">Tag Shorthands</span>
+                </dt>
+                <dd>
+                  <p>
+                  A <a id="id2529094" class="indexterm"></a><a id="tag shorthand/"></a
+            ><a href="#index-entry-tag shorthand"
+            ><i class="firstterm"
+            >tag shorthand</i></a
+          >
+                  consists of a valid <a id="id2529110" class="indexterm"></a><a href="#tag handle/">tag
+                  handle</a> followed by a non-empty suffix. The <a id="id2529124" class="indexterm"></a><a href="#tag handle/">tag handle</a> must be associated
+                  with a <a id="id2529137" class="indexterm"></a><a href="#tag prefix/">prefix</a>, either
+                  by default or by using a <a id="id2529150" class="indexterm"></a><a href="#TAG directive/">&#8220;<span class="quote"><b class="userinput"><tt>TAG</tt></b></span>&#8221; directive</a>. The
+                  resulting <a id="id2529170" class="indexterm"></a><a href="#parse/">parsed</a> tag is
+                  the concatenation of the prefix and the suffix, and must
+                  either begin with <a id="id2529184" class="indexterm"></a><a href="#! local tag/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a> (a <a id="id2529202" class="indexterm"></a><a href="#local tag/">local tag</a>) or be a valid URI (a <a id="id2529215" class="indexterm"></a><a href="#global tag/">global tag</a>). When the <a id="id2529228" class="indexterm"></a><a href="#primary tag handle/">primary tag handle</a> is
+                  used, the suffix must not contain any <a id="id2529244" class="indexterm"></a><a href="#! named handle/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a>
+                  character, as this would cause the tag shorthand to be
+                  interpreted as having a <a id="id2529264" class="indexterm"></a><a href="#named tag handle/">named tag handle</a>. If the <a id="id2529277" class="indexterm"></a><a href="#! named handle/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a>
+                  character exists in the suffix of a tag using the <a id="id2529295" class="indexterm"></a><a href="#primary tag handle/">primary tag handle</a>, it
+                  must be <a id="id2529309" class="indexterm"></a><a href="#escaping in URI/">escaped</a>
+                  as <a id="id2529322" class="indexterm"></a><a href="#% escaping in URI/">&#8220;<span class="quote"><b class="userinput"><tt>%21</tt></b></span>&#8221;</a>, and the parser should
+                  expand this particular escape sequence before passing the tag
+                  to the application. This behavior is consistent with the URI
+                  character quoting rules (specifically, section 2.3 of <a href="http://www.ietf.org/rfc/rfc2396.txt" target="_top">RFC2396</a>),
+                  and ensures the choice of <a id="id2529353" class="indexterm"></a><a href="#tag handle/">tag
+                  handle</a> remains a <a id="id2529365" class="indexterm"></a><a href="#presentation/">presentation detail</a> and is
+                  not reflected in the <a id="id2529379" class="indexterm"></a><a href="#serialization/">serialization tree</a> (and
+                  hence the <a id="id2529393" class="indexterm"></a><a href="#representation/">representation</a> graph). In
+                  particular, the <a id="id2529407" class="indexterm"></a><a href="#tag handle/">tag
+                  handle</a> may be discarded once <a id="id2529420" class="indexterm"></a><a href="#parse/">parsing</a> is completed.
+                </p>
+                </dd>
+              </dl>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[112]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-ns-shorthand-tag"></a>c-ns-shorthand-tag</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  ( <a href="#c-primary-tag-handle">c-primary-tag-handle</a>
+                <a href="#ns-tag-char">ns-tag-char</a>+ )<br />
+                | ( <a href="#c-secondary-tag-handle">ns-secondary-tag-handle</a>
+                <a href="#ns-uri-char">ns-uri-char</a>+ )<br />
+                | ( <a href="#c-named-tag-handle">c-named-tag-handle</a>
+                <a href="#ns-uri-char">ns-uri-char</a>+ )
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2529487"></a>
+              <p class="title">
+                <b>Example 4.41. Tag Shorthands</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">%TAG !o! tag:ben-kiki.org,2000:<br />---
+- <tt class="filename">!local</tt> foo
+- <tt class="filename">!!str</tt> bar
+- <tt class="filename">!o!type</tt> baz
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-ns-shorthand-tag">c-ns-shorthand-tag</a></tt>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !&lt;!local&gt; "foo",
+  !&lt;tag:yaml.org,2002:str&gt; "bar",
+  !&lt;tag:ben-kiki.org,2000:type&gt; "baz",
+]
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="example">
+              <a id="id2529570"></a>
+              <p class="title">
+                <b>Example 4.42. Invalid Shorthand Tags</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="screen"><span class="database">%TAG !o! tag:ben-kiki.org,2000:<br />---
+- <tt class="filename">!$a!</tt>b foo
+- <tt class="literal">!o!</tt> bar
+- <span class="property">!h!</span>type baz
+</span></pre>
+            </td>
+                  <td>
+<pre class="screen"><span class="database">ERROR:<br />- The <tt class="filename">!$a!</tt> looks like a handle.
+- The <tt class="literal">!o!</tt> handle has no suffix.
+- The <span class="property">!h!</span> handle wasn't declared.
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="variablelist">
+              <dl>
+                <dt>
+                  <span class="term">Non-Specific Tags</span>
+                </dt>
+                <dd>
+                  <p>
+                  If a <a id="id2529663" class="indexterm"></a><a href="#node/syntax">node</a> has no tag property, it is
+                  assigned a <a id="id2529678" class="indexterm"></a><a href="#non-specific tag/">non-specific
+                  tag</a>: <a id="id2529692" class="indexterm"></a><a href="#? non-specific tag/">&#8220;<span class="quote"><b class="userinput"><tt>?</tt></b></span>&#8221;</a> for <a id="id2529711" class="indexterm"></a><a href="#plain style/syntax">plain scalars</a> and
+                  <a id="id2529727" class="indexterm"></a><a href="#! non-specific tag/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;</a> for all other <a id="id2529747" class="indexterm"></a><a href="#node/syntax">nodes</a>. <a id="id2529761" class="indexterm"></a><a href="#non-specific tag/">Non-specific tags</a> must
+                  be <a id="id2529775" class="indexterm"></a><a href="#tag resolution/">resolved</a> to a
+                  <a id="id2529788" class="indexterm"></a><a href="#specific tag/">specific tag</a> for a
+                  <a id="id2529803" class="indexterm"></a><a href="#complete representation/">complete
+                  representation</a> graph to be <a id="id2529818" class="indexterm"></a><a href="#compose/">composed</a>. It is also possible for
+                  the tag property to explicitly specify the <a id="id2529832" class="indexterm"></a><a href="#node/syntax">node</a> has the
+                  <a id="id2529846" class="indexterm"></a><a href="#! non-specific tag/">&#8220;<span class="quote"><b class="userinput"><tt>!</tt></b></span>&#8221;
+                  non-specific tag</a>. This is only useful for <a id="id2529866" class="indexterm"></a><a href="#plain style/syntax">plain
+                  scalars</a>, causing them to be <a id="id2529882" class="indexterm"></a><a href="#tag resolution/">resolved</a> as if they were non-<a id="id2529896" class="indexterm"></a><a href="#plain style/syntax">plain</a>
+                  (hence, by the common <a id="id2529912" class="indexterm"></a><a href="#tag resolution/">tag
+                  resolution</a> convention, as
+                  &#8220;<span class="quote"><b class="userinput"><tt>tag:yaml.org,2002:str</tt></b></span>&#8221;). There is no way to
+                  explicitly set the tag to the <a id="id2529934" class="indexterm"></a><a href="#? non-specific tag/">&#8220;<span class="quote"><b class="userinput"><tt>?</tt></b></span>&#8221; non-specific</a>
+                  tag. This is intentional.
+                </p>
+                </dd>
+              </dl>
+            </div>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[113]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-ns-non-specific-tag"></a>c-ns-non-specific-tag</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-tag">&#8220;<span class="quote">!</span>&#8221;</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2529980"></a>
+              <p class="title">
+                <b>Example 4.43. Non-Specific Tags</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database"># Assuming conventional resolution:<br />- "12"
+- 12
+- <tt class="filename">!</tt> 12
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-ns-non-specific-tag">c-ns-non-specific-tag</a></tt>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !&lt;tag:yaml.org,2002:str&gt; "12",
+  !&lt;tag:yaml.org,2002:int&gt; "12",
+  !&lt;tag:yaml.org,2002:str&gt; "12",
+]
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2530054"></a>4.4.3. Node Content</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            <a id="id2530062" class="indexterm"></a><a id="content/syntax"></a
+            ><a href="#index-entry-content"
+            ><i class="firstterm"
+            >Node
+            content</i></a
+          > may be <a id="id2530079" class="indexterm"></a><a href="#present/">presented</a> in either a <a id="id2530091" class="indexterm"></a><a href="#flow style/syntax">flow style</a> or a
+            <a id="id2530107" class="indexterm"></a><a href="#block style/syntax">block
+            style</a>. <a id="id2530123" class="indexterm"></a><a href="#block style/syntax">Block content</a> always extends to the
+            end of a line and uses <a id="id2530138" class="indexterm"></a><a href="#indentation space/">indentation</a> to denote structure, while <a id="id2530153" class="indexterm"></a><a href="#flow style/syntax">flow content</a>
+            starts and ends at some non-space character within a line and uses
+            <a id="id2530169" class="indexterm"></a><a href="#indicator/">indicators</a> to denote
+            structure. Each collection <a id="id2530183" class="indexterm"></a><a href="#kind/">kind</a>
+            can be presented in a single <a id="id2530196" class="indexterm"></a><a href="#flow collection style/syntax">flow collection style</a> or a
+            single <a id="id2530213" class="indexterm"></a><a href="#block collection style/syntax">block collection style</a>. However, each
+            collection <a id="id2530230" class="indexterm"></a><a href="#kind/">kind</a> also provides
+            compact <a id="id2530243" class="indexterm"></a><a href="#in-line style/syntax">in-line</a> forms for common cases.
+            <a id="id2530260" class="indexterm"></a><a href="#scalar/syntax">Scalar
+            content</a> may be <a id="id2530275" class="indexterm"></a><a href="#present/">presented</a> in the <a id="id2530287" class="indexterm"></a><a href="#plain style/syntax">plain style</a> or
+            one of the two <a id="id2530303" class="indexterm"></a><a href="#quoted style/syntax">quoted styles</a> (the <a id="id2530319" class="indexterm"></a><a href="#single quoted style/syntax">single quoted
+            style</a> and the <a id="id2530335" class="indexterm"></a><a href="#double quoted style/syntax">double quoted style</a>). Regardless of
+            style, <a id="id2530352" class="indexterm"></a><a href="#scalar/syntax">scalar
+            content</a> must always be <a id="id2530367" class="indexterm"></a><a href="#indentation space/">indented</a> by at least one space. In contrast,
+            <a id="id2530382" class="indexterm"></a><a href="#collection/syntax">collection
+            content</a> need not be <a id="id2530397" class="indexterm"></a><a href="#indentation space/">indented</a> (note that the <a id="id2530411" class="indexterm"></a><a href="#indentation space/">indentation</a> of the first
+            <a id="id2530424" class="indexterm"></a><a href="#flow scalar style/syntax">flow
+            scalar</a> line is determined by the <a id="id2530440" class="indexterm"></a><a href="#block collection style/syntax">block collection</a> it
+            is nested in, if any).
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[114]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-flow-scalar(n,c)"></a>ns-flow-scalar(n,c)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  <a href="#ns-plain(n,c)">c-plain(max(n,1),c)</a><br />
+                | <a href="#c-single-quoted(n,c)">c-single-quoted(max(n,1),c)</a><br />
+                | <a href="#c-double-quoted(n,c)">c-double-quoted(max(n,1),c)</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[115]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-flow-collection(n,c)"></a>c-flow-collection(n,c)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-flow-sequence(n,c)">c-flow-sequence(n,c)</a>
+                | <a href="#c-flow-mapping(n,c)">c-flow-mapping(n,c)</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[116]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="ns-flow-content(n,c)"></a>ns-flow-content(n,c)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#ns-flow-scalar(n,c)">ns-flow-scalar(n,c)</a>
+                | <a href="#c-flow-collection(n,c)">c-flow-collection(n,c)</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[117]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-l+block-scalar(n)"></a>c-l+block-scalar(n)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-l+folded(n)">c-l+folded(max(n,0))</a>
+                | <a href="#c-l+literal(n)">c-l+literal(max(n,0))</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[118]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-l-block-collection(n,c)"></a>c-l-block-collection(n,c)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-l-block-sequence(n,c)">c-l-block-sequence(n,c)</a>
+                | <a href="#c-l-block-mapping(n)">c-l-block-mapping(n)</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[119]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-l+block-content(n,c)"></a>c-l+block-content(n,c)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                  <a href="#c-l+block-scalar(n)">c-l+block-scalar(n)</a><br />
+                | <a href="#c-l-block-collection(n,c)">c-l-block-collection(&gt;n,c)</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2530616"></a>
+              <p class="title">
+                <b>Example 4.44. Mandatory Scalar Indentation</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">---<br />foo:
+<tt class="filename">·</tt>"bar
+<tt class="filename">·</tt>baz"
+---
+"foo
+<tt class="literal">·</tt>bar"
+---
+foo
+<tt class="literal">·</tt>bar
+--- |
+<tt class="literal">·</tt>foo
+...
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename">Normal "more-indented" indentation</tt>
+  <tt class="literal">Mandatory for "non-indented" scalar</tt>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!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"
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="example">
+              <a id="id2530709"></a>
+              <p class="title">
+                <b>Example 4.45. Flow Content</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">---<br />scalars:
+  plain: !!str <tt class="filename">some text</tt>&#8595;
+  quoted:
+    single: <tt class="filename">'some text'</tt>&#8595;
+    double: <tt class="filename">"some text"</tt>&#8595;
+collections:
+  sequence: !!seq <span class="honorific"><tt class="literal">[ !str entry,
+    <tt class="constant"># Mapping entry:&#8595;</tt>
+      key: value ]</tt></span>&#8595;
+  mapping: <tt class="literal">{ key: value }</tt>&#8595;
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-flow-scalar(n,c)">ns-flow-scalar</a></tt>
+  <tt class="literal"><a href="#c-flow-collection(n,c)">c-flow-collection</a></tt>
+  <span class="property"><a href="#c-b-comment">not content</a></span>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />--- !!map {
+  ? !!str "scalars" : !!map {
+      ? !!str "plain"
+      : !!str "some text",
+      ? !!str "quoted"
+      : !!map {
+        ? !!str "single"
+        : !!str "some text",
+        ? !!str "double"
+        : !!str "some text"
+  } },
+  ? !!str "collections": : !!map {
+    ? !!str "sequence" : !!seq [
+      ? !!str "entry",
+      : !!map {
+        ? !!str "key" : !!str "value"
+    } ],
+    ? !!str "mapping": : !!map {
+      ? !!str "key" : !!str "value"
+} } }
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="example">
+              <a id="id2530847"></a>
+              <p class="title">
+                <b>Example 4.46. Block Content</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">block styles:<br />  scalars:
+    literal: !!str <tt class="filename">|
+      #!/usr/bin/perl
+      print "Hello, world!\n";&#8595;</tt>
+    folded: <tt class="filename">&gt;
+      This sentence
+      is false.&#8595;</tt>
+  collections: !!seq
+    sequence: !!seq <span class="honorific"><tt class="literal"><span class="property"># Entry:&#8595;</span>
+      - entry
+      <span class="property"># Mapping entry:&#8595;</span>
+      - key: value&#8595;</tt></span>
+    mapping: <tt class="literal">&#8595;
+      key: value&#8595;</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-l+block-scalar(n)">c-l+block-scalar</a></tt>
+  <tt class="literal"><a href="#c-l-block-collection(n,c)">c-l-block-collection</a></tt>
+  <span class="property"><a href="#c-b-comment">not content</a></span>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "block styles" : !!map {
+    ? !!str "scalars" : !!map {
+      ? !!str "literal"
+      : !!str "#!!/usr/bin/perl\n\
+          print \"Hello,
+          world!!\\n\";\n",
+      ? !!str "folded"
+      : !!str "This sentence
+          is false.\n"
+    },
+    ? !!str "collections" : !!map {
+      ? !!str "sequence" : !!seq [
+        !!str "entry",
+        !!map {
+          ? !!str "key" : !!str "value"
+        }
+      ],
+      ? !!str "mapping" : !!map {
+        ? !!str "key" : !!str "value"
+} } } }
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2530982"></a>4.4.4. Alias Nodes</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            Subsequent occurrences of a previously <a id="id2530991" class="indexterm"></a><a href="#serialize/">serialized</a> node are <a id="id2531004" class="indexterm"></a><a href="#present/">presented</a> as <a id="id2531016" class="indexterm"></a><a id="alias/syntax"></a
+            ><a href="#index-entry-alias"
+            ><i class="firstterm"
+            >alias nodes</i></a
+          >, denoted by the <a id="id2531034" class="indexterm"></a><a id="* alias/"></a
+            ><a href="#index-entry-* alias"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>*</tt></b></span>&#8221; indicator</i></a
+          >. The first
+            occurrence of the <a id="id2531053" class="indexterm"></a><a href="#node/syntax">node</a> must be marked by an <a id="id2531069" class="indexterm"></a><a href="#anchor/syntax">anchor</a> to allow
+            subsequent occurrences to be <a id="id2531085" class="indexterm"></a><a href="#present/">presented</a> as alias nodes. An alias node
+            refers to the most recent preceding <a id="id2531099" class="indexterm"></a><a href="#node/syntax">node</a> having the same <a id="id2531114" class="indexterm"></a><a href="#anchor/syntax">anchor</a>. It is an
+            error to have an alias node use an <a id="id2531130" class="indexterm"></a><a href="#anchor/syntax">anchor</a> that does not previously occur
+            in the <a id="id2531146" class="indexterm"></a><a href="#document/syntax">document</a>. It is not an error to
+            specify an <a id="id2531162" class="indexterm"></a><a href="#anchor/syntax">anchor</a> that is not used by any alias
+            node. Note that an alias node must not specify any <a id="id2531179" class="indexterm"></a><a href="#node property/">properties</a> or <a id="id2531192" class="indexterm"></a><a href="#content/syntax">content</a>, as these
+            were already specified at the first occurrence of the <a id="id2531209" class="indexterm"></a><a href="#node/syntax">node</a>.
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[120]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-ns-alias-node"></a>c-ns-alias-node</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-alias">&#8220;<span class="quote">*</span>&#8221;</a>
+                <a href="#ns-anchor-name">ns-anchor-name</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2531251"></a>
+              <p class="title">
+                <b>Example 4.47. Alias Nodes</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">First occurence: &amp;<tt class="literal">anchor</tt> Value<br />Second occurence: <span class="honorific"><tt class="filename">*<tt class="literal">anchor</tt></tt></span>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-ns-alias-node">c-ns-alias-node</a></tt>
+  <tt class="literal"><a href="#ns-anchor-name">ns-anchor-name</a></tt>
+</pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "First occurence"
+  : &amp;A !!str "Value",
+  ? !!str "Second occurence"
+  : *A
+}
+</span></pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2531346"></a>4.4.5. Complete Nodes</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2531352"></a>4.4.5.1. Flow Nodes</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              A complete <a id="id2531360" class="indexterm"></a><a id="flow style/syntax"></a
+            ><a href="#index-entry-flow style"
+            ><i class="firstterm"
+            >flow
+              node</i></a
+          > is either an <a id="id2531378" class="indexterm"></a><a href="#alias/syntax">alias node</a> <a id="id2531393" class="indexterm"></a><a href="#present/">presenting</a> a second occurence of a
+              previous <a id="id2531406" class="indexterm"></a><a href="#node/syntax">node</a>, or consists of the <a id="id2531422" class="indexterm"></a><a href="#node property/">node properties</a> followed by the
+              <a id="id2531435" class="indexterm"></a><a href="#content/syntax">node's
+              content</a>. A <a id="id2531451" class="indexterm"></a><a href="#node/syntax">node</a> with empty <a id="id2531466" class="indexterm"></a><a href="#content/syntax">content</a> is
+              considered to be an empty <a id="id2531483" class="indexterm"></a><a href="#plain style/syntax">plain scalar</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[121]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-flow-node(n,c)"></a>ns-flow-node(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    <a href="#c-ns-alias-node">c-ns-alias-node</a>
+                  | <a href="#ns-flow-content(n,c)">ns-flow-content(n,c)</a><br />
+                  | ( <a href="#c-ns-properties(n,c)">c-ns-properties(n,c)</a><br />
+                      (
+                    /* empty plain scalar content */<br />
+                      | (
+                    <a href="#s-separate(n,c)">s-separate(n,c)</a>
+                  <a href="#ns-flow-content(n,c)">ns-flow-content(n,c)</a> ) ) )
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2531550"></a>
+                <p class="title">
+                  <b>Example 4.48. Flow Nodes in Flow Context</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">[<br />  <span class="honorific"><tt class="filename"><tt class="literal">Without properties</tt></tt></span>,
+  <span class="honorific"><tt class="filename">&amp;anchor <tt class="literal">"Anchored"</tt></tt></span>,
+  <span class="honorific"><tt class="filename">!!str <tt class="literal">'Tagged'</tt></tt></span>,
+  <tt class="filename">*anchor</tt>, # Alias node
+  <tt class="filename">!!str</tt>,   # Empty plain scalar
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-flow-node(n,c)">ns-flow-node(n,c)</a></tt> <tt class="literal"><a href="#ns-flow-content(n,c)">ns-flow-content(n,c)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "Without properties",
+  &amp;A !!str "Anchored",
+  !!str "Tagged",
+  *A,
+  !!str "",
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Since both the <a id="id2531678" class="indexterm"></a><a href="#node property/">node's
+              properties</a> and <a id="id2531692" class="indexterm"></a><a href="#content/syntax">node content</a> are optional, this
+              allows for a <a id="id2531707" class="indexterm"></a><a id="completely empty node/"></a
+            ><a href="#index-entry-completely empty node"
+            ><i class="firstterm"
+            >completely
+              empty node</i></a
+          >. Completely empty nodes are only valid when
+              following some explicit <a id="id2531724" class="indexterm"></a><a href="#indicator/">indicator</a> for their existance.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[122]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="e-empty-flow"></a>e-empty-flow</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  /* empty plain scalar node */
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              In the examples, completely empty nodes are displayed as the
+              glyph &#8220;<span class="quote"><b class="userinput"><tt>°</tt></b></span>&#8221;. Note that this glyph corresponds to
+              a position in the characters <a id="id2531768" class="indexterm"></a><a href="#stream/syntax">stream</a> rather than to an actual
+              character.
+            </p>
+              <div class="example">
+                <a id="id2531786"></a>
+                <p class="title">
+                  <b>Example 4.49. Completely Empty Flow Nodes</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">{<br />  ? foo :<tt class="filename">°</tt>,
+  ?<tt class="filename">°</tt> : bar,
+  ?<tt class="filename">°</tt> :<tt class="filename">°</tt>,
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#e-empty-flow">e-empty-flow</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "foo"
+  : !!str "",
+  ? !!str "",
+  : !!str "bar",
+  ? !!str "",
+  : !!str ""
+}
+</span></pre>
+                </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2531873"></a>4.4.5.2. Block Nodes</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              A complete <a id="id2531881" class="indexterm"></a><a id="block style/syntax"></a
+            ><a href="#index-entry-block style"
+            ><i class="firstterm"
+            >block node</i></a
+          > consists of the <a id="id2531898" class="indexterm"></a><a href="#node property/">node's properties</a> followed by
+              the <a id="id2531912" class="indexterm"></a><a href="#content/syntax">node's
+              content</a>. In addition, a block node may consist of a
+              (possibly <a id="id2531929" class="indexterm"></a><a href="#completely empty node/">completely
+              empty</a>) <a id="id2531943" class="indexterm"></a><a href="#flow style/syntax">flow node</a> followed by a <a id="id2531959" class="indexterm"></a><a href="#line break character/">line break</a> (with
+              optional <a id="id2531972" class="indexterm"></a><a href="#comment/syntax">comments</a>).
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[123]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-l+flow-in-block(n,c)"></a>ns-l+flow-in-block(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-flow-node(n,c)">ns-flow-node(n+1,flow-out)</a>
+                  <a href="#s-l-comments">s-l-comments</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[124]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-l+block-in-block(n,c)"></a>ns-l+block-in-block(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  ( <a href="#c-ns-properties(n,c)">c-ns-properties(n+1,c)</a>
+                  <a href="#s-separate(n,c)">s-separate(n+1,c)</a> )?<br />
+                  <a href="#c-l+block-content(n,c)">c-l+block-content(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[125]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-l+block-node(n,c)"></a>ns-l+block-node(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    <a href="#ns-l+block-in-block(n,c)">ns-l+block-in-block(n,c)</a><br />
+                  | <a href="#ns-l+flow-in-block(n,c)">ns-l+flow-in-block(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[126]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-l+block-node(n,c)"></a>s-l+block-node(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-separate(n,c)">s-separate(n+1,c)</a>
+                  <a href="#ns-l+block-node(n,c)">ns-l+block-node(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2532095"></a>
+                <p class="title">
+                  <b>Example 4.50. Block Nodes</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">-<span class="honorific"><span class="property">·<tt class="filename">"flow in block"&#8595;</tt></span></span><br />-<span class="honorific"><span class="property">·<tt class="literal">&gt;
+ Block scalar&#8595;</tt></span></span>
+-<span class="honorific"><span class="property">·<tt class="literal">!!map # Block collection
+  foo : bar&#8595;</tt></span></span>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-l+flow-in-block(n,c)">ns-l+flow-in-block(n,c)</a></tt>
+  <tt class="literal"><a href="#ns-l+block-in-block(n,c)">ns-l+block-in-block(n,c)</a></tt>
+  <span class="property"><a href="#s-l+block-node(n,c)">s-l+block-node(n,c)</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "",
+  !!map {
+    ? !!str "foo"
+    : !!str "",
+    ? !!str "",
+    : !!str "bar",
+    ? !!str "",
+    : !!str ""
+  }
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              A block node always spans to the end of the line, even when
+              <a id="id2532221" class="indexterm"></a><a href="#completely empty node/">completely
+              empty</a>. <a id="id2532236" class="indexterm"></a><a href="#completely empty node/">Completely empty</a> block nodes may only appear when
+              there is some explicit <a id="id2532251" class="indexterm"></a><a href="#indicator/">indicator</a> for their existance.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[127]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-l-empty-block"></a>s-l-empty-block</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#e-empty-flow">e-empty-flow</a>
+                  <a href="#s-l-comments">s-l-comments</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2532289"></a>
+                <p class="title">
+                  <b>Example 4.51. Completely Empty Block Nodes</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">seq:<br />-<tt class="filename">° # Empty plain scalar&#8595;</tt>
+- ? foo
+  :<tt class="filename">°&#8595;</tt>
+  ?<tt class="filename">°&#8595;</tt>
+  : bar,
+  ?<tt class="filename">°&#8595;</tt>
+  :<tt class="filename">°&#8595;</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-l-empty-block">s-l-empty-block</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "",
+  !!map {
+    ? !!str "foo"
+    : !!str "",
+    ? !!str "",
+    : !!str "bar",
+    ? !!str "",
+    : !!str ""
+  }
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+          </div>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2532386"></a>4.5. Scalar Styles</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+        YAML provides a rich set of <a id="id2532395" class="indexterm"></a><a id="scalar/syntax"></a
+            ><a href="#index-entry-scalar"
+            ><i class="firstterm"
+            >scalar styles</i></a
+          > to choose from, depending
+        upon the readability requirements: three <a id="id2532414" class="indexterm"></a><a href="#flow scalar style/syntax">scalar flow styles</a> (the <a id="id2532430" class="indexterm"></a><a href="#plain style/syntax">plain style</a> and the
+        two <a id="id2532446" class="indexterm"></a><a id="quoted style/syntax"></a
+            ><a href="#index-entry-quoted style"
+            ><i class="firstterm"
+            >quoted
+        styles</i></a
+          >: <a id="id2532462" class="indexterm"></a><a href="#single quoted style/syntax">single quoted</a> and <a id="id2532478" class="indexterm"></a><a href="#double quoted style/syntax">double quoted</a>), and two
+        <a id="id2532495" class="indexterm"></a><a href="#block scalar style/syntax">scalar block
+        styles</a> (the <a id="id2532510" class="indexterm"></a><a href="#literal style/syntax">literal style</a> and the <a id="id2532526" class="indexterm"></a><a href="#folded style/syntax">folded style</a>).
+        <a id="id2532542" class="indexterm"></a><a href="#comment/syntax">Comments</a> may
+        precede or follow scalar content, but must not appear inside it. Scalar
+        node style is a <a id="id2532559" class="indexterm"></a><a href="#presentation detail/">presentation
+        detail</a> and must not be used to convey <a id="id2532572" class="indexterm"></a><a href="#content/information model">content
+        information</a>, with the exception that <a id="id2532589" class="indexterm"></a><a href="#non-specific tag/">untagged</a> <a id="id2532602" class="indexterm"></a><a href="#plain style/syntax">plain scalars</a> are <a id="id2532618" class="indexterm"></a><a href="#tag resolution/">resolved</a> in a distinct way.
+      </p>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2532632"></a>4.5.1. Flow Scalar Styles</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          All <a id="id2532640" class="indexterm"></a><a id="flow scalar style/syntax"></a
+            ><a href="#index-entry-flow scalar style"
+            ><i class="firstterm"
+            >flow
+          scalar styles</i></a
+          > may span multiple lines, except when used
+          in <a id="id2532659" class="indexterm"></a><a href="#simple key/">simple keys</a>. Flow scalars
+          are subject to (flow) <a id="id2532672" class="indexterm"></a><a href="#line folding/">line
+          folding</a>. This allows flow scalar content to be broken
+          anywhere a single space character (<b class="userinput"><tt>#x20</tt></b>)
+          separates non-space characters, at the cost of requiring an <a id="id2532694" class="indexterm"></a><a href="#empty line/">empty line</a> to <a id="id2532706" class="indexterm"></a><a href="#present/">present</a> each line feed character.
+        </p>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2532720"></a>4.5.1.1. Double Quoted</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              The <a id="id2532729" class="indexterm"></a><a id="double quoted style/syntax"></a
+            ><a href="#index-entry-double quoted style"
+            ><i class="firstterm"
+            >double quoted style</i></a
+          > is specified by
+              surrounding <a id="id2532747" class="indexterm"></a><a id="&quot; double quoted style/"></a
+            ><a href="#index-entry-&quot; double quoted style"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>"</tt></b></span>&#8221; indicators</i></a
+          >. This is the only
+              <a id="id2532768" class="indexterm"></a><a href="#scalar/syntax">scalar
+              style</a> capable of expressing arbitrary strings,
+              by using <a id="id2532784" class="indexterm"></a><a href="#\ escaping in double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>\</tt></b></span>&#8221;</a> <a id="id2532803" class="indexterm"></a><a href="#escaping in double quoted style/">escape sequences</a>. Therefore, the
+              <a id="id2532817" class="indexterm"></a><a href="#\ escaping in double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>\</tt></b></span>&#8221;</a> and &#8220;<span class="quote"><b class="userinput"><tt>"</tt></b></span>&#8221;
+              characters must also be <a id="id2532843" class="indexterm"></a><a href="#\ escaping in double quoted style/">escaped</a> when present in double quoted
+              content. Note it is an error for double quoted content to contain
+              invalid <a id="id2532860" class="indexterm"></a><a href="#escaping in double quoted style/">escape
+              sequences</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[128]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-double-char"></a>nb-double-char</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  ( <a href="#nb-char">nb-char</a>
+                  - <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                  - <a href="#c-double-quote">&#8220;<span class="quote">"</span>&#8221;</a> )
+                  | <a href="#ns-esc-char">ns-esc-char</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[129]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-double-char"></a>ns-double-char</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#nb-double-char">nb-double-char</a>
+                  - <a href="#s-white">s-white</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              Double quoted scalars are restricted to a single line when
+              contained inside a <a id="id2532940" class="indexterm"></a><a href="#simple key/">simple
+              key</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[130]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-double-quoted(n,c)"></a>c-double-quoted(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-double-quote">&#8220;<span class="quote">"</span>&#8221;</a>
+                  <a href="#nb-double-text(n,c)">nb-double-text(n,c)</a>
+                  <a href="#c-double-quote">&#8220;<span class="quote">"</span>&#8221;</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[131]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-double-text(n,c)"></a>nb-double-text(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <tt class="varname">c</tt> = flow-out &#8658;
+                  <a href="#nb-double-any(n)">nb-double-any(n)</a><br />
+                  <tt class="varname">c</tt> = flow-in  &#8658;
+                  <a href="#nb-double-any(n)">nb-double-any(n)</a><br />
+                  <tt class="varname">c</tt> = flow-key &#8658;
+                  <a href="#nb-double-single">nb-double-single</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[132]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-double-any(n)"></a>nb-double-any(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#nb-double-single">nb-double-single</a>
+                  | <a href="#nb-double-multi(n)">nb-double-multi(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2533054"></a>
+                <p class="title">
+                  <b>Example 4.52. Double Quoted Scalars</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"><span class="honorific"><span class="property">"<tt class="filename">simple key</tt>"</span></span> : {<br />  <span class="honorific"><span class="property">"<tt class="filename">also simple</tt>"</span></span> : value,
+  ? <span class="honorific"><span class="property">"<tt class="literal">not a
+  simple key</tt>"</span></span> : <span class="honorific"><span class="property">"<tt class="literal">any
+  value</tt>"</span></span>
+}
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#nb-double-single">nb-double-single</a></tt> <tt class="literal"><a href="#nb-double-multi(n)">nb-double-multi(n)</a></tt>
+  <span class="property"><a href="#c-double-quoted(n,c)">c-double-quoted(n,c)</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "simple key"
+  : !!map {
+    ? !!str "also simple"
+    : !!str "value",
+    ? !!str "not a simple key"
+    : !!str "any value"
+  }
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              A single line double quoted scalar is a sequence of (possibly
+              <a id="id2533194" class="indexterm"></a><a href="#escaping in double quoted style/">escaped</a>) non-<a id="id2533209" class="indexterm"></a><a href="#line break character/">break</a> Unicode characters. All characters are
+              considered <a id="id2533224" class="indexterm"></a><a href="#content/syntax">content</a>, including any leading or
+              trailing <a id="id2533240" class="indexterm"></a><a href="#white space/">white space</a>
+              characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[133]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-double-single"></a>nb-double-single</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#nb-double-char">nb-double-char</a>*
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              In a multi-line double quoted scalar, <a id="id2533278" class="indexterm"></a><a href="#line break character/">line breaks</a> are subject to flow line
+              <a id="id2533292" class="indexterm"></a><a href="#line folding/">folding</a>, and any
+              trailing <a id="id2533306" class="indexterm"></a><a href="#white space/">white space</a> is
+              excluded from the <a id="id2533319" class="indexterm"></a><a href="#content/syntax">content</a>. However, an <a id="id2533334" class="indexterm"></a><a id="escaped (ignored) line break/"></a
+            ><a href="#index-entry-escaped (ignored) line break"
+            ><i class="firstterm"
+            >escaped line
+              break</i></a
+          > (using a <a id="id2533350" class="indexterm"></a><a href="#\ escaping in double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>\</tt></b></span>&#8221;</a>) is excluded from the
+              <a id="id2533370" class="indexterm"></a><a href="#content/syntax">content</a>,
+              while <a id="id2533386" class="indexterm"></a><a href="#white space/">white space</a>
+              preceding it is preserved. This allows double quoted content to
+              be broken at arbitrary positions.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[134]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-l-double-folded(n)"></a>s-l-double-folded(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-ignored-white">s-ignored-white</a>*
+                  <a href="#b-l-folded-any(n,s)">b-l-folded-any(n,double)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[135]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-l-double-escaped(n)"></a>s-l-double-escaped(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-white">s-white</a>*
+                  <a href="#c-escape">&#8220;<span class="quote">\</span>&#8221;</a>
+                  <a href="#b-ignored-any">b-ignored-any</a><br />
+                  <a href="#l-empty(n,s)">l-empty(n,double)</a>*
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[136]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-l-double-break(n)"></a>s-l-double-break(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-l-double-folded(n)">s-l-double-folded(n)</a>
+                  | <a href="#s-l-double-escaped(n)">s-l-double-escaped(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2533487"></a>
+                <p class="title">
+                  <b>Example 4.53. Double Quoted Line Breaks</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"> "as space<span class="honorific"><tt class="filename"><span class="property">&#8594;</span>&#8595;</tt></span><br /> trimmed<span class="honorific"><tt class="filename"><span class="property">·</span>&#8595;
+&#8595;</tt></span>
+ specific<tt class="filename">&#8659;
+&#8595;</tt>
+ escaped<span class="honorific"><tt class="literal"><tt class="constant">&#8594;</tt>\¶
+·&#8595;</tt></span>
+ none"
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "as space \
+  trimmed\n\
+  specific\L\n\
+  escaped\t\
+  none"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-l-double-folded(n)">s-l-double-folded(n)</a></tt> <tt class="literal"><a href="#s-l-double-escaped(n)">s-l-double-escaped(n)</a></tt>
+  <span class="property"><a href="#s-ignored-white">s-ignored-white</a></span>      <tt class="constant"><a href="#s-white">s-white (Content)</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              A multi-line double quoted scalar consists of a (possibly empty)
+              first line, any number of inner lines, and a final (possibly
+              empty) last line.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[137]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-double-multi(n)"></a>nb-double-multi(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#nb-l-double-first(n)">nb-l-double-first(n)</a><br />
+                  <a href="#l-double-inner(n)">l-double-inner(n)</a>*<br />
+                  <a href="#s-nb-double-last(n)">s-nb-double-last(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              Leading <a id="id2533663" class="indexterm"></a><a href="#white space/">white space</a> in
+              the first line is considered <a id="id2533677" class="indexterm"></a><a href="#content/syntax">content</a> only if followed by a
+              non-space character or an escaped (ignored) line break.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[138]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-l-double-first(n)"></a>nb-l-double-first(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  ( <a href="#nb-double-char">nb-double-char</a>*
+                  <a href="#ns-double-char">ns-double-char</a> )?<br />
+                  <a href="#s-l-double-break(n)">s-l-double-break(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2533727"></a>
+                <p class="title">
+                  <b>Example 4.54. First Double Quoted Line</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">- "<tt class="filename">&#8595;</tt><br />  last"
+- "<span class="honorific"><tt class="filename"><tt class="literal">·&#8594;</tt>&#8595;</tt></span>
+  last"
+- "<tt class="filename">·&#8594;first&#8595;</tt>
+  last"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#nb-l-double-first(n)">nb-l-double-first(n)</a></tt> <tt class="literal"><a href="#s-ignored-white">s-ignored-white</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str " last",
+  !!str " last",
+  !!str " \tfirst last",
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              All leading and trailing <a id="id2533826" class="indexterm"></a><a href="#white space/">white
+              space</a> of an inner lines are excluded from the <a id="id2533840" class="indexterm"></a><a href="#content/syntax">content</a>. Note that
+              such while <a id="id2533856" class="indexterm"></a><a href="#ignored line prefix/">prefix white
+              space</a> may contain <a id="id2533871" class="indexterm"></a><a href="#tab/">tab</a>
+              characters, line <a id="id2533884" class="indexterm"></a><a href="#indentation space/">indentation</a> is restricted to space characters
+              only. It is possible to force considering leading <a id="id2533899" class="indexterm"></a><a href="#white space/">white space</a> as <a id="id2533912" class="indexterm"></a><a href="#content/syntax">content</a> by
+              <a id="id2533927" class="indexterm"></a><a href="#escaping in double quoted style/">escaping</a> the first character (<a id="id2533942" class="indexterm"></a><a href="#\ escaping in double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>\·</tt></b></span>&#8221;</a>, <a id="id2533960" class="indexterm"></a><a href="#\ escaping in double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>\&#8594;</tt></b></span>&#8221;</a> or <a id="id2533979" class="indexterm"></a><a href="#\ escaping in double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>\t</tt></b></span>&#8221;</a>).
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[139]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-double-inner(n)"></a>l-double-inner(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,double)</a>
+                  <a href="#ns-double-char">ns-double-char</a><br />
+                  ( <a href="#nb-double-char">nb-double-char</a>*
+                    <a href="#ns-double-char">ns-double-char</a> )?<br />
+                  <a href="#s-l-double-break(n)">s-l-double-break(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2534042"></a>
+                <p class="title">
+                  <b>Example 4.55. Inner Double Quoted Lines</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"> "first<br /><span class="honorific"><tt class="filename"><tt class="literal">·&#8594;</tt>inner 1<span class="property">&#8594;&#8595;</span></tt></span>
+<span class="honorific"><tt class="filename"><tt class="literal">·</tt>\·inner 2<span class="property">·\&#8595;</span></tt></span>
+ last"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-double-inner(n)">l-double-inner(n)</a></tt>
+  <tt class="literal"><a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,s)</a></tt> <span class="property"><a href="#s-l-double-break(n)">s-l-double-break(n)</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "first \
+  inner 1  \
+  inner 2 \
+  last"
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              The leading <a id="id2534163" class="indexterm"></a><a href="#ignored line prefix/">prefix</a> <a id="id2534177" class="indexterm"></a><a href="#white space/">white
+              space</a> of the last line is stripped in the same way as
+              for inner lines. Trailing <a id="id2534192" class="indexterm"></a><a href="#white space/">white
+              space</a> is considered <a id="id2534204" class="indexterm"></a><a href="#content/syntax">content</a> only if preceded by a
+              non-space character.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[140]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-nb-double-last(n)"></a>s-nb-double-last(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,double)</a><br />
+                  ( <a href="#ns-double-char">ns-double-char</a>
+                    <a href="#nb-double-char">nb-double-char</a>* )?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2534255"></a>
+                <p class="title">
+                  <b>Example 4.56. Last Double Quoted Line</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">- "first<br /><span class="honorific"><tt class="filename"><tt class="literal">··&#8594;</tt>"</tt></span>
+- "first
+
+<span class="honorific"><tt class="filename"><tt class="literal">··&#8594;</tt>last"</tt></span>
+- "first
+ inner
+<span class="honorific"><tt class="filename"><tt class="literal">·</tt>\·&#8594;last"</tt></span>
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "first ",
+  !!str "first\nlast",
+  !!str "first inner  \tlast",
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-nb-double-last(n)">s-nb-double-last(n)</a></tt>
+  <tt class="literal"><a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,s)</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2534365"></a>4.5.1.2. Single Quoted</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              The <a id="id2534373" class="indexterm"></a><a id="single quoted style/syntax"></a
+            ><a href="#index-entry-single quoted style"
+            ><i class="firstterm"
+            >single quoted style</i></a
+          > is specified by
+              surrounding <a id="id2534392" class="indexterm"></a><a id="' single quoted style/"></a
+            ><a href="#index-entry-' single quoted style"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>'</tt></b></span>&#8221; indicators</i></a
+          >. Therefore, within
+              a single quoted scalar such characters need to be repeated. This
+              is the only form of <a id="id2534415" class="indexterm"></a><a id="escaping in single quoted style/"></a
+            ><a href="#index-entry-escaping in single quoted style"
+            ><i class="firstterm"
+            >escaping</i></a
+          > performed in single quoted scalars. In
+              particular, the <a id="id2534432" class="indexterm"></a><a href="#\ escaping in double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>\</tt></b></span>&#8221;</a> and <a id="id2534450" class="indexterm"></a><a href="#&quot; double quoted style/">&#8220;<span class="quote"><b class="userinput"><tt>"</tt></b></span>&#8221;</a> characters may
+              be freely used. This restricts single quoted scalars to <a id="id2534470" class="indexterm"></a><a href="#printable character/">printable</a> characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[141]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-quoted-quote"></a>c-quoted-quote</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-single-quote">&#8220;<span class="quote">'</span>&#8221;</a>
+                  <a href="#c-single-quote">&#8220;<span class="quote">'</span>&#8221;</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[142]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-single-char"></a>nb-single-char</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  ( <a href="#nb-char">nb-char</a>
+                  - <a href="#c-single-quote">&#8220;<span class="quote">"</span>&#8221;</a> )
+                  | <a href="#c-quoted-quote">c-quoted-quote</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[143]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-single-char"></a>ns-single-char</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#nb-single-char">nb-single-char</a>
+                  - <a href="#s-white">s-white</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2534564"></a>
+                <p class="title">
+                  <b>Example 4.57. Single Quoted Quotes</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"> 'here<tt class="filename">''</tt>s to "quotes"'<br /></span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-quoted-quote">single-quoted-quote</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "here's to \"quotes\""
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Single quoted scalars are restricted to a single line when
+              contained inside a <a id="id2534636" class="indexterm"></a><a href="#simple key/">simple
+              key</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[144]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-single-quoted(n,c)"></a>c-single-quoted(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-single-quote">&#8220;<span class="quote">'</span>&#8221;</a>
+                  <a href="#nb-single-text(n,c)">nb-single-text(n,c)</a>
+                  <a href="#c-single-quote">&#8220;<span class="quote">'</span>&#8221;</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[145]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-single-text(n,c)"></a>nb-single-text(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <tt class="varname">c</tt> = flow-out &#8658;
+                  <a href="#nb-single-any(n)">nb-single-any(n)</a><br />
+                  <tt class="varname">c</tt> = flow-in  &#8658;
+                  <a href="#nb-single-any(n)">nb-single-any(n)</a><br />
+                  <tt class="varname">c</tt> = flow-key &#8658;
+                  <a href="#nb-single-single">nb-single-single(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[146]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-single-any(n)"></a>nb-single-any(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#nb-single-single">nb-single-single(n)</a>
+                  | <a href="#nb-single-multi(n)">nb-single-multi(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2534749"></a>
+                <p class="title">
+                  <b>Example 4.58. Single Quoted Scalars</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"><span class="honorific"><span class="property">'<tt class="filename">simple key</tt>'</span></span> : {<br />  <span class="honorific"><span class="property">'<tt class="filename">also simple</tt>'</span></span> : value,
+  ? <span class="honorific"><span class="property">'<tt class="literal">not a
+  simple key</tt>'</span></span> : <span class="honorific"><span class="property">'<tt class="literal">any
+  value</tt>'</span></span>
+}
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#nb-single-single">nb-single-single</a></tt> <tt class="literal"><a href="#nb-single-multi(n)">nb-single-multi(n)</a></tt>
+  <span class="property"><a href="#c-single-quoted(n,c)">c-single-quoted(n,c)</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "simple key"
+  : !!map {
+    ? !!str "also simple"
+    : !!str "value",
+    ? !!str "not a simple key"
+    : !!str "any value"
+  }
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              A single line single quoted scalar is a sequence of non-<a id="id2534889" class="indexterm"></a><a href="#line break character/">break</a> <a id="id2534903" class="indexterm"></a><a href="#printable character/">printable</a> characters. All
+              characters are considered <a id="id2534917" class="indexterm"></a><a href="#content/syntax">content</a>, including any leading or
+              trailing <a id="id2534933" class="indexterm"></a><a href="#white space/">white space</a>
+              characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[147]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-single-single"></a>nb-single-single(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#nb-single-char">nb-single-char</a>*
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              In a multi-line single quoted scalar, <a id="id2534971" class="indexterm"></a><a href="#line break character/">line breaks</a> are subject to (flow)
+              <a id="id2534986" class="indexterm"></a><a href="#line folding/">line folding</a>, and any
+              trailing <a id="id2534999" class="indexterm"></a><a href="#white space/">white space</a> is
+              excluded from the <a id="id2535013" class="indexterm"></a><a href="#content/syntax">content</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[148]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-l-single-break(n)"></a>s-l-single-break(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-ignored-white">s-ignored-white</a>*
+                  <a href="#b-l-folded-any(n,s)">b-l-folded-any(n,single)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2535055"></a>
+                <p class="title">
+                  <b>Example 4.59. Single Quoted Line Breaks</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"> 'as space<span class="honorific"><tt class="filename"><span class="property">&#8594;</span>&#8595;</tt></span><br /> trimmed<span class="honorific"><tt class="filename"><span class="property">·</span>&#8595;
+&#8595;</tt></span>
+ specific<tt class="filename">&#8659;
+&#8595;</tt>
+ none'
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "as space \
+  trimmed\n\
+  specific\L\n\
+  none"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-l-single-break(n)">s-l-single-break(n)</a></tt>
+  <span class="property"><a href="#s-ignored-white">s-ignored-white</a></span> <tt class="constant"><a href="#s-white">s-white (Content)</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              A multi-line single quoted scalar consists of a (possibly empty)
+              first line, any number of inner lines, and a final (possibly
+              empty) last line.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[149]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-single-multi(n)"></a>nb-single-multi(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#nb-l-single-first(n)">nb-l-single-first(n)</a><br />
+                  <a href="#l-single-inner(n)">l-single-inner(n)</a>*<br />
+                  <a href="#s-nb-single-last(n)">s-nb-single-last(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              Leading <a id="id2535207" class="indexterm"></a><a href="#white space/">white space</a> in
+              the first line is considered <a id="id2535220" class="indexterm"></a><a href="#content/syntax">content</a> only if followed by a
+              non-space character.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[150]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-l-single-first(n)"></a>nb-l-single-first(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  ( <a href="#nb-single-char">nb-single-char</a>*
+                  <a href="#ns-single-char">ns-single-char</a> )?<br />
+                  <a href="#s-l-single-break(n)">s-l-single-break(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2535270"></a>
+                <p class="title">
+                  <b>Example 4.60. First Single Quoted Line</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">- '<tt class="filename">&#8595;</tt><br />  last'
+- '<span class="honorific"><tt class="filename"><tt class="literal">·&#8594;</tt>&#8595;</tt></span>
+  last'
+- '<tt class="filename">·&#8594;first&#8595;</tt>
+  last'
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#nb-l-single-first(n)">nb-l-single-first(n)</a></tt> <tt class="literal"><a href="#s-ignored-white">s-ignored-white</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str " last",
+  !!str " last",
+  !!str " \tfirst last",
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              All leading and trailing <a id="id2535369" class="indexterm"></a><a href="#white space/">white
+              space</a> of inner lines is excludced from the <a id="id2535383" class="indexterm"></a><a href="#content/syntax">content</a>. Note that
+              while <a id="id2535399" class="indexterm"></a><a href="#ignored line prefix/">prefix white
+              space</a> may contain <a id="id2535413" class="indexterm"></a><a href="#tab/">tab</a>
+              characters, line <a id="id2535426" class="indexterm"></a><a href="#indentation space/">indentation</a> is restricted to space characters
+              only. Unlike <a id="id2535441" class="indexterm"></a><a href="#double quoted style/syntax">double quoted scalars</a>, it is
+              impossible to force the inclusion of the leading or trailing
+              spaces in the <a id="id2535457" class="indexterm"></a><a href="#content/syntax">content</a>. Therefore, single quoted
+              scalars lines can only be broken where a single space character
+              separates two non-space characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[151]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-single-inner(n)"></a>l-single-inner(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,single)</a>
+                  <a href="#ns-single-char">ns-single-char</a><br />
+                  ( <a href="#nb-single-char">nb-single-char</a>*
+                    <a href="#ns-single-char">ns-single-char</a> )?<br />
+                  <a href="#s-l-single-break(n)">s-l-single-break(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2535521"></a>
+                <p class="title">
+                  <b>Example 4.61. Inner Single Quoted Lines</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"> 'first<br /><span class="honorific"><tt class="filename"><tt class="literal">·&#8594;</tt>inner<span class="property">&#8594;&#8595;</span></tt></span>
+ last'
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-single-inner(n)">l-single-inner(n)</a></tt>
+  <tt class="literal"><a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,s)</a></tt> <span class="property"><a href="#s-l-single-break(n)">s-l-single-break(n)</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "first \
+  inner \
+  last"
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              The leading <a id="id2535623" class="indexterm"></a><a href="#ignored line prefix/">prefix</a> <a id="id2535637" class="indexterm"></a><a href="#white space/">white
+              space</a> of the last line is stripped in the same way as
+              for inner lines. Trailing <a id="id2535651" class="indexterm"></a><a href="#white space/">white
+              space</a> is considered <a id="id2535664" class="indexterm"></a><a href="#content/syntax">content</a> only if preceded by a
+              non-space character.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[152]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-nb-single-last(n)"></a>s-nb-single-last(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,single)</a><br />
+                  ( <a href="#ns-single-char">ns-single-char</a>
+                    <a href="#nb-single-char">nb-single-char</a>* )?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2535715"></a>
+                <p class="title">
+                  <b>Example 4.62. Last Single Quoted Lines</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">- 'first<br /><span class="honorific"><tt class="filename"><tt class="literal">··&#8594;</tt>'</tt></span>
+- 'first
+
+<span class="honorific"><tt class="filename"><tt class="literal">··&#8594;</tt>last'</tt></span>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-nb-single-last(n)">s-nb-double-last(n)</a></tt> <tt class="literal"><a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,s)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "first ",
+  !!str "first\nlast",
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2535812"></a>4.5.1.3. Plain</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              The <a id="id2535820" class="indexterm"></a><a id="plain style/syntax"></a
+            ><a href="#index-entry-plain style"
+            ><i class="firstterm"
+            >plain
+              style</i></a
+          > uses no identifying <a id="id2535838" class="indexterm"></a><a href="#indicator/">indicators</a>, and is therefore the
+              most most limited and most <a id="id2535851" class="indexterm"></a><a href="#context/">context</a> sensitive <a id="id2535865" class="indexterm"></a><a href="#scalar/syntax">scalar style</a>. Plain
+              scalars can never contain any <a id="id2535881" class="indexterm"></a><a href="#tab/">tab</a> characters. They also must not
+              contain the <a id="id2535894" class="indexterm"></a><a href="#: mapping value/">&#8220;<span class="quote"><b class="userinput"><tt>: </tt></b></span>&#8221;</a> and <a id="id2535912" class="indexterm"></a><a href="## comment/">&#8220;<span class="quote"><b class="userinput"><tt> #</tt></b></span>&#8221;</a> character sequences
+              as these combinations cause ambiguity with <a id="id2535931" class="indexterm"></a><a href="#key/syntax">key:</a> <a id="id2535945" class="indexterm"></a><a href="#value/syntax">value</a> pairs and <a id="id2535961" class="indexterm"></a><a href="#comment/syntax">comments</a>. Inside
+              <a id="id2535977" class="indexterm"></a><a href="#flow collection style/syntax">flow
+              collections</a>, plain scalars are further restricted to
+              avoid containing the <a id="id2535994" class="indexterm"></a><a href="#[ start flow sequence/">&#8220;<span class="quote"><b class="userinput"><tt>[</tt></b></span>&#8221;</a>, <a id="id2536012" class="indexterm"></a><a href="#] end flow sequence/">&#8220;<span class="quote"><b class="userinput"><tt>]</tt></b></span>&#8221;</a>, <a id="id2536030" class="indexterm"></a><a href="#{ start flow mapping/">&#8220;<span class="quote"><b class="userinput"><tt>{</tt></b></span>&#8221;</a>, <a id="id2536048" class="indexterm"></a><a href="#} end flow mapping/">&#8220;<span class="quote"><b class="userinput"><tt>}</tt></b></span>&#8221;</a> and
+              <a id="id2536065" class="indexterm"></a><a href="#, end flow entry/">&#8220;<span class="quote"><b class="userinput"><tt>,</tt></b></span>&#8221;</a>
+              characters as these would cause ambiguity with the <a id="id2536083" class="indexterm"></a><a href="#flow collection style/syntax">flow
+              collection</a> structure (hence the need for the <a id="id2536099" class="indexterm"></a><a id="flow-in context/"></a
+            ><a href="#index-entry-flow-in context"
+            ><i class="firstterm"
+            >flow-in context</i></a
+          > and the
+              <a id="id2536115" class="indexterm"></a><a id="flow-out context/"></a
+            ><a href="#index-entry-flow-out context"
+            ><i class="firstterm"
+            >flow-out context</i></a
+          >).
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[153]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-plain-char(c)"></a>nb-plain-char(c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <tt class="varname">c</tt> = flow-out &#8658; <a href="#nb-plain-char-out">nb-plain-char-out</a><br />
+                  <tt class="varname">c</tt> = flow-in  &#8658; <a href="#nb-plain-char-in">nb-plain-char-in</a><br />
+                  <tt class="varname">c</tt> = flow-key &#8658; <a href="#nb-plain-char-in">nb-plain-char-in</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[154]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-plain-char-out"></a>nb-plain-char-out</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    ( <a href="#nb-char">nb-char</a>
+                  - <a href="#c-mapping-value">&#8220;<span class="quote">:</span>&#8221;</a>
+                  - <a href="#c-comment">&#8220;<span class="quote">#</span>&#8221;</a>
+                  - #x9 /*TAB*/ )<br />
+                  | ( <a href="#ns-plain-char(c)">ns-plain-char(flow-out)</a>
+                  <a href="#c-comment">&#8220;<span class="quote">#</span>&#8221;</a> )<br />
+                  | ( <a href="#c-mapping-value">&#8220;<span class="quote">:</span>&#8221;</a>
+                  <a href="#ns-plain-char(c)">ns-plain-char(flow-out)</a> )
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[155]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="nb-plain-char-in"></a>nb-plain-char-in</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#nb-plain-char-out">nb-plain-char-out</a>
+                  - <a href="#c-collect-entry">&#8220;<span class="quote">,</span>&#8221;</a>
+                  - <a href="#c-sequence-start">&#8220;<span class="quote">[</span>&#8221;</a>
+                  - <a href="#c-sequence-end">&#8220;<span class="quote">]</span>&#8221;</a>
+                  - <a href="#c-mapping-start">&#8220;<span class="quote">{</span>&#8221;</a>
+                  - <a href="#c-mapping-end">&#8220;<span class="quote">}</span>&#8221;</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[156]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-plain-char(c)"></a>ns-plain-char(c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#nb-plain-char(c)">nb-plain-char(c)</a> - #x20 /*SP*/
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              The first plain character is further restricted to avoid most
+              <a id="id2536311" class="indexterm"></a><a href="#indicator/">indicators</a> as these would
+              cause ambiguity with various YAML structures. However, the first
+              character may be <a id="id2536326" class="indexterm"></a><a href="#- block sequence entry/">&#8220;<span class="quote"><b class="userinput"><tt>-</tt></b></span>&#8221;</a>, <a id="id2536344" class="indexterm"></a><a href="#? mapping key/">&#8220;<span class="quote"><b class="userinput"><tt>?</tt></b></span>&#8221;</a> or <a id="id2536361" class="indexterm"></a><a href="#: mapping value/">&#8220;<span class="quote"><b class="userinput"><tt>:</tt></b></span>&#8221;</a> provided it is followed by a
+              non-space character.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[157]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-plain-first-char(c)"></a>ns-plain-first-char(c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    ( <a href="#ns-plain-char(c)">ns-plain-char(c)</a>
+                  - <a href="#c-indicator">c-indicator</a> )<br />
+                  | ( ( <a href="#c-sequence-entry">&#8220;<span class="quote">-</span>&#8221;</a>
+                  | <a href="#c-mapping-key">&#8220;<span class="quote">?</span>&#8221;</a>
+                  | <a href="#c-mapping-value">&#8220;<span class="quote">:</span>&#8221;</a> )
+                  <a href="#ns-plain-char(c)">ns-plain-char(c)</a> )
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2536437"></a>
+                <p class="title">
+                  <b>Example 4.63. Plain Characters</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"># Outside flow collection:<br />- <tt class="filename">::</tt>std::vector
+- <tt class="filename">U</tt>p<tt class="literal">,</tt> up and away!
+- <tt class="filename">-1</tt>23
+# Inside flow collection:
+- [ <tt class="filename">::</tt>std::vector,
+  "Up<span class="property">,</span> up and away!",
+  <tt class="filename">-1</tt>23 ]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-plain-first-char(c)">ns-plain-first-char(c)</a></tt>
+  <tt class="literal"><a href="#ns-plain-char(c)">ns-plain-char(c)</a></tt> <span class="property">Not ns-plain-char(c)</span>
+</pre>
+            </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "::std::vector",
+  !!str "Up, up and away!",
+  !!int "-123",
+  !!seq [
+    !!str "::std::vector",
+    !!str "Up, up and away!",
+    !!int "-123",
+  ]
+]
+</span></pre>
+            </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Plain scalars are restricted to a single line when contained
+              inside a <a id="id2536564" class="indexterm"></a><a href="#simple key/">simple key</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[158]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-plain(n,c)"></a>ns-plain(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <tt class="varname">c</tt> = flow-out &#8658; <a href="#ns-plain-multi(n,c)">ns-plain-multi(n,c)</a>?<br />
+                  <tt class="varname">c</tt> = flow-in  &#8658; <a href="#ns-plain-multi(n,c)">ns-plain-multi(n,c)</a>?<br />
+                  <tt class="varname">c</tt> = flow-key &#8658; <a href="#ns-plain-single(c)">ns-plain-single(c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2536625"></a>
+                <p class="title">
+                  <b>Example 4.64. Plain Scalars</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"><tt class="filename">simple key</tt> : {<br />  <tt class="filename">also simple</tt> : value,
+  ? <tt class="literal">not a
+  simple key</tt> : <tt class="literal">any
+  value</tt>
+}
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-plain-single(c)">ns-plain-single(c)</a></tt> <tt class="literal"><a href="#ns-plain-multi(n,c)">ns-plain-multi(n,c)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "simple key"
+  : !!map {
+    ? !!str "also simple"
+    : !!str "value",
+    ? !!str "not a simple key"
+    : !!str "any value"
+  }
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              The first line of any <a id="id2536726" class="indexterm"></a><a href="#flow scalar style/syntax">flow scalar</a> is <a id="id2536742" class="indexterm"></a><a href="#indentation space/">indented</a> according to the
+              <a id="id2536756" class="indexterm"></a><a href="#collection/syntax">collection</a> it is contained in.
+              Therefore, there are two cases where a plain scalar begins on the
+              first column of a line, without any preceding <a id="id2536774" class="indexterm"></a><a href="#indentation space/">indentation</a> spaces: a plain
+              scalar used as a <a id="id2536787" class="indexterm"></a><a href="#simple key/">simple
+              key</a> of a non-indented <a id="id2536800" class="indexterm"></a><a href="#block mapping style/syntax">block mapping</a>, and any plain
+              scalar nested in a non-indented <a id="id2536819" class="indexterm"></a><a href="#flow collection style/syntax">flow collection</a>. In these
+              cases, the first line of the plain scalar must not conflict with
+              a <a id="id2536838" class="indexterm"></a><a href="#document boundary marker/">document boundary
+              marker</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[159]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-forbidden-content"></a>l-forbidden-content</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  /* start of line */<br />
+                  ( <a href="#c-document-start">c-document-start</a>
+                  | <a href="#c-document-end">c-document-end</a> )<br />
+                  /* space or end of line */
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2536884"></a>
+                <p class="title">
+                  <b>Example 4.65. Forbidden Non-Indented Plain Scalar Content</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">---<br /><tt class="filename">---·</tt>||| : foo
+<tt class="literal">...·</tt>&gt;&gt;&gt;: bar
+---
+[
+<tt class="filename">---&#8595;</tt>
+,
+<tt class="literal">...·</tt>,
+{
+<tt class="filename">---·</tt>:
+<tt class="literal">...·</tt># Nested
+}
+]
+...
+</span></pre>
+              </td>
+                    <td>
+<pre class="screen"><span class="database">ERROR:<br /> The <tt class="filename">---</tt> and <tt class="literal">...</tt> document
+ start and end markers must
+ not be specified as the
+ first content line of a
+ non-indented plain scalar.
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              YAML provides several easy ways to <a id="id2536980" class="indexterm"></a><a href="#present/">present</a> such <a id="id2536993" class="indexterm"></a><a href="#content/syntax">content</a> without
+              conflicting with the <a id="id2537009" class="indexterm"></a><a href="#document boundary marker/">document boundary markers</a>. For example:
+            </p>
+              <div class="example">
+                <a id="id2537024"></a>
+                <p class="title">
+                  <b>Example 4.66. Document Marker Scalar Content</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"><tt class="literal">---</tt><br />"<tt class="filename">---</tt>" : foo
+<tt class="filename">...</tt>: bar
+---
+[
+<tt class="filename">---</tt>,
+<tt class="filename">...</tt>,
+{
+? <tt class="filename">---</tt>
+: <tt class="filename">...</tt>
+}
+]
+<tt class="literal">...</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  Content <tt class="filename">---</tt> and <tt class="filename">...</tt>
+  Document marker <tt class="literal">---</tt> and <tt class="literal">...</tt>
+</pre>
+                </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "---"
+  : !!str "foo",
+  ? !!str "...",
+  : !!str "bar"
+}
+%YAML 1.1
+---
+!!seq [
+  !!str "---",
+  !!str "...",
+  !!map {
+    ? !!str "---"
+    : !!str "..."
+  }
+]
+</span></pre>
+                </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Thus, a single line plain scalar is a sequence of valid plain
+              non-<a id="id2537146" class="indexterm"></a><a href="#line break character/">break</a>
+              <a id="id2537160" class="indexterm"></a><a href="#printable character/">printable</a>
+              characters, beginning and ending with non-space character and not
+              conflicting with a <a id="id2537175" class="indexterm"></a><a href="#document boundary marker/">document boundary markers</a>. All characters are
+              considered <a id="id2537189" class="indexterm"></a><a href="#content/syntax">content</a>, including any inner space
+              characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[160]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-plain-single(c)"></a>ns-plain-single(c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    ( <a href="#ns-plain-first-char(c)">ns-plain-first-char(c)</a><br />
+                      ( <a href="#nb-plain-char(c)">nb-plain-char(c)</a>*
+                  <a href="#ns-plain-char(c)">ns-plain-char(c)</a> )? )<br />
+                  - <a href="#l-forbidden-content">l-forbidden-content</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              In a multi-line plain scalar, <a id="id2537249" class="indexterm"></a><a href="#line break character/">line breaks</a> are subject to (flow) <a id="id2537264" class="indexterm"></a><a href="#line folding/">line folding</a>. Any <a id="id2537277" class="indexterm"></a><a href="#ignored line prefix/">prefix</a> and trailing
+              spaces are excluded from the <a id="id2537291" class="indexterm"></a><a href="#content/syntax">content</a>. Like <a id="id2537307" class="indexterm"></a><a href="#single quoted style/syntax">single quoted
+              scalars</a>, in plain scalars it is impossible to force the
+              inclusion of the leading or trailing spaces in the <a id="id2537324" class="indexterm"></a><a href="#content/syntax">content</a>.
+              Therefore, plain scalars lines can only be broken where a single
+              space character separates two non-space characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[161]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-l-plain-break(n)"></a>s-l-plain-break(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-ignored-white">s-ignored-white</a>*
+                  <a href="#b-l-folded-any(n,s)">b-l-folded-any(n,plain)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2537370"></a>
+                <p class="title">
+                  <b>Example 4.67. Plain Line Breaks</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"> as space<span class="honorific"><tt class="filename"><span class="property">&#8594;</span>&#8595;</tt></span><br /> trimmed<span class="honorific"><tt class="filename"><span class="property">·</span>&#8595;
+&#8595;</tt></span>
+ specific<tt class="filename">&#8659;
+&#8595;</tt>
+ none
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "as space \
+  trimmed\n\
+  specific\L\n\
+  none"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-l-plain-break(n)">s-l-plain-break(n)</a></tt>
+  <span class="property"><a href="#s-ignored-white">s-ignored-white</a></span>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              A multi-line plain scalar contains additional continuation lines
+              following the first line.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[162]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-plain-multi(n,c)"></a>ns-plain-multi(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-plain-single(c)">ns-plain-single(c)</a>
+                  <a href="#s-ns-plain-more(n,c)">s-ns-plain-more(n,c)</a>*
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              Each continuation line must contain at least one non-space
+              character. Note that it may be preceded by any number of <a id="id2537506" class="indexterm"></a><a href="#empty line/">empty lines</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[163]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-ns-plain-more(n,c)"></a>s-ns-plain-more(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-l-plain-break(n)">s-l-plain-break(n)</a><br />
+                  <a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,plain)</a>
+                  <a href="#ns-plain-char(c)">ns-plain-char(c)</a><br />
+                  ( <a href="#nb-plain-char(c)">nb-plain-char(c)</a>*
+                  <a href="#ns-plain-char(c)">ns-plain-char(c)</a> )?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2537564"></a>
+                <p class="title">
+                  <b>Example 4.68. Plain Scalars</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"> <tt class="filename">first line</tt><span class="honorific"><tt class="constant"><tt class="literal">·&#8595;<br />···&#8595;</tt>
+<span class="property">··</span>more line</tt></span>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-plain-single(c)">ns-plain-single(c)</a></tt> <tt class="literal"><a href="#s-l-plain-break(n)">s-l-plain-break(n)</a></tt>
+  <span class="property"><a href="#s-ignored-prefix(n,s)">s-ignored-prefix(n,s)</a></span> <tt class="constant"><a href="#s-ns-plain-more(n,c)">s-ns-plain-more(n,c)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "first line\n\
+      more line"
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2537677"></a>4.5.2. Block Scalar Header</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+            <a id="id2537685" class="indexterm"></a><a href="#block scalar style/syntax">Block
+            scalars</a> are specified by several <a id="id2537702" class="indexterm"></a><a href="#indicator/">indicators</a> given in a <a id="id2537714" class="indexterm"></a><a id="block scalar header/"></a
+            ><a href="#index-entry-block scalar header"
+            ><i class="firstterm"
+            >header</i></a
+          > preceding the
+            <a id="id2537729" class="indexterm"></a><a href="#content/syntax">content</a>
+            itself. The header is followed by an ignored <a id="id2537746" class="indexterm"></a><a href="#line break character/">line break</a> (with an optional <a id="id2537760" class="indexterm"></a><a href="#comment/syntax">comment</a>).
+          </p>
+            <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+              <tr>
+                <td>
+                  <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                    <tr>
+                      <td align="left" valign="top" class="productioncounter">[164]</td>
+                      <td align="right" valign="top" class="productionlhs"><a id="c-b-block-header(s,m,t)"></a>c-b-block-header(s,m,t)</td>
+                      <td valign="top" class="productionseperator" align="center">
+                        <tt>::=</tt>
+                      </td>
+                      <td valign="top" class="productionrhs">
+                <a href="#c-style-indicator(s)">c-style-indicator(s)</a><br />
+                ( ( <a href="#c-indentation-indicator(m)">c-indentation-indicator(m)</a><br />
+                    <a href="#c-chomping-indicator(t)">c-chomping-indicator(t)</a> )<br />
+                | ( <a href="#c-chomping-indicator(t)">c-chomping-indicator(t)</a><br />
+                    <a href="#c-indentation-indicator(m)">c-indentation-indicator(m)</a> ) )<br />
+                <a href="#s-b-comment">s-b-comment</a>
+              </td>
+                      <td align="left" valign="top" class="productioncomment"> </td>
+                    </tr>
+                  </table>
+                </td>
+              </tr>
+            </table>
+            <div class="example">
+              <a id="id2537830"></a>
+              <p class="title">
+                <b>Example 4.69. Block Scalar Header</b>
+              </p>
+              <table class="simplelist" border="0" summary="Simple list">
+                <tr>
+                  <td>
+<pre class="programlisting"><span class="database">- <tt class="filename">| # Just the style&#8595;</tt><br /> literal
+- <tt class="filename">&gt;1 # Indentation indicator&#8595;</tt>
+ ·folded
+- <tt class="filename">|+ # Chomping indicator&#8595;</tt>
+ keep
+
+- <tt class="filename">&gt;-1 # Both indicators&#8595;</tt>
+ ·strip
+
+</span></pre>
+            </td>
+                  <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "literal\n",
+  !!str "·folded\n",
+  !!str "keep\n\n",
+  !!str "·strip",
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-b-block-header(s,m,t)">c-b-block-header(s,m,t)</a></tt>
+</pre>
+            </td>
+                </tr>
+              </table>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2537921"></a>4.5.2.1. Block Style Indicator</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              The first character of the <a id="id2537930" class="indexterm"></a><a href="#block scalar header/">block scalar header</a> is either <a id="id2537945" class="indexterm"></a><a id="| literal style/"></a
+            ><a href="#index-entry-| literal style"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>|</tt></b></span>&#8221;</i></a
+          > for a
+              <a id="id2537965" class="indexterm"></a><a href="#literal style/syntax">literal
+              scalar</a> or <a id="id2537981" class="indexterm"></a><a id="&gt; folded style/"></a
+            ><a href="#index-entry-&gt; folded style"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>&gt;</tt></b></span>&#8221;</i></a
+          > for a <a id="id2538001" class="indexterm"></a><a href="#folded style/syntax">folded
+              scalar</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[165]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-style-indicator(s)"></a>c-style-indicator(s)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  s = literal &#8658; <a href="#c-literal">&#8220;<span class="quote">|</span>&#8221;</a><br />
+                  s = folded  &#8658; <a href="#c-folded">&#8220;<span class="quote">&gt;</span>&#8221;</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2538050"></a>
+                <p class="title">
+                  <b>Example 4.70. Block Style Indicator</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">- <tt class="filename">|</tt><br /> literal
+- <tt class="filename">&gt;</tt>
+ folded
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-style-indicator(s)">c-style-indicator(s)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "literal\n",
+  !!str "folded\n",
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2538125"></a>4.5.2.2. Block Indentation Indicator</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              Typically, the <a id="id2538133" class="indexterm"></a><a href="#indentation space/">indentation</a> level of a <a id="id2538147" class="indexterm"></a><a href="#block scalar style/syntax">block scalar</a> is
+              detected from its first non-<a id="id2538164" class="indexterm"></a><a href="#empty line/">empty</a> line. This detection fails when this line
+              contains leading space characters (note it may safely start with
+              a <a id="id2538179" class="indexterm"></a><a href="#tab/">tab</a> or a <a id="id2538191" class="indexterm"></a><a href="## comment/">&#8220;<span class="quote"><b class="userinput"><tt>#</tt></b></span>&#8221;</a> character). When detection
+              fails, YAML requires that the <a id="id2538210" class="indexterm"></a><a href="#indentation space/">indentation</a> level for the <a id="id2538223" class="indexterm"></a><a href="#content/syntax">content</a> be given
+              using an explicit <a id="id2538239" class="indexterm"></a><a id="indentation indicator/"></a
+            ><a href="#index-entry-indentation indicator"
+            ><i class="firstterm"
+            >indentation indicator</i></a
+          >. This level is
+              specified as the integer number of the additional <a id="id2538256" class="indexterm"></a><a href="#indentation space/">indentation</a> spaces used for
+              the <a id="id2538269" class="indexterm"></a><a href="#content/syntax">content</a>. If the <a id="id2538284" class="indexterm"></a><a href="#block scalar style/syntax">block
+              scalar</a> begins with leading <a id="id2538300" class="indexterm"></a><a href="#empty line/">empty lines</a> followed by a non-<a id="id2538314" class="indexterm"></a><a href="#empty line/">empty line</a>, the <a id="id2538326" class="indexterm"></a><a href="#indentation space/">indentation</a> level is
+              deduced from the non-<a id="id2538340" class="indexterm"></a><a href="#empty line/">empty
+              line</a>. In this case, it is an error for any such leading
+              <a id="id2538354" class="indexterm"></a><a href="#empty line/">empty line</a> to contain
+              more spaces than the <a id="id2538367" class="indexterm"></a><a href="#indentation space/">indentation</a> level deduced from the non-<a id="id2538381" class="indexterm"></a><a href="#empty line/">empty</a> line. It is always valid to
+              specify an indentation indicator for a <a id="id2538395" class="indexterm"></a><a href="#block scalar style/syntax">block scalar</a> node,
+              though a YAML <a id="id2538412" class="indexterm"></a><a href="#processor/">processor</a>
+              should only do so in cases where detection will fail.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[166]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-indentation-indicator(m)"></a>c-indentation-indicator(m)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  explicit(m) &#8658; <a href="#ns-dec-digit">ns-dec-digit</a>
+                    - &#8220;<span class="quote">0</span>&#8221;<br />
+                  detect(m)   &#8658; /* empty */
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2538456"></a>
+                <p class="title">
+                  <b>Example 4.71. Block Indentation Indicator</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">- |<br /><tt class="literal">·</tt>detected
+- &gt;
+<tt class="literal">·</tt>
+<tt class="literal">··</tt>
+<tt class="literal">··</tt># detected
+- |1
+<tt class="literal">·</tt>·explicit
+- &gt;
+<tt class="literal">·</tt>&#8594;
+<tt class="literal">·</tt>detected
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "detected\n",
+  !!str "\n\n# detected\n",
+  !!str "·explicit\n",
+  !!str "\t·detected\n",
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-indentation-indicator(m)">c-indentation-indicator(m)</a></tt>
+  <tt class="literal"><a href="#s-indent(n)">s-indent(n)</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <div class="example">
+                <a id="id2538572"></a>
+                <p class="title">
+                  <b>Example 4.72. Invalid Block Scalar Indentation Indicators</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="screen"><span class="database">- |<br />·<tt class="filename">·</tt>
+·text
+- &gt;
+··text
+<tt class="literal">·</tt>text
+- |1
+<span class="property">·</span>text
+</span></pre>
+              </td>
+                    <td>
+<pre class="screen"><span class="database">ERROR:<br />- A leading all-space line must
+  not have too many <tt class="filename">spaces</tt>.
+- A following text line must
+  not be <tt class="literal">less indented</tt>.
+- The text is <span class="property">less indented</span>
+  than the indicated level.
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2538656"></a>4.5.2.3. Block Chomping Indicator</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              YAML supports three possible block <a id="id2538665" class="indexterm"></a><a id="chomping/"></a
+            ><a href="#index-entry-chomping"
+            ><i class="firstterm"
+            >chomping</i></a
+          > methods:
+            </p>
+              <div class="variablelist">
+                <dl>
+                  <dt>
+                    <span class="term">Strip</span>
+                  </dt>
+                  <dd>
+                    <p>
+                    <a id="id2538692" class="indexterm"></a><a id="strip chomping/"></a
+            ><a href="#index-entry-strip chomping"
+            ><i class="firstterm"
+            >Stripping</i></a
+          > is
+                    specified using the <a id="id2538708" class="indexterm"></a><a id="- strip chomping/"></a
+            ><a href="#index-entry-- strip chomping"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>-</tt></b></span>&#8221; chomping indicator</i></a
+          >.
+                    In this case, the <a id="id2538729" class="indexterm"></a><a href="#line break character/">line break</a> character of the last
+                    non-<a id="id2538744" class="indexterm"></a><a href="#empty line/">empty line</a> (if
+                    any) is excluded from the <a id="id2538757" class="indexterm"></a><a href="#scalar/syntax">scalar's content</a>. Any trailing
+                    <a id="id2538773" class="indexterm"></a><a href="#empty line/">empty lines</a> are
+                    considered to be (empty) <a id="id2538786" class="indexterm"></a><a href="#comment/syntax">comment</a> lines and are also
+                    discarded.
+                  </p>
+                  </dd>
+                  <dt>
+                    <span class="term">Clip</span>
+                  </dt>
+                  <dd>
+                    <p>
+                    <a id="id2538816" class="indexterm"></a><a id="clip chomping/"></a
+            ><a href="#index-entry-clip chomping"
+            ><i class="firstterm"
+            >Clipping</i></a
+          > the
+                    default behavior used if no explicit chomping indicator is
+                    specified. In this case, The <a id="id2538832" class="indexterm"></a><a href="#line break character/">line break</a> character of the last
+                    non-<a id="id2538847" class="indexterm"></a><a href="#empty line/">empty line</a> (if
+                    any) is preserved in the <a id="id2538860" class="indexterm"></a><a href="#scalar/syntax">scalar's content</a>. However, any
+                    trailing <a id="id2538876" class="indexterm"></a><a href="#empty line/">empty
+                    lines</a> are considered to be (empty) <a id="id2538890" class="indexterm"></a><a href="#comment/syntax">comment</a>
+                    lines and are discarded.
+                  </p>
+                  </dd>
+                  <dt>
+                    <span class="term">Keep</span>
+                  </dt>
+                  <dd>
+                    <p>
+                    <a id="id2538919" class="indexterm"></a><a id="keep chomping/"></a
+            ><a href="#index-entry-keep chomping"
+            ><i class="firstterm"
+            >Keeping</i></a
+          > is
+                    specified using the <a id="id2538934" class="indexterm"></a><a id="+ keep chomping/"></a
+            ><a href="#index-entry-+ keep chomping"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>+</tt></b></span>&#8221; chomping indicator</i></a
+          >.
+                    In this case, the <a id="id2538956" class="indexterm"></a><a href="#line break character/">line break</a> character of the last
+                    non-<a id="id2538971" class="indexterm"></a><a href="#empty line/">empty line</a> (if
+                    any) is preserved in the <a id="id2538984" class="indexterm"></a><a href="#scalar/syntax">scalar's content</a>. In addition,
+                    any trailing <a id="id2539000" class="indexterm"></a><a href="#empty line/">empty
+                    lines</a> are each considered to <a id="id2539013" class="indexterm"></a><a href="#present/">present</a> a single trailng
+                    <a id="id2539026" class="indexterm"></a><a href="#content/syntax">content</a> <a id="id2539041" class="indexterm"></a><a href="#line break character/">line break</a>. Note that these
+                    <a id="id2539056" class="indexterm"></a><a href="#line break character/">line
+                    breaks</a> are not subject to <a id="id2539069" class="indexterm"></a><a href="#line folding/">folding</a>.
+                  </p>
+                  </dd>
+                </dl>
+              </div>
+              <p>
+              The chomping method ised is a <a id="id2539091" class="indexterm"></a><a href="#presentation detail/">presentation detail</a> and is not reflected in the
+              <a id="id2539106" class="indexterm"></a><a href="#serialization/">serialization tree</a>
+              (and hence the <a id="id2539119" class="indexterm"></a><a href="#representation/">representation</a> graph).
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[167]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-chomping-indicator(t)"></a>c-chomping-indicator(t)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <tt class="varname">t</tt> = strip &#8658;
+                  &#8220;<span class="quote">-</span>&#8221;<br />
+                  <tt class="varname">t</tt> = clip  &#8658;
+                    /* empty */<br />
+                  <tt class="varname">t</tt> = keep  &#8658;
+                  &#8220;<span class="quote">+</span>&#8221;
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              Thus, the final <a id="id2539176" class="indexterm"></a><a href="#line break character/">line
+              break</a> of a <a id="id2539189" class="indexterm"></a><a href="#block scalar style/syntax">block scalar</a> may be included or
+              excluded from the <a id="id2539207" class="indexterm"></a><a href="#content/syntax">content</a>, depending on the specified
+              chomping indicator.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[168]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="b-chomped-last(t)"></a>b-chomped-last(t)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <tt class="varname">t</tt> = strip &#8658;
+                  <a href="#b-strip-last">b-strip-last</a><br />
+                  <tt class="varname">t</tt> = clip  &#8658;
+                  <a href="#b-keep-last">b-keep-last</a><br />
+                  <tt class="varname">t</tt> = keep  &#8658;
+                  <a href="#b-keep-last">b-keep-last</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[169]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="b-strip-last"></a>b-strip-last</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#b-ignored-any">b-ignored-any</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[170]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="b-keep-last"></a>b-keep-last</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#b-normalized">b-normalized</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2539303"></a>
+                <p class="title">
+                  <b>Example 4.73. Chomping Final Line Break</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">strip: |-<br />  text<tt class="filename">¶</tt>
+clip: |
+  text<tt class="literal">&#8595;</tt>
+keep: |+
+  text<tt class="literal">&#8659;</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#b-strip-last">b-strip-last</a></tt>
+  <tt class="literal"><a href="#b-keep-last">b-keep-last</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "strip"
+  : !!str "text",
+  ? !!str "clip"
+  : !!str "text\n",
+  ? !!str "keep"
+  : !!str "text\L",
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Similarly, <a id="id2539398" class="indexterm"></a><a href="#empty line/">empty lines</a>
+              immediately following the <a id="id2539412" class="indexterm"></a><a href="#block scalar style/syntax">block scalar</a> may be interpreted
+              either as <a id="id2539429" class="indexterm"></a><a href="#present/">presenting</a>
+              trailing <a id="id2539441" class="indexterm"></a><a href="#line break character/">line
+              breaks</a> or as (empty) <a id="id2539455" class="indexterm"></a><a href="#comment/syntax">comment</a> lines, depending on the
+              specified chomping indicator.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[171]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-chomped-empty(n,t)"></a>l-chomped-empty(n,t)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <tt class="varname">t</tt> = strip &#8658;
+                  <a href="#l-strip-empty(n)">l-strip-empty(n)</a><br />
+                  <tt class="varname">t</tt> = clip  &#8658;
+                  <a href="#l-strip-empty(n)">l-strip-empty(n)</a><br />
+                  <tt class="varname">t</tt> = keep  &#8658;
+                  <a href="#l-keep-empty(n)">l-keep-empty(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[172]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-strip-empty(n)"></a>l-strip-empty(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  ( <a href="#s-indent(n)">s-indent(&#8804;n)</a>
+                  <a href="#b-ignored-any">b-ignored-any</a> )*
+                  <a href="#l-trail-comments(n)">l-trail-comments(n)</a>?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[173]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-keep-empty(n)"></a>l-keep-empty(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#l-empty(n,s)">l-empty(n,literal)</a>*
+                  <a href="#l-trail-comments(n)">l-trail-comments(n)</a>?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              Explicit <a id="id2539574" class="indexterm"></a><a href="#comment/syntax">comment</a> lines may then follow. To
+              prevent ambiguity, the first such <a id="id2539591" class="indexterm"></a><a href="#comment/syntax">comment</a> line must be less <a id="id2539606" class="indexterm"></a><a href="#indentation space/">indented</a> than the <a id="id2539619" class="indexterm"></a><a href="#block scalar style/syntax">block scalar
+              content</a>. Additional <a id="id2539636" class="indexterm"></a><a href="#comment/syntax">comment</a> lines, if any, are not so
+              restricted.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[174]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-trail-comments(n)"></a>l-trail-comments(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-indent(n)">s-indent(&lt;n)</a>
+                  <a href="#c-nb-comment-text">c-nb-comment-text</a>
+                  <a href="#b-ignored-any">b-ignored-any</a><br />
+                  <a href="#l-comment">l-comment</a>*
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2539690"></a>
+                <p class="title">
+                  <b>Example 4.74. Block Scalar Chomping</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"> # Strip<br />  # Comments:
+strip: |-
+  # text¶
+<span class="honorific"><tt class="filename">··&#8659;
+<span class="property">·# Clip
+··# comments:
+&#8595;</span></tt></span>
+clip: |
+  # text&#8595;
+<span class="honorific"><tt class="filename">·¶
+<span class="property">·# Keep
+··# comments:
+&#8595;</span></tt></span>
+keep: |+
+  # text&#8659;
+<span class="honorific"><tt class="literal">&#8595;
+<span class="property">·# Trail
+··# comments.</span></tt></span>
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  ? !!str "strip"
+  : !!str "text",
+  ? !!str "clip"
+  : !!str "text\n",
+  ? !!str "keep"
+  : !!str "text\L\n",
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-strip-empty(n)">l-strip-empty(n)</a></tt>
+  <tt class="literal"><a href="#l-keep-empty(n)">l-keep-empty(n)</a></tt>
+  <span class="property"><a href="#l-trail-comments(n)">l-trail-comments(n)</a></span>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Note that if a <a id="id2539818" class="indexterm"></a><a href="#block scalar style/syntax">block scalar</a> consists of only
+              <a id="id2539835" class="indexterm"></a><a href="#empty line/">empty lines</a>, then these
+              lines are considered trailing lines and hence are affected by
+              chomping.
+            </p>
+              <div class="example">
+                <a id="id2539850"></a>
+                <p class="title">
+                  <b>Example 4.75. Empty Scalar Chomping</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">strip: &gt;-<br /><tt class="filename">&#8595;</tt>
+clip: &gt;
+<tt class="filename">&#8595;</tt>
+keep: |+
+<tt class="literal">&#8595;</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-strip-empty(n)">l-strip-empty(n)</a></tt>
+  <tt class="literal"><a href="#l-keep-empty(n)">l-keep-empty(n)</a></tt>
+</pre>
+                </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  ? !!str "strip"
+  : !!str "",
+  ? !!str "clip"
+  : !!str "",
+  ? !!str "keep"
+  : !!str "\n",
+]
+</span></pre>
+                </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2539942"></a>4.5.3. Block Scalar Styles</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          YAML provides two <a id="id2539951" class="indexterm"></a><a id="block scalar style/syntax"></a
+            ><a href="#index-entry-block scalar style"
+            ><i class="firstterm"
+            >Block scalar styles</i></a
+          >, <a id="id2539969" class="indexterm"></a><a href="#literal style/syntax">literal</a> and
+          <a id="id2539985" class="indexterm"></a><a href="#folded style/syntax">folded</a>.
+          The block scalar <a id="id2540001" class="indexterm"></a><a href="#content/syntax">content</a> is is ended by a less-<a id="id2540016" class="indexterm"></a><a href="#indentation space/">indented</a> line or the end of the
+          characters <a id="id2540030" class="indexterm"></a><a href="#stream/syntax">stream</a>.
+        </p>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2540046"></a>4.5.3.1. Literal</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              The <a id="id2540054" class="indexterm"></a><a id="literal style/syntax"></a
+            ><a href="#index-entry-literal style"
+            ><i class="firstterm"
+            >literal
+              style</i></a
+          > is the simplest, most restricted and most
+              readable <a id="id2540072" class="indexterm"></a><a href="#scalar/syntax">scalar
+              style</a>. It is especially suitable for source code or
+              other text containing significant use of <a id="id2540090" class="indexterm"></a><a href="#indicator/">indicators</a>, <a id="id2540102" class="indexterm"></a><a href="#escaping in double quoted style/">escape
+              sequences</a> and <a id="id2540116" class="indexterm"></a><a href="#line break character/">line breaks</a>. In particular, literal content
+              lines may begin with a <a id="id2540132" class="indexterm"></a><a href="#tab/">tab</a> or a
+              <a id="id2540144" class="indexterm"></a><a href="## comment/">&#8220;<span class="quote"><b class="userinput"><tt>#</tt></b></span>&#8221;</a>
+              character.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[175]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-l+literal(n)"></a>c-l+literal(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-b-block-header(s,m,t)">c-b-block-header(literal,m,t)</a><br />
+                  <a href="#l-literal-content(n,t)">l-literal-content(n+m,t)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2540191"></a>
+                <p class="title">
+                  <b>Example 4.76. Literal Scalar</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"><tt class="filename">| # Simple block scalar&#8595;</tt><br /><tt class="literal"> literal&#8595;
+ &#8594;text&#8595;</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-b-block-header(s,m,t)">c-b-block-header(s,m,t)</a></tt>
+  <tt class="literal"><a href="#l-literal-content(n,t)">l-literal-content(n,t)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "literal\n\
+        \ttext\n"
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Inside literal scalars, each non-<a id="id2540278" class="indexterm"></a><a href="#empty line/">empty line</a> may be preceded by any number of
+              <a id="id2540292" class="indexterm"></a><a href="#empty line/">empty lines</a>. No
+              processing is performed on these lines except for stripping the
+              <a id="id2540306" class="indexterm"></a><a href="#indentation space/">indentation</a>. In
+              particular, such lines are never <a id="id2540320" class="indexterm"></a><a href="#line folding/">folded</a>. Literal non-<a id="id2540333" class="indexterm"></a><a href="#empty line/">empty lines</a> may include only spaces, <a id="id2540346" class="indexterm"></a><a href="#tab/">tabs</a>, and other <a id="id2540359" class="indexterm"></a><a href="#printable character/">printable</a> characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[176]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-nb-literal-text(n)"></a>l-nb-literal-text(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#l-empty(n,s)">l-empty(n,block)</a>*
+                  <a href="#s-indent(n)">s-indent(n)</a>
+                  <a href="#nb-char">nb-char</a>+
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              The <a id="id2540408" class="indexterm"></a><a href="#line break character/">line break</a>
+              following a non-<a id="id2540422" class="indexterm"></a><a href="#empty line/">empty</a>
+              inner literal line is <a id="id2540435" class="indexterm"></a><a href="#line break normalization/">normalized</a>. Again, such <a id="id2540451" class="indexterm"></a><a href="#line break character/">line breaks</a> are never
+              <a id="id2540464" class="indexterm"></a><a href="#line folding/">folded</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[177]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-nb-literal-inner(n)"></a>l-literal-inner(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#l-nb-literal-text(n)">l-nb-literal-text(n)</a>
+                  <a href="#b-normalized">b-normalized</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2540503"></a>
+                <p class="title">
+                  <b>Example 4.77. Inner Literal Lines</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">|<br /><span class="honorific"><tt class="literal"><tt class="filename">·
+··
+··literal</tt>&#8595;</tt></span>
+<tt class="filename">·
+··text</tt>&#8595;
+&#8595;
+·# Comment
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "\nliteral\n\ntext\n"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-nb-literal-text(n)">l-nb-literal-text(n)</a></tt>
+  <tt class="literal"><a href="#l-nb-literal-inner(n)">l-nb-literal-inner(n)</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              The <a id="id2540599" class="indexterm"></a><a href="#line break character/">line break</a>
+              following the final non-<a id="id2540613" class="indexterm"></a><a href="#empty line/">empty</a> literal line is subject to <a id="id2540626" class="indexterm"></a><a href="#chomping/">chomping</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[178]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-nb-literal-last(n,t)"></a>l-literal-last(n,t)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#l-nb-literal-text(n)">l-nb-literal-text(n)</a>
+                  <a href="#b-chomped-last(t)">b-chomped-last(t)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              Trailing <a id="id2540668" class="indexterm"></a><a href="#empty line/">empty lines</a>
+              following the last literal non-<a id="id2540681" class="indexterm"></a><a href="#empty line/">empty line</a>, if any, are also subject to <a id="id2540694" class="indexterm"></a><a href="#chomping/">chomping</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[179]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-literal-content(n,t)"></a>l-literal-content(n,t)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  ( <a href="#l-nb-literal-inner(n)">l-literal-inner(n)</a>*
+                  <a href="#l-nb-literal-last(n,t)">l-literal-last(n,t)</a> )?<br />
+                  <a href="#l-chomped-empty(n,t)">l-chomped-empty(n,t)</a>?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2540742"></a>
+                <p class="title">
+                  <b>Example 4.78. Last Literal Line</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">|<br /><tt class="filename">·
+··
+··literal</tt>&#8595;
+<span class="honorific"><tt class="literal"><tt class="filename">·
+··text</tt><span class="property">&#8595;</span>
+<tt class="constant">&#8595;</tt></tt></span>
+·# Comment
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!str "\nliteral\n\ntext\n"
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-nb-literal-text(n)">l-nb-literal-text(n)</a></tt>
+  <tt class="literal"><a href="#l-nb-literal-last(n,t)">l-nb-literal-last(n,t)</a></tt>
+  <span class="property"><a href="#b-chomped-last(t)">b-chomped-last(t)</a></span>
+  <tt class="constant"><a href="#l-chomped-empty(n,t)">l-chomped-empty(n,t)</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2540863"></a>4.5.3.2. Folded</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              The <a id="id2540871" class="indexterm"></a><a id="folded style/syntax"></a
+            ><a href="#index-entry-folded style"
+            ><i class="firstterm"
+            >folded
+              style</i></a
+          > is similar to the <a id="id2540888" class="indexterm"></a><a href="#literal style/syntax">literal style</a>. However,
+              unlike <a id="id2540905" class="indexterm"></a><a href="#literal style/syntax">literal content</a>, folded content is
+              subject to (block) <a id="id2540922" class="indexterm"></a><a href="#line folding/">line
+              folding</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[180]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-l+folded(n)"></a>c-l+folded(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-b-block-header(s,m,t)">c-b-block-header(folded,m,t)</a><br />
+                  <a href="#l-folded-content(n,t)">l-folded-content(n+m,t)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2540965"></a>
+                <p class="title">
+                  <b>Example 4.79. Folded Scalar</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"><tt class="filename">&gt; # Simple folded scalar&#8595;</tt><br /><tt class="literal"> folded&#8595;
+ text&#8595;
+ &#8594;lines&#8595;</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-b-block-header(s,m,t)">c-b-block-header(s,m,t)</a></tt>
+  <tt class="literal"><a href="#l-folded-content(n,t)">l-folded-content(n,t)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "folded text\n\
+        \ttext\n"
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              <a id="id2541050" class="indexterm"></a><a href="#line folding/">Line folding</a> allows
+              long <a id="id2541064" class="indexterm"></a><a href="#content/syntax">content</a> lines to be broken anywhere
+              a single space character separates two non-space characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[181]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-nb-folded-text(n)"></a>s-nb-folded-line(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-indent(n)">s-indent(n)</a>
+                  <a href="#ns-char">ns-char</a>
+                  <a href="#nb-char">nb-char</a>*
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[182]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-nb-folded-lines(n)"></a>l-nb-folded-lines(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  ( <a href="#s-nb-folded-text(n)">s-nb-folded-line(n)</a><br />
+                    <a href="#b-l-folded-any(n,s)">b-l-folded-any(n,folded)</a> )*<br />
+                  <a href="#s-nb-folded-text(n)">s-nb-folded-line(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2541144"></a>
+                <p class="title">
+                  <b>Example 4.80. Folded Lines</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">&gt;<br /><tt class="filename">·folded&#8595;
+·line&#8595;
+&#8595;
+·next
+·line</tt>&#8595;
+
+   * bullet
+   * list
+
+<tt class="filename">·last&#8595;
+·line</tt>&#8595;
+
+# Comment
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "folded line\n\
+        next line\n\
+        \  * bullet\n\
+        \  * list\n\
+        last line\n"
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-nb-folded-lines(n)">l-nb-folded-lines(n)</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Lines starting with <a id="id2541225" class="indexterm"></a><a href="#white space/">white
+              space</a> characters (<a id="id2541238" class="indexterm"></a><a id="more indented line/"></a
+            ><a href="#index-entry-more indented line"
+            ><i class="firstterm"
+            >&#8220;<span class="quote">more indented</span>&#8221; lines</i></a
+          >) are not
+              <a id="id2541256" class="indexterm"></a><a href="#line folding/">folded</a>. Note that
+              folded scalars, like <a id="id2541270" class="indexterm"></a><a href="#literal style/syntax">literal scalars</a>, may contain
+              <a id="id2541286" class="indexterm"></a><a href="#tab/">tab</a> characters. However, any
+              such characters must be properly <a id="id2541300" class="indexterm"></a><a href="#indentation space/">indented</a> using only space characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[183]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="b-l-spaced(n)"></a>b-l-spaced(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#b-normalized">b-normalized</a>
+                  <a href="#l-empty(n,s)">l-empty(n,folded)</a>*
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[184]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-nb-spaced-text(n)"></a>s-nb-spaced-text(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-indent(n)">s-indent(n)</a>
+                  <a href="#s-white">s-white</a>
+                  <a href="#nb-char">nb-char</a>*
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[185]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-nb-spaced-lines(n)"></a>l-nb-spaced-lines(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  ( <a href="#s-nb-spaced-text(n)">s-nb-spaced-text(n)</a>
+                  <a href="#b-l-spaced(n)">b-l-spaced(n)</a> )*<br />
+                  <a href="#s-nb-spaced-text(n)">s-nb-spaced-text(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2541396"></a>
+                <p class="title">
+                  <b>Example 4.81. Spaced Lines</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">&gt;<br /> folded
+ line
+
+ next
+ line
+
+<tt class="filename">···* bullet&#8595;
+···* list</tt>&#8595;
+
+ last
+ line
+
+# Comment
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "folded line\n\
+        next line\n\
+        \  * bullet\n\
+        \  * list\n\
+        last line\n"
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#l-nb-spaced-lines(n)">l-nb-spaced-lines(n)</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Folded content may start with either line type. If the <a id="id2541471" class="indexterm"></a><a href="#content/syntax">content</a> begins
+              with a &#8220;<span class="quote">more indented</span>&#8221; line (starting with spaces),
+              an <a id="id2541491" class="indexterm"></a><a href="#indentation indicator/">indentation
+              indicator</a> must be specified in the block header. Note
+              that leading <a id="id2541508" class="indexterm"></a><a href="#empty line/">empty lines</a>
+              and <a id="id2541520" class="indexterm"></a><a href="#empty line/">empty lines</a>
+              separating lines of a different type are never <a id="id2541534" class="indexterm"></a><a href="#line folding/">folded</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[186]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-nb-start-with-folded(n)"></a>l-nb-start-with-folded(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#l-empty(n,s)">l-empty(n,block)</a>*
+                  <a href="#l-nb-folded-lines(n)">l-nb-folded-lines(n)</a><br />
+                  ( <a href="#b-normalized">b-normalized</a>
+                  <a href="#l-nb-start-with-spaced(n)">l-nb-start-with-spaced(n)</a> )?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[187]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-nb-start-with-spaced(n)"></a>l-nb-start-with-spaced(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#l-empty(n,s)">l-empty(n,block)</a>*
+                  <a href="#l-nb-spaced-lines(n)">l-nb-spaced-lines(n)</a><br />
+                  ( <a href="#b-normalized">b-normalized</a>
+                  <a href="#l-nb-start-with-folded(n)">l-nb-start-with-folded(n)</a> )?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[188]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-nb-start-with-any(n)"></a>l-nb-start-with-any(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    <a href="#l-nb-start-with-folded(n)">l-nb-start-with-folded(n)</a><br />
+                  | <a href="#l-nb-start-with-spaced(n)">l-nb-start-with-spaced(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2541646"></a>
+                <p class="title">
+                  <b>Example 4.82. Empty Separation Lines</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">&gt;<br /> folded
+ line
+
+ next
+ line<tt class="filename">&#8595;</tt>
+<tt class="literal">&#8595;</tt>
+   * bullet
+   * list<tt class="filename">&#8595;</tt>
+<tt class="literal">&#8595;</tt>
+ last
+ line
+
+# Comment
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "folded line\n\
+        next line\n\
+        \  * bullet\n\
+        \  * list\n\
+        last line\n"
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#b-normalized">b-normalized</a></tt> <tt class="literal"><a href="#l-empty(n,s)">l-empty(n,s)</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              The final <a id="id2541747" class="indexterm"></a><a href="#line break character/">line
+              break</a>, and trailing <a id="id2541761" class="indexterm"></a><a href="#empty line/">empty
+              lines</a>, if any, are subject to <a id="id2541774" class="indexterm"></a><a href="#chomping/">chomping</a> and are never <a id="id2541787" class="indexterm"></a><a href="#line folding/">folded</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[189]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-folded-content(n,t)"></a>l-folded-content(n,t)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  ( <a href="#l-nb-start-with-any(n)">l-nb-start-with-any(n)</a>
+                  <a href="#b-chomped-last(t)">b-chomped-last(t)</a> )?<br />
+                  <a href="#l-chomped-empty(n,t)">l-chomped-empty(n,t)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2541833"></a>
+                <p class="title">
+                  <b>Example 4.83. Final Empty Lines</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">&gt;<br /> folded
+ line
+
+ next
+ line
+
+   * bullet
+   * list
+
+ last
+ line<tt class="filename">&#8595;</tt>
+<tt class="literal">&#8595;</tt>
+# Comment
+</span></pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "folded line\n\
+        next line\n\
+        \  * bullet\n\
+        \  * list\n\
+        last line\n"
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#b-chomped-last(t)">b-chomped-last(t)</a></tt> <tt class="literal"><a href="#l-chomped-empty(n,t)">l-chomped-empty(n,t)</a></tt>
+</pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+          </div>
+        </div>
+        <div class="sect1" lang="en" xml:lang="en">
+          <div class="titlepage">
+            <div>
+              <div>
+                <h2 class="title" style="clear: both"><a id="id2541922"></a>4.6. Collection Styles</h2>
+              </div>
+            </div>
+            <div></div>
+          </div>
+          <p>
+        <a id="id2541930" class="indexterm"></a><a id="collection/syntax"></a
+            ><a href="#index-entry-collection"
+            ><i class="firstterm"
+            >Collection
+        content</i></a
+          > can be presented in a single <a id="id2541948" class="indexterm"></a><a id="flow collection style/syntax"></a
+            ><a href="#index-entry-flow collection style"
+            ><i class="firstterm"
+            >flow style</i></a
+          > and a single
+        <a id="id2541967" class="indexterm"></a><a id="block collection style/syntax"></a
+            ><a href="#index-entry-block collection style"
+            ><i class="firstterm"
+            >block
+        style</i></a
+          > for each of the two <a id="id2541985" class="indexterm"></a><a href="#kind/">collection
+        kinds</a> (<a id="id2541998" class="indexterm"></a><a href="#sequence/syntax">sequence</a> and <a id="id2542015" class="indexterm"></a><a href="#mapping/syntax">mapping</a>). In addition, YAML provides
+        several <a id="id2542032" class="indexterm"></a><a href="#in-line style/syntax">in-line</a> compact syntax forms for improved
+        readability of common special cases. In all cases, the collection style
+        is a <a id="id2542050" class="indexterm"></a><a href="#presentation detail/">presentation
+        detail</a> and must not be used to convey <a id="id2542063" class="indexterm"></a><a href="#content/information model">content
+        information</a>.
+      </p>
+          <p>
+          A flow collection may be nested within a block collection (<a id="id2542083" class="indexterm"></a><a href="#flow-out context/">flow-out context</a>), nested within
+          another flow collection (<a id="id2542097" class="indexterm"></a><a href="#flow-in context/">flow-in
+          context</a>), or be a part of a <a id="id2542111" class="indexterm"></a><a href="#simple key/">simple key</a> (<a id="id2542124" class="indexterm"></a><a href="#flow-key context/">flow-key context</a>). Flow collection entries are
+          separated by the <a id="id2542138" class="indexterm"></a><a id=", end flow entry/"></a
+            ><a href="#index-entry-, end flow entry"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>,</tt></b></span>&#8221; indicator</i></a
+          >. The final
+          &#8220;<span class="quote"><b class="userinput"><tt>,</tt></b></span>&#8221; may be ommitted. This does not cause ambiguity
+          because flow collection entries can never be <a id="id2542167" class="indexterm"></a><a href="#completely empty node/">completely empty</a>.
+        </p>
+          <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+            <tr>
+              <td>
+                <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                  <tr>
+                    <td align="left" valign="top" class="productioncounter">[190]</td>
+                    <td align="right" valign="top" class="productionlhs"><a id="in-flow(c)"></a>in-flow(c)</td>
+                    <td valign="top" class="productionseperator" align="center">
+                      <tt>::=</tt>
+                    </td>
+                    <td valign="top" class="productionrhs">
+              <tt class="varname">c</tt> = flow-out &#8658; flow-in<br />
+              <tt class="varname">c</tt> = flow-in  &#8658; flow-in<br />
+              <tt class="varname">c</tt> = flow-key &#8658; flow-key
+            </td>
+                    <td align="left" valign="top" class="productioncomment"> </td>
+                  </tr>
+                </table>
+              </td>
+            </tr>
+          </table>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2542214"></a>4.6.1. Sequence Styles</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          <a id="id2542222" class="indexterm"></a><a id="sequence/syntax"></a
+            ><a href="#index-entry-sequence"
+            ><i class="firstterm"
+            >Sequence
+          content</i></a
+          > is an ordered collection of sub-<a id="id2542240" class="indexterm"></a><a href="#node/syntax">nodes</a>. <a id="id2542254" class="indexterm"></a><a href="#comment/syntax">Comments</a> may be
+          interleaved between the sub-<a id="id2542270" class="indexterm"></a><a href="#node/syntax">nodes</a>. Sequences may be <a id="id2542285" class="indexterm"></a><a href="#present/">presented</a> in a <a id="id2542298" class="indexterm"></a><a href="#flow sequence style/syntax">flow style</a> or a <a id="id2542315" class="indexterm"></a><a href="#block sequence style/syntax">block
+          style</a>. YAML provides compact notations for <a id="id2542331" class="indexterm"></a><a href="#in-line style/syntax">in-line</a> nesting
+          of a <a id="id2542347" class="indexterm"></a><a href="#collection/syntax">collection</a> in a <a id="id2542362" class="indexterm"></a><a href="#block sequence style/syntax">block sequence</a> and for
+          nesting a <a id="id2542379" class="indexterm"></a><a href="#single pair style/syntax">single pair mapping</a> in a <a id="id2542397" class="indexterm"></a><a href="#flow sequence style/syntax">flow
+          sequence</a>.
+        </p>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2542413"></a>4.6.1.1. Flow Sequences</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              <a id="id2542421" class="indexterm"></a><a id="flow sequence style/syntax"></a
+            ><a href="#index-entry-flow sequence style"
+            ><i class="firstterm"
+            >Flow
+              sequence content</i></a
+          > is denoted by surrounding <a id="id2542439" class="indexterm"></a><a id="[ start flow sequence/"></a
+            ><a href="#index-entry-[ start flow sequence"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>[</tt></b></span>&#8221;</i></a
+          > and
+              <a id="id2542459" class="indexterm"></a><a id="] end flow sequence/"></a
+            ><a href="#index-entry-] end flow sequence"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>]</tt></b></span>&#8221;</i></a
+          > characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[191]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-flow-sequence(n,c)"></a>c-flow-sequence(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-sequence-start">&#8220;<span class="quote">[</span>&#8221;</a>
+                  <a href="#s-separate(n,c)">s-separate(n,c)</a>?<br />
+                  <a href="#ns-s-flow-seq-inner(n,c)">ns-s-flow-seq-inner(n,c)</a>*<br />
+                  <a href="#ns-s-flow-seq-last(n,c)">ns-s-flow-seq-last(n,c)</a>?<br />
+                  <a href="#c-sequence-end">&#8220;<span class="quote">]</span>&#8221;</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              Sequence entries are separated by a <a id="id2542532" class="indexterm"></a><a href="#, end flow entry/">&#8220;<span class="quote"><b class="userinput"><tt>,</tt></b></span>&#8221;</a> character.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[192]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-s-flow-seq-inner(n,c)"></a>ns-s-flow-seq-inner(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-s-flow-seq-entry(n,c)">ns-s-flow-seq-entry(n,c)</a>
+                  <a href="#c-collect-entry">&#8220;<span class="quote">,</span>&#8221;</a>
+                  <a href="#s-separate(n,c)">s-separate(n,c)</a>?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              The final entry may omit the <a id="id2542586" class="indexterm"></a><a href="#, end flow entry/">&#8220;<span class="quote"><b class="userinput"><tt>,</tt></b></span>&#8221;</a> character. This does not
+              cause ambiguity since sequence entries must not be <a id="id2542606" class="indexterm"></a><a href="#completely empty node/">completely empty</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[193]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-s-flow-seq-last(n,c)"></a>ns-s-flow-seq-last(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-s-flow-seq-entry(n,c)">ns-s-flow-seq-entry(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2542640"></a>
+                <p class="title">
+                  <b>Example 4.84. Flow Sequence</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">- <tt class="filename">[</tt> <tt class="literal">inner, </tt><tt class="literal">inner, </tt><tt class="filename">]</tt><br />- <tt class="filename">[</tt><tt class="literal">inner,</tt><span class="property">last</span><tt class="filename">]</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-sequence-start">c-sequence-start</a></tt> <tt class="filename"><a href="#c-sequence-end">c-sequence-end</a></tt>
+  <tt class="literal"><a href="#ns-s-flow-seq-inner(n,c)">ns-s-flow-seq-inner(n,c)</a></tt>
+  <span class="property"><a href="#ns-s-flow-seq-last(n,c)">ns-s-flow-seq-last(n,c)</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!seq [
+    !!str "inner",
+    !!str "inner",
+  ],
+  !!seq [
+    !!str "inner",
+    !!str "last",
+  ],
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Any <a id="id2542778" class="indexterm"></a><a href="#flow style/syntax">flow
+              node</a> may be used as a flow sequence entry. In addition,
+              YAML provides a compact form for the case where a flow sequence
+              entry is a <a id="id2542796" class="indexterm"></a><a href="#mapping/syntax">mapping</a> with a <a id="id2542812" class="indexterm"></a><a href="#single pair style/syntax">single
+              key: value pair</a>, and neither the <a id="id2542829" class="indexterm"></a><a href="#mapping/syntax">mapping node</a> nor
+              its single <a id="id2542844" class="indexterm"></a><a href="#key/syntax">key
+              node</a> have any <a id="id2542859" class="indexterm"></a><a href="#node property/">properties</a> specified.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[194]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-s-flow-seq-entry(n,c)"></a>ns-s-flow-seq-entry(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    ( <a href="#ns-flow-node(n,c)">ns-flow-node(n,<a href="#in-flow(c)">in-flow(c)</a>)</a><br />
+                      <a href="#s-separate(n,c)">s-separate(n,<a href="#in-flow(c)">in-flow(c)</a>)</a>? )<br />
+                  | <a href="#ns-s-flow-single-pair(n,c)">ns-s-flow-single-pair(n,<a href="#in-flow(c)">in-flow(c)</a>)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2542926"></a>
+                <p class="title">
+                  <b>Example 4.85. Flow Sequence Entries</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">[<br /><tt class="filename">"double
+ quoted"</tt>, <tt class="filename">'single
+           quoted'</tt>,
+<tt class="filename">plain
+ text</tt>, <tt class="filename">[ nested ]</tt>,
+<tt class="literal">single: pair </tt>,
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-flow-node(n,c)">ns-flow-node(n,c)</a></tt>
+  <tt class="literal"><a href="#ns-s-flow-single-pair(n,c)">ns-s-flow-single-pair(n,c)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "double quoted",
+  !!str "single quoted",
+  !!str "plain text",
+  !!seq [
+    !!str "nested",
+  ],
+  !!map {
+    ? !!str "single"
+    : !!str "pair"
+  }
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2543032"></a>4.6.1.2. Block Sequences</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              A <a id="id2543040" class="indexterm"></a><a id="block sequence style/syntax"></a
+            ><a href="#index-entry-block sequence style"
+            ><i class="firstterm"
+            >block sequence</i></a
+          > is simply a series of
+              entries, each <a id="id2543060" class="indexterm"></a><a href="#present/">presenting</a> a
+              single <a id="id2543072" class="indexterm"></a><a href="#node/syntax">node</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[195]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-l-block-sequence(n,c)"></a>c-l-block-sequence(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-l-comments">c-l-comments</a>
+                  <a href="#l-block-seq-entry(n,c)">l-block-seq-entry(n,c)</a>+
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2543114"></a>
+                <p class="title">
+                  <b>Example 4.86. Block Sequence</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">block: <tt class="filename"># Block<br />       # sequence&#8595;</tt>
+<tt class="literal">- one&#8595;</tt>
+<tt class="literal">- two : three&#8595;</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-l-comments">c-l-comments</a></tt>
+  <tt class="literal"><a href="#l-block-seq-entry(n,c)">l-block-seq-entry(n,c)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "block"
+  : !!seq [
+    !!str "one",
+    !!str "two"
+  ]
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Each block sequence entry is denoted by a leading <a id="id2543210" class="indexterm"></a><a id="- block sequence entry/"></a
+            ><a href="#index-entry-- block sequence entry"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>-</tt></b></span>&#8221;
+              indicator</i></a
+          >, <a id="id2543230" class="indexterm"></a><a href="#separation space/">separated</a> by spaces from the entry <a id="id2543245" class="indexterm"></a><a href="#node/syntax">node</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[196]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-block-seq-entry(n,c)"></a>l-block-seq-entry(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-indent(n)">s-indent(seq-spaces(n,c))</a>
+                  <a href="#c-sequence-entry">&#8220;<span class="quote">-</span>&#8221;</a><br />
+                  <a href="#s-l+block-indented(n,c)">s-l+block-indented(seq-spaces(n,c),c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              People read the &#8220;<span class="quote"><b class="userinput"><tt>-</tt></b></span>&#8221; character as part of the
+              <a id="id2543307" class="indexterm"></a><a href="#indentation space/">indentation</a>.
+              Hence, block sequence entries require one less space of <a id="id2543321" class="indexterm"></a><a href="#indentation space/">indentation</a>, unless the
+              block sequence is nested within another block sequence (hence the
+              need for the <a id="id2543336" class="indexterm"></a><a id="block-in context/"></a
+            ><a href="#index-entry-block-in context"
+            ><i class="firstterm"
+            >block-in
+              context</i></a
+          > and <a id="id2543351" class="indexterm"></a><a id="block-out context/"></a
+            ><a href="#index-entry-block-out context"
+            ><i class="firstterm"
+            >block-out context</i></a
+          >).
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[197]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="seq-spaces(n,c)"></a>seq-spaces(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <tt class="varname">c</tt> = block-out &#8658; n-1<br />
+                  <tt class="varname">c</tt> = block-in  &#8658; n
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2543394"></a>
+                <p class="title">
+                  <b>Example 4.87. Block Sequence Entry Indentation</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">block:<br /><tt class="literal">- one</tt>
+<span class="honorific"><tt class="literal">-
+<tt class="filename">·</tt><tt class="literal">- two</tt></tt></span>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-indent(n)">s-indent(n)</a></tt>
+  <tt class="literal"><a href="#s-l+block-indented(n,c)">s-l+block-indented(n,c)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "block"
+  : !!seq [
+    !!str "one",
+    !!seq [
+      !!str "two"
+    ]
+  ]
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              The entry <a id="id2543491" class="indexterm"></a><a href="#node/syntax">node</a> may be either <a id="id2543506" class="indexterm"></a><a href="#completely empty node/">completely empty</a>, a
+              normal <a id="id2543520" class="indexterm"></a><a href="#block style/syntax">block
+              node</a>, or use a compact in-line form.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[198]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-l+block-indented(n,c)"></a>s-l+block-indented(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    <a href="#s-l-empty-block">s-l-empty-block</a><br />
+                  | <a href="#s-l+block-node(n,c)">s-l+block-node(n,c)</a><br />
+                  | <a href="#s-l+block-in-line(n)">s-l+block-in-line(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              The compact <a id="id2543574" class="indexterm"></a><a id="in-line style/syntax"></a
+            ><a href="#index-entry-in-line style"
+            ><i class="firstterm"
+            >in-line</i></a
+          > form may be used in the
+              common case when the block sequence entry is itself a <a id="id2543593" class="indexterm"></a><a href="#block collection style/syntax">block
+              collection</a>, and neither the <a id="id2543609" class="indexterm"></a><a href="#collection/syntax">collection</a>
+              entry nor its first nested <a id="id2543626" class="indexterm"></a><a href="#node/syntax">node</a> have any <a id="id2543640" class="indexterm"></a><a href="#node property/">properties</a> specified. In this case, the
+              nested <a id="id2543655" class="indexterm"></a><a href="#collection/syntax">collection</a> may be specified in the
+              same line as the &#8220;<span class="quote"><b class="userinput"><tt>-</tt></b></span>&#8221; character, and any following
+              spaces are considered part of the in-line nested <a id="id2543679" class="indexterm"></a><a href="#collection/syntax">collection's</a>
+              <a id="id2543694" class="indexterm"></a><a href="#indentation space/">indentation</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[199]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-l+block-in-line(n)"></a>s-l+block-in-line(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-indent(n)">s-indent(m&gt;0)</a><br />
+                  ( <a href="#ns-l-in-line-sequence(n)">ns-l-in-line-sequence(n+1+m)</a><br />
+                  | <a href="#ns-l-in-line-mapping(n)">ns-l-in-line-mapping(n+1+m)</a> )
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              An <a id="id2543749" class="indexterm"></a><a id="in-line sequence style/"></a
+            ><a href="#index-entry-in-line sequence style"
+            ><i class="firstterm"
+            >in-line block
+              sequence</i></a
+          > begins with an <a id="id2543766" class="indexterm"></a><a href="#indentation space/">indented</a> same-line sequence entry, followed by
+              optional additional normal block sequence entries, properly
+              <a id="id2543782" class="indexterm"></a><a href="#indentation space/">indented</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[200]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-l-in-line-sequence(n)"></a>ns-l-in-line-sequence(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-sequence-entry">&#8220;<span class="quote">-</span>&#8221;</a>
+                  <a href="#s-l+block-indented(n,c)">s-l+block-indented(n,block-out)</a><br />
+                  <a href="#l-block-seq-entry(n,c)">l-block-seq-entry(n,block-out)</a>*
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2543832"></a>
+                <p class="title">
+                  <b>Example 4.88. Block Sequence Entry Types</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">-<tt class="filename"> # Empty</tt><br />-<tt class="literal"> |
+ block node</tt>
+-<span class="honorific"><span class="property"> -<tt class="literal"> one # in-line</tt>
+  -<tt class="literal"> two # sequence</tt></span></span>
+-<span class="honorific"><span class="property"><tt class="literal"> one: two # in-line
+           # mapping</tt></span></span>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#s-l-empty-block">s-l-empty-block</a></tt>
+  <tt class="literal"><a href="#s-l+block-node(n,c)">s-l+block-node(n,c)</a></tt>
+  <span class="property"><a href="#s-l+block-in-line(n)">s-l+block-in-line(n)</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!str "",
+  !!str "block node\n",
+  !!seq [
+    !!str "one",
+    !!str "two",
+  ]
+  !!map {
+    ? !!str "one"
+    : !!str "two",
+  }
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+          </div>
+          <div class="sect2" lang="en" xml:lang="en">
+            <div class="titlepage">
+              <div>
+                <div>
+                  <h3 class="title"><a id="id2543957"></a>4.6.2. Mapping Styles</h3>
+                </div>
+              </div>
+              <div></div>
+            </div>
+            <p>
+          A <a id="id2543966" class="indexterm"></a><a id="mapping/syntax"></a
+            ><a href="#index-entry-mapping"
+            ><i class="firstterm"
+            >mapping
+          node</i></a
+          > is an unordered collection of <a id="id2543984" class="indexterm"></a><a id="key/syntax"></a
+            ><a href="#index-entry-key"
+            ><i class="firstterm"
+            >key:</i></a
+          > <a id="id2544000" class="indexterm"></a><a id="value/syntax"></a
+            ><a href="#index-entry-value"
+            ><i class="firstterm"
+            >value</i></a
+          > pairs. Of necessity, these pairs
+          are <a id="id2544017" class="indexterm"></a><a href="#present/">presented</a> in some <a id="id2544029" class="indexterm"></a><a href="#key order/">order</a> in the characters <a id="id2544042" class="indexterm"></a><a href="#stream/syntax">stream</a>. As a <a id="id2544058" class="indexterm"></a><a href="#serialization detail/">serialization detail</a>, this
+          <a id="id2544071" class="indexterm"></a><a href="#key order/">key order</a> is preserved in the
+          <a id="id2544084" class="indexterm"></a><a href="#serialization/">serialization tree</a>.
+          However it is not reflected in the <a id="id2544098" class="indexterm"></a><a href="#representation/">representation graph</a> and hence
+          must not be used when <a id="id2544113" class="indexterm"></a><a href="#construct/">constructing</a> native data structures. It
+          is an error for two <a id="id2544126" class="indexterm"></a><a href="#equality/">equal</a> keys
+          to appear in the same mapping value. In such a case the YAML <a id="id2544140" class="indexterm"></a><a href="#processor/">processor</a> may continue, ignoring the
+          second key: value pair and issuing an appropriate warning. This
+          strategy preserves a consistent information model for one-pass and
+          random access <a id="id2544161" class="indexterm"></a><a href="#application/">applications</a>.
+        </p>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2544175"></a>4.6.2.1. Flow Mappings</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              <a id="id2544183" class="indexterm"></a><a id="flow mapping style/syntax"></a
+            ><a href="#index-entry-flow mapping style"
+            ><i class="firstterm"
+            >Flow
+              mapping content</i></a
+          > is denoted by surrounding <a id="id2544201" class="indexterm"></a><a id="{ start flow mapping/"></a
+            ><a href="#index-entry-{ start flow mapping"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>{</tt></b></span>&#8221;</i></a
+          > and
+              <a id="id2544221" class="indexterm"></a><a id="} end flow mapping/"></a
+            ><a href="#index-entry-} end flow mapping"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>}</tt></b></span>&#8221;</i></a
+          > characters.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[201]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-flow-mapping(n,c)"></a>c-flow-mapping(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-mapping-start">&#8220;<span class="quote">{</span>&#8221;</a>
+                  <a href="#s-separate(n,c)">s-separate(n,c)</a>?<br />
+                  <a href="#ns-s-flow-map-inner(n,c)">ns-s-flow-map-inner(n,c)</a>*<br />
+                  <a href="#ns-s-flow-map-last(n,c)">ns-s-flow-map-last(n,c)</a>?<br />
+                  <a href="#c-mapping-end">&#8220;<span class="quote">}</span>&#8221;</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              Mapping entries are separated by a <a id="id2544293" class="indexterm"></a><a href="#, end flow entry/">&#8220;<span class="quote"><b class="userinput"><tt>,</tt></b></span>&#8221;</a> character.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[202]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-s-flow-map-inner(n,c)"></a>ns-s-flow-map-inner(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-s-flow-map-entry(n,c)">ns-s-flow-map-entry(n,c)</a>
+                  <a href="#c-collect-entry">&#8220;<span class="quote">,</span>&#8221;</a>
+                  <a href="#s-separate(n,c)">s-separate(n,c)</a>?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              The final entry may omit the <a id="id2544347" class="indexterm"></a><a href="#, end flow entry/">&#8220;<span class="quote"><b class="userinput"><tt>,</tt></b></span>&#8221;</a> character. This does not
+              cause ambiguity since mapping entries must not be <a id="id2544367" class="indexterm"></a><a href="#completely empty node/">completely empty</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[203]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-s-flow-map-last(n,c)"></a>ns-s-flow-map-last(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-s-flow-map-entry(n,c)">ns-s-flow-map-entry(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2544402"></a>
+                <p class="title">
+                  <b>Example 4.89. Flow Mappings</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">- <tt class="filename">{</tt> <tt class="literal">inner : entry , </tt><tt class="literal">also: inner , </tt><tt class="filename">}</tt><br />- <tt class="filename">{</tt><tt class="literal">inner: entry,</tt><span class="property">last : entry</span><tt class="filename">}</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-mapping-start">c-mapping-start</a></tt> <tt class="filename"><a href="#c-mapping-end">c-mapping-end</a></tt>
+  <tt class="literal"><a href="#ns-s-flow-map-inner(n,c)">ns-s-flow-map-inner(n,c)</a></tt>
+  <span class="property"><a href="#ns-s-flow-map-last(n,c)">ns-s-flow-map-last(n,c)</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!map {
+    ? !!str "inner"
+    : !!str "entry",
+    ? !!str "also"
+    : !!str "inner"
+  },
+  !!map {
+    ? !!str "inner"
+    : !!str "entry",
+    ? !!str "last"
+    : !!str "entry"
+  }
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Flow mappings allow two forms of keys: explicit and simple.
+            </p>
+              <div class="variablelist">
+                <dl>
+                  <dt>
+                    <span class="term">Explicit Keys</span>
+                  </dt>
+                  <dd>
+                    <p>
+                    An <a id="id2544556" class="indexterm"></a><a id="explicit key/"></a
+            ><a href="#index-entry-explicit key"
+            ><i class="firstterm"
+            >explicit key</i></a
+          >
+                    is denoted by the <a id="id2544571" class="indexterm"></a><a id="? mapping key/"></a
+            ><a href="#index-entry-? mapping key"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>?</tt></b></span>&#8221; indicator</i></a
+          >, followed by
+                    <a id="id2544592" class="indexterm"></a><a href="#separation space/">separation</a>
+                    spaces.
+                  </p>
+                  </dd>
+                </dl>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[204]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-flow-separated(n,c)"></a>s-flow-separated(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    ( <a href="#s-separate(n,c)">s-separate(n,c)</a>
+                  <a href="#ns-flow-node(n,c)">ns-flow-node(n,<a href="#in-flow(c)">in-flow(c)</a>)</a><br />
+                      <a href="#s-separate(n,c)">s-separate(n,c)</a>? )<br />
+                  | ( <a href="#e-empty-flow">e-empty-flow</a>
+                  <a href="#s-separate(n,c)">s-separate(n,c)</a> )
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[205]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-s-flow-explicit-key(n,c)"></a>c-s-flow-explicit-key(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-mapping-key">&#8220;<span class="quote">?</span>&#8221;</a>
+                  <a href="#s-flow-separated(n,c)">s-flow-separated(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="variablelist">
+                <dl>
+                  <dt>
+                    <span class="term">Simple Keys</span>
+                  </dt>
+                  <dd>
+                    <p>
+                    A <a id="id2544696" class="indexterm"></a><a id="simple key/"></a
+            ><a href="#index-entry-simple key"
+            ><i class="firstterm"
+            >simple key</i></a
+          > has no
+                    identifying mark. It is recognized as being a key either
+                    due to being inside a flow mapping, or by being followed by
+                    an explicit value. Hence, to avoid unbound lookahead in
+                    YAML <a id="id2544715" class="indexterm"></a><a href="#processor/">processors</a>,
+                    simple keys are restricted to a single line and must not
+                    span more than 1024 <a id="id2544729" class="indexterm"></a><a href="#stream/syntax">stream</a> characters (hence the
+                    need for the <a id="id2544746" class="indexterm"></a><a id="flow-key context/"></a
+            ><a href="#index-entry-flow-key context"
+            ><i class="firstterm"
+            >flow-key
+                    context</i></a
+          >). Note the 1024 character limit is in
+                    terms of Unicode characters rather than stream octets, and
+                    that it includes the <a id="id2544764" class="indexterm"></a><a href="#separation space/">separation</a> following the key itself.
+                  </p>
+                  </dd>
+                </dl>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[206]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-s-flow-simple-key(n,c)"></a>ns-s-flow-simple-key(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-flow-node(n,c)">ns-flow-node(n,flow-key)</a>
+                  <a href="#s-flow-separated(n,c)">s-flow-separated(n,c)</a>?
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2544809"></a>
+                <p class="title">
+                  <b>Example 4.90. Flow Mapping Keys</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">{<br /><tt class="filename">? </tt>: value # Empty key
+<tt class="filename">? explicit
+ key</tt>: value,
+<tt class="literal">simple key </tt>: value
+<tt class="literal">[ collection, simple, key ]</tt>: value
+}
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-s-flow-explicit-key(n,c)">c-s-flow-explicit-key(n,c)</a></tt>
+  <tt class="literal"><a href="#ns-s-flow-simple-key(n,c)">ns-s-flow-simple-key(n,c)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str ""
+  : !!str "value",
+  ? !!str "explicit key"
+  : !!str "value",
+  ? !!str "simple key"
+  : !!str "value",
+  ? !!seq [
+    !!str "collection",
+    !!str "simple",
+    !!str "key"
+  ]
+  : !!str "value"
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <div class="example">
+                <a id="id2544911"></a>
+                <p class="title">
+                  <b>Example 4.91. Invalid Flow Mapping Keys</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="screen"><span class="database">{<br /><tt class="filename">multi-line
+ simple key</tt> : value,
+<tt class="literal">very long ...(&gt;1KB)... key</tt>: value
+}
+</span></pre>
+              </td>
+                    <td>
+<pre class="screen"><span class="database">ERROR:<br />- A simple key is restricted
+  to only <tt class="filename">one line</tt>.
+- A simple key msut not be
+  longer than <tt class="literal">1024</tt> bytes.
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Flow mappings also allow two forms of values, explicit and
+              <a id="id2544984" class="indexterm"></a><a href="#completely empty node/">completely
+              empty</a>.
+            </p>
+              <div class="variablelist">
+                <dl>
+                  <dt>
+                    <span class="term">Explicit Values</span>
+                  </dt>
+                  <dd>
+                    <p>
+                    An <a id="id2545011" class="indexterm"></a><a id="explicit value/"></a
+            ><a href="#index-entry-explicit value"
+            ><i class="firstterm"
+            >explicit
+                    value</i></a
+          > is denoted by the <a id="id2545027" class="indexterm"></a><a id=": mapping value/"></a
+            ><a href="#index-entry-: mapping value"
+            ><i class="firstterm"
+            >&#8220;<span class="quote"><b class="userinput"><tt>:</tt></b></span>&#8221; indicator</i></a
+          >,
+                    followed by <a id="id2545048" class="indexterm"></a><a href="#separation space/">separation</a> spaces.
+                  </p>
+                  </dd>
+                </dl>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[207]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-s-flow-explicit-value(n,c)"></a>c-s-flow-explicit-value(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-mapping-value">&#8220;<span class="quote">:</span>&#8221;</a>
+                  <a href="#s-flow-separated(n,c)">s-flow-separated(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2545093"></a>
+                <p class="title">
+                  <b>Example 4.92. Flow Mapping Values</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">{<br />key <tt class="filename">: value</tt>,
+empty<tt class="filename">:° # empty value&#8595;</tt>
+}
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-s-flow-explicit-value(n,c)">c-s-flow-explicit-value(n,c)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "key"
+  : !!str "value",
+  ? !!str "empty"
+  : !!str "",
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              Thus, there are four possible combinations for a flow mapping
+              entry:
+            </p>
+              <div class="itemizedlist">
+                <ul type="disc">
+                  <li>
+                    <p>
+                  Explicit key and explicit value:
+                </p>
+                  </li>
+                </ul>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[208]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-s-flow-explicit-explicit(n,c)"></a>c-s-flow-explicit-explicit(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-s-flow-explicit-key(n,c)">c-s-flow-explicit-key(n,c)</a><br />
+                  <a href="#c-s-flow-explicit-value(n,c)">c-s-flow-explicit-value(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="itemizedlist">
+                <ul type="disc">
+                  <li>
+                    <p>
+                    Explicit key and <a id="id2545219" class="indexterm"></a><a href="#completely empty node/">completely empty</a> value:
+                </p>
+                  </li>
+                </ul>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[209]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-s-flow-explicit-empty(n,c)"></a>c-s-flow-explicit-empty(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-s-flow-explicit-key(n,c)">c-s-flow-explicit-key(n,c)</a>
+                  <a href="#e-empty-flow">e-empty-flow</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="itemizedlist">
+                <ul type="disc">
+                  <li>
+                    <p>
+                    Simple key and explicit value:
+                </p>
+                  </li>
+                </ul>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[210]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-s-flow-simple-explicit(n,c)"></a>ns-s-flow-simple-explicit(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-s-flow-simple-key(n,c)">ns-s-flow-simple-key(n,c)</a><br />
+                  <a href="#c-s-flow-explicit-value(n,c)">c-s-flow-explicit-value(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="itemizedlist">
+                <ul type="disc">
+                  <li>
+                    <p>
+                  Simple key and <a id="id2545306" class="indexterm"></a><a href="#completely empty node/">completely empty</a> value:
+                </p>
+                  </li>
+                </ul>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[211]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-s-flow-simple-empty(n,c)"></a>ns-s-flow-simple-empty(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-s-flow-simple-key(n,c)">ns-s-flow-simple-key(n,c)</a>
+                  <a href="#e-empty-flow">e-empty-flow</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <p>
+              Inside flow mappings, all four combinations may be used.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[212]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-s-flow-map-entry(n,c)"></a>ns-s-flow-map-entry(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    <a href="#c-s-flow-explicit-explicit(n,c)">c-s-flow-explicit-explicit(n,c)</a><br />
+                  | <a href="#c-s-flow-explicit-empty(n,c)">c-s-flow-explicit-empty(n,c)</a><br />
+                  | <a href="#ns-s-flow-simple-explicit(n,c)">ns-s-flow-simple-explicit(n,c)</a><br />
+                  | <a href="#ns-s-flow-simple-empty(n,c)">ns-s-flow-simple-empty(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2545394"></a>
+                <p class="title">
+                  <b>Example 4.93. Flow Mapping Key: Value Pairs</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">{<br /><tt class="filename">? explicit key1 : Explicit value</tt>,
+<tt class="filename">? explicit key2 :° </tt>, # Explicit empty
+<tt class="literal">? explicit key3,</tt>     # Empty value
+<span class="property">simple key1 : explicit value</span>,
+<span class="property">simple key2 :° </span>,     # Explicit empty
+<tt class="constant">simple key3</tt>,         # Empty value
+}
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-s-flow-explicit-explicit(n,c)">c-s-flow-explicit-explicit(n,c)</a></tt>
+  <tt class="literal"><a href="#c-s-flow-explicit-empty(n,c)">c-s-flow-explicit-empty(n,c)</a></tt>
+  <span class="property"><a href="#ns-s-flow-simple-explicit(n,c)">ns-s-flow-simple-explicit(n,c)</a></span>
+  <tt class="constant"><a href="#ns-s-flow-simple-empty(n,c)">ns-s-flow-simple-empty(n,c)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "explicit key1"
+  : !!str "explicit value",
+  ? !!str "explicit key2"
+  : !!str "",
+  ? !!str "explicit key3"
+  : !!str "",
+  ? !!str "simple key1"
+  : !!str "explicit value",
+  ? !!str "simple key2"
+  : !!str "",
+  ? !!str "simple key3"
+  : !!str "",
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              YAML also allows omitting the surrounding &#8220;<span class="quote"><b class="userinput"><tt>{</tt></b></span>&#8221; and
+              &#8220;<span class="quote"><b class="userinput"><tt>}</tt></b></span>&#8221; characters when nesting a flow mapping in a
+              <a id="id2545550" class="indexterm"></a><a href="#flow sequence style/syntax">flow
+              sequence</a> if the mapping consists of a <a id="id2545566" class="indexterm"></a><a id="single pair style/syntax"></a
+            ><a href="#index-entry-single pair style"
+            ><i class="firstterm"
+            >single
+              key: value pair</i></a
+          > and neither the mapping nor the
+              key have any <a id="id2545586" class="indexterm"></a><a href="#node property/">properties</a> specified. In this case, only
+              three of the combinations may be used, to prevent ambiguity.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[213]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-s-flow-single-pair(n,c)"></a>ns-s-flow-single-pair(n,c)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    <a href="#c-s-flow-explicit-explicit(n,c)">c-s-flow-explicit-explicit(n,c)</a><br />
+                  | <a href="#c-s-flow-explicit-empty(n,c)">c-s-flow-explicit-empty(n,c)</a><br />
+                  | <a href="#ns-s-flow-simple-explicit(n,c)">ns-s-flow-simple-explicit(n,c)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2545637"></a>
+                <p class="title">
+                  <b>Example 4.94. Single Pair Mappings</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">[<br /><tt class="filename">? explicit key1 : explicit value</tt>,
+<tt class="filename">? explicit key2 :° </tt>, # Explicit value
+<tt class="literal">? explicit key3,</tt>     # Empty value
+<span class="property">simple key1 : explicit value</span>,
+<span class="property">simple key2 :° </span>,     # Explicit empty
+]
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-s-flow-explicit-explicit(n,c)">c-s-flow-explicit-explicit(n,c)</a></tt>
+  <tt class="literal"><a href="#c-s-flow-explicit-empty(n,c)">c-s-flow-explicit-empty(n,c)</a></tt>
+  <span class="property"><a href="#ns-s-flow-simple-explicit(n,c)">ns-s-flow-simple-explicit(n,c)</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq [
+  !!map {
+    ? !!str "explicit key1"
+    : !!str "explicit value",
+  },
+  !!map {
+    ? !!str "explicit key2"
+    : !!str "",
+  },
+  !!map {
+    ? !!str "explicit key3"
+    : !!str "",
+  },
+  !!map {
+    ? !!str "simple key1"
+    : !!str "explicit value",
+  },
+]
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+            <div class="sect3" lang="en" xml:lang="en">
+              <div class="titlepage">
+                <div>
+                  <div>
+                    <h4 class="title"><a id="id2545757"></a>4.6.2.2. Block Mappings</h4>
+                  </div>
+                </div>
+                <div></div>
+              </div>
+              <p>
+              A <a id="id2545765" class="indexterm"></a><a id="block mapping style/syntax"></a
+            ><a href="#index-entry-block mapping style"
+            ><i class="firstterm"
+            >Block
+              mapping</i></a
+          > is simply a series of entries, each <a id="id2545784" class="indexterm"></a><a href="#present/">presenting</a> a key: value pair.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[214]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="c-l-block-mapping(n)"></a>c-l-block-mapping(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-l-comments">c-l-comments</a><br />
+                  ( <a href="#s-indent(n)">s-indent(n)</a>
+                  <a href="#ns-l-block-map-entry(n)">ns-l-block-map-entry(n)</a> )+
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2545830"></a>
+                <p class="title">
+                  <b>Example 4.95. Block Mappings</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">block: <tt class="filename"># Block<br />    # mapping&#8595;</tt>
+<tt class="literal">·</tt><span class="property">key: value&#8595;</span>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#c-l-comments">c-l-comments</a></tt>
+  <tt class="literal"><a href="#s-indent(n)">s-indent(n)</a></tt>
+  <span class="property"><a href="#ns-l-block-map-entry(n)">ns-l-block-map-entry(n)</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "block"
+  : !!map {
+    !!str "key",
+    !!str "value"
+  }
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              A block mapping entry may be <a id="id2545934" class="indexterm"></a><a href="#present/">presented</a> using either an explicit or
+              a simple key.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[215]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-l-block-map-entry(n)"></a>ns-l-block-map-entry(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    <a href="#ns-l-block-explicit-entry(n)">ns-l-block-explicit-entry(n)</a><br />
+                  | <a href="#ns-l-block-simple-entry(n)">ns-l-block-simple-entry(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="variablelist">
+                <dl>
+                  <dt>
+                    <span class="term">Explicit Key Entries</span>
+                  </dt>
+                  <dd>
+                    <p>
+                    <a id="id2545988" class="indexterm"></a><a href="#explicit key/">Explicit key
+                    nodes</a> are denoted by the <a id="id2546004" class="indexterm"></a><a href="#? mapping key/">&#8220;<span class="quote"><b class="userinput"><tt>?</tt></b></span>&#8221;</a> character. YAML
+                    allows here the same <a id="id2546022" class="indexterm"></a><a href="#in-line style/syntax">inline</a> compact notation
+                    described above for <a id="id2546039" class="indexterm"></a><a href="#block sequence style/syntax">block sequence</a> entries, in
+                    which case the <a id="id2546055" class="indexterm"></a><a href="#? mapping key/">&#8220;<span class="quote"><b class="userinput"><tt>?</tt></b></span>&#8221;</a> character is considered
+                    part of the key's <a id="id2546074" class="indexterm"></a><a href="#indentation space/">indentation</a>.
+                  </p>
+                  </dd>
+                </dl>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[216]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-l-block-explicit-key(n)"></a>ns-l-block-explicit-key(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#c-mapping-key">&#8220;<span class="quote">?</span>&#8221;</a>
+                  <a href="#s-l+block-indented(n,c)">s-l+block-indented(n,block-out)</a><br />
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="itemizedlist">
+                <ul type="none">
+                  <li style="list-style-type: none">
+                    <p>
+                  In an explicit key entry, value nodes begin on a separate
+                  line and are denoted by by the <a id="id2546132" class="indexterm"></a><a href="#: mapping value/">&#8220;<span class="quote"><b class="userinput"><tt>:</tt></b></span>&#8221;</a> character. Here again
+                  YAML allows the use of the <a id="id2546152" class="indexterm"></a><a href="#in-line style/syntax">inline</a> compact notation which
+                  case the <a id="id2546168" class="indexterm"></a><a href="#: mapping value/">&#8220;<span class="quote"><b class="userinput"><tt>:</tt></b></span>&#8221;</a> character is considered
+                  part of the values's <a id="id2546187" class="indexterm"></a><a href="#indentation space/">indentation</a>.
+                </p>
+                  </li>
+                </ul>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[217]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="l-block-explicit-value(n)"></a>l-block-explicit-value(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#s-indent(n)">s-indent(n)</a>
+                  <a href="#c-mapping-value">&#8220;<span class="quote">:</span>&#8221;</a><br />
+                  <a href="#s-l+block-indented(n,c)">s-l+block-indented(n,block-out)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="itemizedlist">
+                <ul type="none">
+                  <li style="list-style-type: none">
+                    <p>
+                  An explicit key entry may also use a <a id="id2546247" class="indexterm"></a><a href="#completely empty node/">completely empty</a>
+                  value.
+                </p>
+                  </li>
+                </ul>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[218]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-l-block-explicit-entry(n)"></a>ns-l-block-explicit-entry(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-l-block-explicit-key(n)">ns-l-block-explicit-key(n)</a><br />
+                  ( <a href="#l-block-explicit-value(n)">l-block-explicit-value(n)</a><br />
+                  | <a href="#e-empty-flow">e-empty-flow</a> )
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2546298"></a>
+                <p class="title">
+                  <b>Example 4.96. Explicit Block Mapping Entries</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"><tt class="filename">? explicit key # implicit value&#8595;</tt><span class="property">°</span><br /><tt class="filename">? |
+  block key&#8595;</tt>
+<tt class="literal">: - one # explicit in-line
+  - two # block value&#8595;</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-l-block-explicit-key(n)">ns-l-block-explicit-key(n)</a></tt>
+  <tt class="literal"><a href="#l-block-explicit-value(n)">l-block-explicit-value(n)</a></tt>
+  <span class="property"><a href="#e-empty-flow">e-empty-flow</a></span>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "explicit key"
+  : !!str "",
+  ? !!str "block key\n"
+  : !!seq [
+    !!str "one",
+    !!str "two",
+  ]
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <div class="variablelist">
+                <dl>
+                  <dt>
+                    <span class="term">Simple Key Entries</span>
+                  </dt>
+                  <dd>
+                    <p>
+                    YAML allows the <a id="id2546420" class="indexterm"></a><a href="#? mapping key/">&#8220;<span class="quote"><b class="userinput"><tt>?</tt></b></span>&#8221;</a> character to be omitted
+                    for <a id="id2546439" class="indexterm"></a><a href="#simple key/">simple keys</a>.
+                    Similarly to flow mapping, such a key is recognized by a
+                    following <a id="id2546452" class="indexterm"></a><a href="#: mapping value/">&#8220;<span class="quote"><b class="userinput"><tt>:</tt></b></span>&#8221;</a> character. Again, to
+                    avoid unbound lookahead in YAML <a id="id2546472" class="indexterm"></a><a href="#processor/">processors</a>, simple keys are
+                    restricted to a single line and must not span more than
+                    1024 <a id="id2546486" class="indexterm"></a><a href="#stream/syntax">stream</a> characters. Again, this
+                    limit is in terms of Unicode characters rather than stream
+                    octets, and includes the <a id="id2546504" class="indexterm"></a><a href="#separation space/">separation</a> following the key, if any.
+                  </p>
+                  </dd>
+                </dl>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[219]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-block-simple-key(n)"></a>ns-block-simple-key(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-flow-node(n,c)">ns-flow-node(n,flow-key)</a><br />
+                  <a href="#s-separate(n,c)">s-separate(n,block-out)</a>?
+                  <a href="#c-mapping-value">&#8220;<span class="quote">:</span>&#8221;</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="itemizedlist">
+                <ul type="none">
+                  <li style="list-style-type: none">
+                    <p>
+                  In a simple key entry, an <a id="id2546568" class="indexterm"></a><a href="#explicit value/">explicit value</a> node may be <a id="id2546583" class="indexterm"></a><a href="#present/">presented</a> in the same line. Note
+                  however that in this case, the key is not considered to be a
+                  form of <a id="id2546598" class="indexterm"></a><a href="#indentation space/">indentation</a>, hence the compact <a id="id2546612" class="indexterm"></a><a href="#in-line style/syntax">in-line</a>
+                  notation must not be used. The value following the simple key
+                  may also be <a id="id2546629" class="indexterm"></a><a href="#completely empty node/">completely empty</a>.
+                </p>
+                  </li>
+                </ul>
+              </div>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[220]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="s-l+block-simple-value(n)"></a>s-l+block-simple-value(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                    <a href="#s-l+block-node(n,c)">s-l+block-node(n,block-out)</a><br />
+                  | <a href="#s-l-empty-block">s-l-empty-block</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[221]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-l-block-simple-entry(n)"></a>ns-l-block-simple-entry(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-block-simple-key(n)">ns-block-simple-key(n)</a><br />
+                  <a href="#s-l+block-simple-value(n)">s-l+block-simple-value(n)</a>
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2546698"></a>
+                <p class="title">
+                  <b>Example 4.97. Simple Block Mapping Entries</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database"><tt class="filename">plain key:</tt><tt class="literal">° # empty value&#8595;</tt><br /><tt class="filename">"quoted key":</tt><tt class="literal">&#8595;
+- one # explicit next-line
+- two # block value&#8595;</tt>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-block-simple-key(n)">ns-block-simple-key(n)</a></tt>
+  <tt class="literal"><a href="#s-l+block-simple-value(n)">s-l+block-simple-value(n)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!map {
+  ? !!str "plain key"
+  : !!str "",
+  ? !!str "quoted key\n"
+  : !!seq [
+    !!str "one",
+    !!str "two",
+  ]
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+              <p>
+              An <a id="id2546798" class="indexterm"></a><a id="in-line mapping style/"></a
+            ><a href="#index-entry-in-line mapping style"
+            ><i class="firstterm"
+            >in-line block
+              mapping</i></a
+          > begins with a same-line mapping entry, followed
+              by optional additional normal block mapping entries, properly
+              <a id="id2546816" class="indexterm"></a><a href="#indentation space/">indented</a>.
+            </p>
+              <table width="100%" cellpadding="5" class="productionset" summary="EBNF">
+                <tr>
+                  <td>
+                    <table border="0" width="99%" cellpadding="0" class="productionset" summary="EBNF productions">
+                      <tr>
+                        <td align="left" valign="top" class="productioncounter">[222]</td>
+                        <td align="right" valign="top" class="productionlhs"><a id="ns-l-in-line-mapping(n)"></a>ns-l-in-line-mapping(n)</td>
+                        <td valign="top" class="productionseperator" align="center">
+                          <tt>::=</tt>
+                        </td>
+                        <td valign="top" class="productionrhs">
+                  <a href="#ns-l-block-map-entry(n)">ns-l-block-map-entry(n)</a><br />
+                  ( <a href="#s-indent(n)">s-indent(n)</a>
+                  <a href="#ns-l-block-map-entry(n)">ns-l-block-map-entry(n)</a> )*
+                </td>
+                        <td align="left" valign="top" class="productioncomment"> </td>
+                      </tr>
+                    </table>
+                  </td>
+                </tr>
+              </table>
+              <div class="example">
+                <a id="id2546861"></a>
+                <p class="title">
+                  <b>Example 4.98. In-Line Block Mappings</b>
+                </p>
+                <table class="simplelist" border="0" summary="Simple list">
+                  <tr>
+                    <td>
+<pre class="programlisting"><span class="database">- <tt class="filename">sun: yellow&#8595;</tt><br />- <span class="honorific"><tt class="filename">? <tt class="filename">earth: blue&#8595;</tt>
+  : <tt class="filename">moon: white&#8595;</tt></tt></span>
+</span></pre>
+<pre class="synopsis">Legend:
+  <tt class="filename"><a href="#ns-l-in-line-mapping(n)">ns-l-in-line-mapping(n)</a></tt>
+</pre>
+              </td>
+                    <td>
+<pre class="programlisting"><span class="database">%YAML 1.1<br />---
+!!seq {
+  !!map {
+    ? !!str "sun"
+    : !!str "yellow",
+  },
+  !!map {
+    ? !!map {
+      ? !!str "earth"
+      : !!str "blue"
+    }
+    : !!map {
+      ? !!str "moon"
+      : !!str "white"
+    }
+  }
+}
+</span></pre>
+              </td>
+                  </tr>
+                </table>
+              </div>
+            </div>
+          </div>
+        </div>
+      </div>
+      <div class="index">
+        <div class="titlepage">
+          <div>
+            <div>
+              <h2 class="title"><a id="id2546954"></a>Terms Index</h2>
+            </div>
+          </div>
+          <div></div>
+        </div>
+        <div class="index">
+          <div class="indexdiv">
+            <h3>Indicators</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-! local  tag"></a>! local             tag, <a class="preferred" href="#id2506940">Tags</a>, <a href="#id2524672">Tag Prefixes</a>, <a href="#id2525159">Tag Handles</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-! named  handle"></a>! named                 handle, <a href="#id2516631">Miscellaneous Characters</a>, <a class="preferred" href="#id2525159">Tag Handles</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-! non-specific  tag"></a>! non-specific           tag, <a class="preferred" href="#id2510888">Resolved</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-! tag  indicator"></a>! tag           indicator, <a href="#id2503753">Tags</a>, <a href="#id2513753">Indicator Characters</a>, <a href="#id2525159">Tag Handles</a>, <a class="preferred" href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-&quot; double quoted  style"></a>" double quoted                 style, <a href="#id2513753">Indicator Characters</a>, <a href="#id2517668">Escape Sequences</a>, <a class="preferred" href="#id2532720">Double Quoted</a>, <a href="#id2534365">Single Quoted</a></dt>
+              <dt xmlns=""><a id="index-entry-# comment"></a># comment, <a href="#id2502724">Structures</a>, <a href="#id2506940">Tags</a>, <a href="#id2513753">Indicator Characters</a>, <a class="preferred" href="#id2520528">Comments</a>, <a href="#id2535812">Plain</a>, <a href="#id2538125">Block Indentation Indicator</a>, <a href="#id2540046">Literal</a></dt>
+              <dt xmlns=""><a id="index-entry-% directive"></a>% directive, <a href="#id2513753">Indicator Characters</a>, <a class="preferred" href="#id2523453">Directives</a></dt>
+              <dt xmlns=""><a id="index-entry-% escaping in URI"></a>% escaping in URI, <a class="preferred" href="#id2516631">Miscellaneous Characters</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-&amp;  anchor"></a>&amp;           anchor, <a href="#id2502724">Structures</a>, <a href="#id2513753">Indicator Characters</a>, <a class="preferred" href="#id2528258">Node Anchors</a></dt>
+              <dt xmlns=""><a id="index-entry-' single quoted  style"></a>' single quoted                 style, <a href="#id2513753">Indicator Characters</a>, <a class="preferred" href="#id2534365">Single Quoted</a></dt>
+              <dt xmlns=""><a id="index-entry-*  alias"></a>*           alias, <a href="#id2502724">Structures</a>, <a href="#id2513753">Indicator Characters</a>, <a class="preferred" href="#id2530982">Alias Nodes</a></dt>
+              <dt xmlns=""><a id="index-entry-+ keep  chomping"></a>+ keep                     chomping, <a class="preferred" href="#id2538656">Block Chomping Indicator</a></dt>
+              <dt xmlns=""><a id="index-entry-, end flow  entry"></a>, end flow                 entry, <a href="#id2513753">Indicator Characters</a>, <a href="#id2535812">Plain</a>, <a class="preferred" href="#id2541922">Collection Styles</a>, <a href="#id2542413">Flow Sequences</a>, <a href="#id2544175">Flow Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-- block sequence  entry"></a>- block sequence           entry, <a href="#id2502325">Collections</a>, <a href="#id2513753">Indicator Characters</a>, <a href="#id2519186">Production Parameters</a>, <a href="#id2519916">Indentation Spaces</a>, <a href="#id2535812">Plain</a>, <a class="preferred" href="#id2543032">Block Sequences</a></dt>
+              <dt xmlns=""><a id="index-entry-- strip  chomping"></a>- strip                     chomping, <a class="preferred" href="#id2538656">Block Chomping Indicator</a></dt>
+              <dt xmlns=""><a id="index-entry-: mapping  value"></a>: mapping           value, <a href="#id2502325">Collections</a>, <a href="#id2513753">Indicator Characters</a>, <a href="#id2519916">Indentation Spaces</a>, <a href="#id2535812">Plain</a>, <a class="preferred" href="#id2544175">Flow Mappings</a>, <a href="#id2545757">Block Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-&lt; &#8230; &gt; verbatim  tag"></a>&lt; &#8230; &gt; verbatim                   tag, <a class="preferred" href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-&gt; folded  style"></a>&gt; folded           style, <a href="#id2503232">Scalars</a>, <a href="#id2513753">Indicator Characters</a>, <a class="preferred" href="#id2537921">Block Style Indicator</a></dt>
+              <dt xmlns=""><a id="index-entry-? mapping  key"></a>? mapping           key, <a href="#id2502724">Structures</a>, <a href="#id2513753">Indicator Characters</a>, <a href="#id2519916">Indentation Spaces</a>, <a href="#id2535812">Plain</a>, <a class="preferred" href="#id2544175">Flow Mappings</a>, <a href="#id2545757">Block Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-? non-specific tag"></a>? non-specific tag, <a class="preferred" href="#id2510888">Resolved</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-@ reserved  indicator"></a>@ reserved                 indicator, <a class="preferred" href="#id2513753">Indicator Characters</a></dt>
+              <dt xmlns=""><a id="index-entry-[ start flow  sequence"></a>[ start flow                 sequence, <a href="#id2513753">Indicator Characters</a>, <a href="#id2516631">Miscellaneous Characters</a>, <a href="#id2535812">Plain</a>, <a class="preferred" href="#id2542413">Flow Sequences</a></dt>
+              <dt xmlns=""><a id="index-entry-\ escaping in double  quoted style"></a>\ escaping in double             quoted style, <a class="preferred" href="#id2517668">Escape Sequences</a>, <a href="#id2532720">Double Quoted</a>, <a href="#id2534365">Single Quoted</a></dt>
+              <dt xmlns=""><a id="index-entry-] end flow  sequence"></a>] end flow                 sequence, <a href="#id2513753">Indicator Characters</a>, <a href="#id2516631">Miscellaneous Characters</a>, <a href="#id2535812">Plain</a>, <a class="preferred" href="#id2542413">Flow Sequences</a></dt>
+              <dt xmlns=""><a id="index-entry-`  reserved indicator"></a>`                 reserved indicator, <a class="preferred" href="#id2513753">Indicator Characters</a></dt>
+              <dt xmlns=""><a id="index-entry-{ start flow  mapping"></a>{ start flow                 mapping, <a href="#id2513753">Indicator Characters</a>, <a href="#id2535812">Plain</a>, <a class="preferred" href="#id2544175">Flow Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-| literal  style"></a>| literal           style, <a href="#id2503232">Scalars</a>, <a href="#id2513753">Indicator Characters</a>, <a class="preferred" href="#id2537921">Block Style Indicator</a></dt>
+              <dt xmlns=""><a id="index-entry-} end flow  mapping"></a>} end flow                 mapping, <a href="#id2513753">Indicator Characters</a>, <a href="#id2535812">Plain</a>, <a class="preferred" href="#id2544175">Flow Mappings</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>A</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-alias"></a>alias</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2439001">Introduction</a>, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2502724">Structures</a>, <a xmlns="" href="#id2505138">Serialize</a>, <a xmlns="" href="#id2508190">Serialization Tree</a>, <a xmlns="" class="preferred" href="#id2508656">Anchors and Aliases</a>, <a xmlns="" href="#id2510274">Loading Failure Points</a>, <a xmlns="" href="#id2510726">Well-Formed and Identified</a>, <a xmlns="" href="#id2510888">Resolved</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2528258">Node Anchors</a>, <a xmlns="" class="preferred" href="#id2530982">Alias Nodes</a>, <a xmlns="" href="#id2531352">Flow Nodes</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-anchor"></a>anchor</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2502724">Structures</a>, <a xmlns="" href="#id2505138">Serialize</a>, <a xmlns="" href="#id2508190">Serialization Tree</a>, <a xmlns="" class="preferred" href="#id2508656">Anchors and Aliases</a>, <a xmlns="" href="#id2510726">Well-Formed and Identified</a>, <a xmlns="" href="#id2510888">Resolved</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2527964">Nodes</a>, <a xmlns="" class="preferred" href="#id2528258">Node Anchors</a>, <a xmlns="" href="#id2528616">Node Tags</a>, <a xmlns="" href="#id2530982">Alias Nodes</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-application"></a>application, <a href="#id2439001">Introduction</a>, <a href="#id2438272">Prior Art</a>, <a href="#id2503753">Tags</a>, <a class="preferred" href="#id2504309">Processing YAML Information</a>, <a href="#id2504671">Processes</a>, <a href="#id2504710">Represent</a>, <a href="#id2505138">Serialize</a>, <a href="#id2505379">Present</a>, <a href="#id2506012">Information Models</a>, <a href="#id2506940">Tags</a>, <a href="#id2510888">Resolved</a>, <a href="#id2512548">Available</a>, <a href="#id2524672">Tag Prefixes</a>, <a href="#id2525159">Tag Handles</a>, <a href="#id2528616">Node Tags</a>, <a href="#id2543957">Mapping Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-available tag"></a>available tag, <a class="preferred" href="#id2512548">Available</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>B</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-block collection style"></a>block collection style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2502325">Collections</a>, <a xmlns="" href="#id2502724">Structures</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2519916">Indentation Spaces</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" class="preferred" href="#id2541922">Collection Styles</a>, <a xmlns="" href="#id2543032">Block Sequences</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-block mapping style"></a>block mapping style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information             model, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2535812">Plain</a>, <a xmlns="" class="preferred" href="#id2545757">Block Mappings</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-block scalar header"></a>block scalar header, <a class="preferred" href="#id2537677">Block Scalar Header</a>, <a href="#id2537921">Block Style Indicator</a></dt>
+              <dt xmlns=""><a id="index-entry-block scalar style"></a>block scalar style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2516631">Miscellaneous Characters</a>, <a xmlns="" href="#id2521681">Ignored Line Prefix</a>, <a xmlns="" href="#id2532386">Scalar Styles</a>, <a xmlns="" href="#id2537677">Block Scalar Header</a>, <a xmlns="" href="#id2538125">Block Indentation Indicator</a>, <a xmlns="" href="#id2538656">Block Chomping Indicator</a>, <a xmlns="" class="preferred" href="#id2539942">Block Scalar Styles</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-block  sequence style"></a>block           sequence style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2502325">Collections</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2519916">Indentation Spaces</a>, <a xmlns="" href="#id2542214">Sequence Styles</a>, <a xmlns="" class="preferred" href="#id2543032">Block Sequences</a>, <a xmlns="" href="#id2545757">Block Mappings</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-block style"></a>block style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2503232">Scalars</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a>, <a xmlns="" href="#id2510888">Resolved</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2522356">Line Folding</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" class="preferred" href="#id2531873">Block Nodes</a>, <a xmlns="" href="#id2543032">Block Sequences</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-block-in  context"></a>block-in                 context, <a href="#id2519186">Production Parameters</a>, <a class="preferred" href="#id2543032">Block Sequences</a></dt>
+              <dt xmlns=""><a id="index-entry-block-out  context"></a>block-out                 context, <a href="#id2519186">Production Parameters</a>, <a class="preferred" href="#id2543032">Block Sequences</a></dt>
+              <dt xmlns=""><a id="index-entry-byte order mark"></a>byte order mark, <a class="preferred" href="#id2513364">Character Encoding</a>, <a href="#id2527114">Complete Stream</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>C</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-canonical form"></a>canonical form, <a href="#id2438272">Prior Art</a>, <a href="#id2506940">Tags</a>, <a class="preferred" href="#id2507367">Nodes Comparison</a>, <a href="#id2509799">Scalar Formats</a>, <a href="#id2510274">Loading Failure Points</a></dt>
+              <dt xmlns=""><a id="index-entry-character encoding"></a>character encoding, <a class="preferred" href="#id2513364">Character Encoding</a>, <a href="#id2516631">Miscellaneous Characters</a>, <a href="#id2527114">Complete Stream</a></dt>
+              <dt xmlns=""><a id="index-entry-chomping"></a>chomping, <a href="#id2515898">Line Break Characters</a>, <a href="#id2519186">Production Parameters</a>, <a href="#id2521681">Ignored Line Prefix</a>, <a href="#id2522356">Line Folding</a>, <a class="preferred" href="#id2538656">Block Chomping Indicator</a>, <a href="#id2540046">Literal</a>, <a href="#id2540863">Folded</a></dt>
+              <dt xmlns=""><a id="index-entry-clip chomping"></a>clip chomping, <a href="#id2519186">Production Parameters</a>, <a class="preferred" href="#id2538656">Block Chomping Indicator</a></dt>
+              <dt xmlns=""><a id="index-entry-collection"></a>collection</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2506281">Representation Graph</a>, <a xmlns="" class="preferred" href="#id2506659">Nodes</a>, <a xmlns="" href="#id2507367">Nodes Comparison</a>, <a xmlns="" href="#id2508656">Anchors and Aliases</a>, <a xmlns="" href="#id2509980">Comments</a>, <a xmlns="" href="#id2510888">Resolved</a>, <a xmlns="" href="#id2512215">Recognized and Valid</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2519916">Indentation Spaces</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" href="#id2535812">Plain</a>, <a xmlns="" class="preferred" href="#id2541922">Collection Styles</a>, <a xmlns="" href="#id2542214">Sequence Styles</a>, <a xmlns="" href="#id2543032">Block Sequences</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-comment"></a>comment</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information           model, <a xmlns="" href="#id2502724">Structures</a>, <a xmlns="" href="#id2505379">Present</a>, <a xmlns="" href="#id2505832">Construct</a>, <a xmlns="" href="#id2508949">Presentation Stream</a>, <a xmlns="" class="preferred" href="#id2509980">Comments</a>, <a xmlns="" href="#id2510888">Resolved</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" class="preferred" href="#id2520528">Comments</a>, <a xmlns="" href="#id2521201">Separation Spaces</a>, <a xmlns="" href="#id2521681">Ignored Line Prefix</a>, <a xmlns="" href="#id2523453">Directives</a>, <a xmlns="" href="#id2525905">Document Boundary Markers</a>, <a xmlns="" href="#id2526349">Documents</a>, <a xmlns="" href="#id2527114">Complete Stream</a>, <a xmlns="" href="#id2531873">Block Nodes</a>, <a xmlns="" href="#id2532386">Scalar Styles</a>, <a xmlns="" href="#id2535812">Plain</a>, <a xmlns="" href="#id2537677">Block Scalar Header</a>, <a xmlns="" href="#id2538656">Block Chomping Indicator</a>, <a xmlns="" href="#id2542214">Sequence Styles</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-complete representation"></a>complete representation, <a class="preferred" href="#id2510274">Loading Failure Points</a>, <a href="#id2510888">Resolved</a>, <a href="#id2512215">Recognized and Valid</a>, <a href="#id2512548">Available</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-completely empty node"></a>completely empty node, <a href="#id2526349">Documents</a>, <a class="preferred" href="#id2531352">Flow Nodes</a>, <a href="#id2531873">Block Nodes</a>, <a href="#id2541922">Collection Styles</a>, <a href="#id2542413">Flow Sequences</a>, <a href="#id2543032">Block Sequences</a>, <a href="#id2544175">Flow Mappings</a>, <a href="#id2545757">Block Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-compose"></a>compose, <a class="preferred" href="#id2505723">Compose</a>, <a href="#id2508372">Keys Order</a>, <a href="#id2508656">Anchors and Aliases</a>, <a href="#id2510888">Resolved</a>, <a href="#id2512215">Recognized and Valid</a>, <a href="#id2512548">Available</a>, <a href="#id2528258">Node Anchors</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-construct"></a>construct, <a href="#id2504309">Processing YAML Information</a>, <a class="preferred" href="#id2505832">Construct</a>, <a href="#id2508190">Serialization Tree</a>, <a href="#id2510274">Loading Failure Points</a>, <a href="#id2512215">Recognized and Valid</a>, <a href="#id2512548">Available</a>, <a href="#id2543957">Mapping Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-content"></a>content</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2504710">Represent</a>, <a xmlns="" class="preferred" href="#id2506659">Nodes</a>, <a xmlns="" href="#id2506940">Tags</a>, <a xmlns="" href="#id2507367">Nodes Comparison</a>, <a xmlns="" href="#id2509255">Node Styles</a>, <a xmlns="" href="#id2510274">Loading Failure Points</a>, <a xmlns="" href="#id2510888">Resolved</a>, <a xmlns="" href="#id2512215">Recognized and Valid</a>, <a xmlns="" href="#id2515898">Line Break Characters</a>, <a xmlns="" href="#id2517668">Escape Sequences</a>, <a xmlns="" href="#id2519916">Indentation Spaces</a>, <a xmlns="" href="#id2520528">Comments</a>, <a xmlns="" href="#id2521201">Separation Spaces</a>, <a xmlns="" href="#id2521681">Ignored Line Prefix</a>, <a xmlns="" href="#id2522356">Line Folding</a>, <a xmlns="" href="#id2525159">Tag Handles</a>, <a xmlns="" href="#id2526349">Documents</a>, <a xmlns="" href="#id2528258">Node Anchors</a>, <a xmlns="" href="#id2532386">Scalar Styles</a>, <a xmlns="" href="#id2541922">Collection Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2519916">Indentation Spaces</a>, <a xmlns="" href="#id2527964">Nodes</a>, <a xmlns="" class="preferred" href="#id2530054">Node Content</a>, <a xmlns="" href="#id2530982">Alias Nodes</a>, <a xmlns="" href="#id2531352">Flow Nodes</a>, <a xmlns="" href="#id2531873">Block Nodes</a>, <a xmlns="" href="#id2532720">Double Quoted</a>, <a xmlns="" href="#id2534365">Single Quoted</a>, <a xmlns="" href="#id2535812">Plain</a>, <a xmlns="" href="#id2537677">Block Scalar Header</a>, <a xmlns="" href="#id2538125">Block Indentation Indicator</a>, <a xmlns="" href="#id2538656">Block Chomping Indicator</a>, <a xmlns="" href="#id2539942">Block Scalar Styles</a>, <a xmlns="" href="#id2540863">Folded</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-context"></a>context, <a class="preferred" href="#id2519186">Production Parameters</a>, <a href="#id2535812">Plain</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>D</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-directive"></a>directive</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2505379">Present</a>, <a xmlns="" href="#id2505832">Construct</a>, <a xmlns="" href="#id2508949">Presentation Stream</a>, <a xmlns="" class="preferred" href="#id2510119">Directives</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2523342">YAML Character Stream</a>, <a xmlns="" class="preferred" href="#id2523453">Directives</a>, <a xmlns="" href="#id2526349">Documents</a>, <a xmlns="" href="#id2527114">Complete Stream</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-document"></a>document</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2502724">Structures</a>, <a xmlns="" class="preferred" href="#id2508949">Presentation Stream</a>, <a xmlns="" href="#id2509255">Node Styles</a>, <a xmlns="" href="#id2510119">Directives</a>, <a xmlns="" href="#id2510274">Loading Failure Points</a>, <a xmlns="" href="#id2510888">Resolved</a>, <a xmlns="" href="#id2512215">Recognized and Valid</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2523342">YAML Character Stream</a>, <a xmlns="" href="#id2523874">YAML Directive</a>, <a xmlns="" href="#id2524672">Tag Prefixes</a>, <a xmlns="" href="#id2525159">Tag Handles</a>, <a xmlns="" href="#id2525905">Document Boundary Markers</a>, <a xmlns="" class="preferred" href="#id2526349">Documents</a>, <a xmlns="" href="#id2527114">Complete Stream</a>, <a xmlns="" href="#id2530982">Alias Nodes</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-document boundary  marker"></a>document boundary           marker, <a href="#id2502724">Structures</a>, <a href="#id2508949">Presentation Stream</a>, <a href="#id2523342">YAML Character Stream</a>, <a class="preferred" href="#id2525905">Document Boundary Markers</a>, <a href="#id2526349">Documents</a>, <a href="#id2527114">Complete Stream</a>, <a href="#id2535812">Plain</a></dt>
+              <dt xmlns=""><a id="index-entry-double quoted style"></a>double quoted style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information         model, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2503232">Scalars</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2512702">Syntax</a>, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2517668">Escape Sequences</a>, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" href="#id2532386">Scalar Styles</a>, <a xmlns="" class="preferred" href="#id2532720">Double Quoted</a>, <a xmlns="" href="#id2534365">Single Quoted</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-dump"></a>dump, <a class="preferred" href="#id2504309">Processing YAML Information</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>E</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-empty line"></a>empty line, <a href="#id2438272">Prior Art</a>, <a href="#id2503232">Scalars</a>, <a href="#id2520528">Comments</a>, <a class="preferred" href="#id2521681">Ignored Line Prefix</a>, <a href="#id2522356">Line Folding</a>, <a href="#id2532632">Flow Scalar Styles</a>, <a href="#id2535812">Plain</a>, <a href="#id2538125">Block Indentation Indicator</a>, <a href="#id2538656">Block Chomping Indicator</a>, <a href="#id2540046">Literal</a>, <a href="#id2540863">Folded</a></dt>
+              <dt xmlns=""><a id="index-entry-equality"></a>equality, <a href="#id2504710">Represent</a>, <a href="#id2506281">Representation Graph</a>, <a href="#id2506659">Nodes</a>, <a href="#id2506940">Tags</a>, <a class="preferred" href="#id2507367">Nodes Comparison</a>, <a href="#id2509799">Scalar Formats</a>, <a href="#id2510274">Loading Failure Points</a>, <a href="#id2512215">Recognized and Valid</a>, <a href="#id2543957">Mapping Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-escaped  (ignored) line break"></a>escaped             (ignored) line break, <a href="#id2515898">Line Break Characters</a>, <a class="preferred" href="#id2532720">Double Quoted</a></dt>
+              <dt xmlns=""><a id="index-entry-escaping in double quoted  style"></a>escaping in double quoted         style, <a href="#id2438272">Prior Art</a>, <a href="#id2503232">Scalars</a>, <a href="#id2513160">Character Set</a>, <a href="#id2516631">Miscellaneous Characters</a>, <a class="preferred" href="#id2517668">Escape Sequences</a>, <a href="#id2532720">Double Quoted</a>, <a href="#id2540046">Literal</a></dt>
+              <dt xmlns=""><a id="index-entry-escaping in single quoted  style"></a>escaping in single quoted               style, <a class="preferred" href="#id2534365">Single Quoted</a></dt>
+              <dt xmlns=""><a id="index-entry-escaping in URI"></a>escaping in URI, <a href="#id2506940">Tags</a>, <a class="preferred" href="#id2516631">Miscellaneous Characters</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-explicit document"></a>explicit document, <a class="preferred" href="#id2526349">Documents</a>, <a href="#id2527114">Complete Stream</a></dt>
+              <dt xmlns=""><a id="index-entry-explicit key"></a>explicit key, <a class="preferred" href="#id2544175">Flow Mappings</a>, <a href="#id2545757">Block Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-explicit value"></a>explicit value, <a class="preferred" href="#id2544175">Flow Mappings</a>, <a href="#id2545757">Block Mappings</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>F</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-flow collection style"></a>flow collection style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information             model, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2512702">Syntax</a>, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" href="#id2535812">Plain</a>, <a xmlns="" class="preferred" href="#id2541922">Collection Styles</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-flow mapping style"></a>flow mapping style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2502325">Collections</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" class="preferred" href="#id2544175">Flow Mappings</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-flow scalar style"></a>flow scalar style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information           model, <a xmlns="" href="#id2503232">Scalars</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2522356">Line Folding</a>, <a xmlns="" href="#id2526349">Documents</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" href="#id2532386">Scalar Styles</a>, <a xmlns="" class="preferred" href="#id2532632">Flow Scalar Styles</a>, <a xmlns="" href="#id2535812">Plain</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-flow sequence style"></a>flow sequence style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information           model, <a xmlns="" href="#id2502325">Collections</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2542214">Sequence Styles</a>, <a xmlns="" class="preferred" href="#id2542413">Flow Sequences</a>, <a xmlns="" href="#id2544175">Flow Mappings</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-flow style"></a>flow style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information         model, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2502325">Collections</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2522356">Line Folding</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" class="preferred" href="#id2531352">Flow Nodes</a>, <a xmlns="" href="#id2531873">Block Nodes</a>, <a xmlns="" href="#id2542413">Flow Sequences</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-flow-in context"></a>flow-in context, <a href="#id2519186">Production Parameters</a>, <a class="preferred" href="#id2535812">Plain</a>, <a href="#id2541922">Collection Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-flow-key context"></a>flow-key context, <a href="#id2519186">Production Parameters</a>, <a href="#id2541922">Collection Styles</a>, <a class="preferred" href="#id2544175">Flow Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-flow-out  context"></a>flow-out                 context, <a href="#id2519186">Production Parameters</a>, <a class="preferred" href="#id2535812">Plain</a>, <a href="#id2541922">Collection Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-folded style"></a>folded style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information           model, <a xmlns="" href="#id2503232">Scalars</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2522356">Line Folding</a>, <a xmlns="" href="#id2532386">Scalar Styles</a>, <a xmlns="" href="#id2537921">Block Style Indicator</a>, <a xmlns="" href="#id2539942">Block Scalar Styles</a>, <a xmlns="" class="preferred" href="#id2540863">Folded</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-format"></a>format, <a href="#id2505379">Present</a>, <a href="#id2505832">Construct</a>, <a href="#id2506940">Tags</a>, <a href="#id2507367">Nodes Comparison</a>, <a href="#id2508949">Presentation Stream</a>, <a class="preferred" href="#id2509799">Scalar Formats</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>G</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-generic line break"></a>generic line break, <a class="preferred" href="#id2515898">Line Break Characters</a>, <a href="#id2517668">Escape Sequences</a>, <a href="#id2522356">Line Folding</a></dt>
+              <dt xmlns=""><a id="index-entry-global tag"></a>global tag, <a href="#id2438272">Prior Art</a>, <a href="#id2503753">Tags</a>, <a href="#id2504710">Represent</a>, <a class="preferred" href="#id2506940">Tags</a>, <a href="#id2510888">Resolved</a>, <a href="#id2524672">Tag Prefixes</a>, <a href="#id2525159">Tag Handles</a>, <a href="#id2528616">Node Tags</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>I</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-identified"></a>identified, <a href="#id2502724">Structures</a>, <a class="preferred" href="#id2508656">Anchors and Aliases</a>, <a href="#id2510726">Well-Formed and Identified</a></dt>
+              <dt xmlns=""><a id="index-entry-identity"></a>identity, <a class="preferred" href="#id2507367">Nodes Comparison</a></dt>
+              <dt xmlns=""><a id="index-entry-ignored  line prefix"></a>ignored             line prefix, <a class="preferred" href="#id2521681">Ignored Line Prefix</a>, <a href="#id2532720">Double Quoted</a>, <a href="#id2534365">Single Quoted</a>, <a href="#id2535812">Plain</a></dt>
+              <dt xmlns=""><a id="index-entry-ill-formed  stream"></a>ill-formed           stream, <a href="#id2505613">Parse</a>, <a href="#id2510274">Loading Failure Points</a>, <a class="preferred" href="#id2510726">Well-Formed and Identified</a></dt>
+              <dt xmlns=""><a id="index-entry-implicit document"></a>implicit document, <a class="preferred" href="#id2526349">Documents</a>, <a href="#id2527114">Complete Stream</a></dt>
+              <dt xmlns=""><a id="index-entry-in-line mapping style"></a>in-line mapping style, <a class="preferred" href="#id2545757">Block Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-in-line sequence style"></a>in-line sequence style, <a class="preferred" href="#id2543032">Block Sequences</a></dt>
+              <dt xmlns=""><a id="index-entry-in-line style"></a>in-line style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2519916">Indentation Spaces</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" href="#id2541922">Collection Styles</a>, <a xmlns="" href="#id2542214">Sequence Styles</a>, <a xmlns="" class="preferred" href="#id2543032">Block Sequences</a>, <a xmlns="" href="#id2545757">Block Mappings</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-indentation  indicator"></a>indentation               indicator, <a class="preferred" href="#id2538125">Block Indentation Indicator</a>, <a href="#id2540863">Folded</a></dt>
+              <dt xmlns=""><a id="index-entry-indentation  space"></a>indentation       space, <a href="#id2439001">Introduction</a>, <a href="#id2438272">Prior Art</a>, <a href="#id2502325">Collections</a>, <a href="#id2505379">Present</a>, <a href="#id2505832">Construct</a>, <a href="#id2506012">Information Models</a>, <a href="#id2509255">Node Styles</a>, <a href="#id2510888">Resolved</a>, <a href="#id2512702">Syntax</a>, <a href="#id2516631">Miscellaneous Characters</a>, <a href="#id2519186">Production Parameters</a>, <a class="preferred" href="#id2519916">Indentation Spaces</a>, <a href="#id2520528">Comments</a>, <a href="#id2521201">Separation Spaces</a>, <a href="#id2521681">Ignored Line Prefix</a>, <a href="#id2522356">Line Folding</a>, <a href="#id2523453">Directives</a>, <a href="#id2526349">Documents</a>, <a href="#id2530054">Node Content</a>, <a href="#id2532720">Double Quoted</a>, <a href="#id2534365">Single Quoted</a>, <a href="#id2535812">Plain</a>, <a href="#id2538125">Block Indentation Indicator</a>, <a href="#id2538656">Block Chomping Indicator</a>, <a href="#id2539942">Block Scalar Styles</a>, <a href="#id2540046">Literal</a>, <a href="#id2540863">Folded</a>, <a href="#id2543032">Block Sequences</a>, <a href="#id2545757">Block Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-indicator"></a>indicator, <a href="#id2438272">Prior Art</a>, <a href="#id2502325">Collections</a>, <a href="#id2509255">Node Styles</a>, <a class="preferred" href="#id2513753">Indicator Characters</a>, <a href="#id2519186">Production Parameters</a>, <a href="#id2519916">Indentation Spaces</a>, <a href="#id2522356">Line Folding</a>, <a href="#id2530054">Node Content</a>, <a href="#id2531352">Flow Nodes</a>, <a href="#id2531873">Block Nodes</a>, <a href="#id2535812">Plain</a>, <a href="#id2537677">Block Scalar Header</a>, <a href="#id2540046">Literal</a></dt>
+              <dt xmlns=""><a id="index-entry-invalid  content"></a>invalid         content, <a href="#id2510274">Loading Failure Points</a>, <a class="preferred" href="#id2512215">Recognized and Valid</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>K</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-keep chomping"></a>keep chomping, <a href="#id2519186">Production Parameters</a>, <a class="preferred" href="#id2538656">Block Chomping Indicator</a></dt>
+              <dt xmlns=""><a id="index-entry-key"></a>key</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2439001">Introduction</a>, <a xmlns="" href="#id2502325">Collections</a>, <a xmlns="" href="#id2502724">Structures</a>, <a xmlns="" href="#id2504710">Represent</a>, <a xmlns="" href="#id2505138">Serialize</a>, <a xmlns="" href="#id2506012">Information Models</a>, <a xmlns="" href="#id2506281">Representation Graph</a>, <a xmlns="" class="preferred" href="#id2506659">Nodes</a>, <a xmlns="" href="#id2507367">Nodes Comparison</a>, <a xmlns="" href="#id2508190">Serialization Tree</a>, <a xmlns="" href="#id2508372">Keys Order</a>, <a xmlns="" href="#id2510888">Resolved</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2535812">Plain</a>, <a xmlns="" href="#id2542413">Flow Sequences</a>, <a xmlns="" class="preferred" href="#id2543957">Mapping Styles</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-key order"></a>key order, <a href="#id2505138">Serialize</a>, <a href="#id2505832">Construct</a>, <a href="#id2506012">Information Models</a>, <a href="#id2508190">Serialization Tree</a>, <a class="preferred" href="#id2508372">Keys Order</a>, <a href="#id2543957">Mapping Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-kind"></a>kind, <a href="#id2504710">Represent</a>, <a href="#id2506281">Representation Graph</a>, <a class="preferred" href="#id2506659">Nodes</a>, <a href="#id2506940">Tags</a>, <a href="#id2507367">Nodes Comparison</a>, <a href="#id2509255">Node Styles</a>, <a href="#id2510888">Resolved</a>, <a href="#id2530054">Node Content</a>, <a href="#id2541922">Collection Styles</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>L</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-line break character"></a>line break character, <a href="#id2438272">Prior Art</a>, <a href="#id2503232">Scalars</a>, <a href="#id2512702">Syntax</a>, <a href="#id2513160">Character Set</a>, <a class="preferred" href="#id2515898">Line Break Characters</a>, <a href="#id2516631">Miscellaneous Characters</a>, <a href="#id2519186">Production Parameters</a>, <a href="#id2519916">Indentation Spaces</a>, <a href="#id2521681">Ignored Line Prefix</a>, <a href="#id2522356">Line Folding</a>, <a href="#id2531873">Block Nodes</a>, <a href="#id2532720">Double Quoted</a>, <a href="#id2534365">Single Quoted</a>, <a href="#id2535812">Plain</a>, <a href="#id2537677">Block Scalar Header</a>, <a href="#id2538656">Block Chomping Indicator</a>, <a href="#id2540046">Literal</a>, <a href="#id2540863">Folded</a></dt>
+              <dt xmlns=""><a id="index-entry-line break normalization"></a>line break normalization, <a class="preferred" href="#id2515898">Line Break Characters</a>, <a href="#id2540046">Literal</a></dt>
+              <dt xmlns=""><a id="index-entry-line folding"></a>line folding, <a href="#id2438272">Prior Art</a>, <a href="#id2503232">Scalars</a>, <a class="preferred" href="#id2522356">Line Folding</a>, <a href="#id2532632">Flow Scalar Styles</a>, <a href="#id2532720">Double Quoted</a>, <a href="#id2534365">Single Quoted</a>, <a href="#id2535812">Plain</a>, <a href="#id2538656">Block Chomping Indicator</a>, <a href="#id2540046">Literal</a>, <a href="#id2540863">Folded</a></dt>
+              <dt xmlns=""><a id="index-entry-literal  style"></a>literal         style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2503232">Scalars</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2532386">Scalar Styles</a>, <a xmlns="" href="#id2537921">Block Style Indicator</a>, <a xmlns="" href="#id2539942">Block Scalar Styles</a>, <a xmlns="" class="preferred" href="#id2540046">Literal</a>, <a xmlns="" href="#id2540863">Folded</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-load"></a>load, <a class="preferred" href="#id2504309">Processing YAML Information</a>, <a href="#id2510274">Loading Failure Points</a></dt>
+              <dt xmlns=""><a id="index-entry-load failure point"></a>load failure point, <a href="#id2505723">Compose</a>, <a class="preferred" href="#id2510274">Loading Failure Points</a></dt>
+              <dt xmlns=""><a id="index-entry-local tag"></a>local tag, <a href="#id2503753">Tags</a>, <a href="#id2504710">Represent</a>, <a class="preferred" href="#id2506940">Tags</a>, <a href="#id2510888">Resolved</a>, <a href="#id2524672">Tag Prefixes</a>, <a href="#id2525159">Tag Handles</a>, <a href="#id2528616">Node Tags</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>M</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-mapping"></a>mapping</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information       model, <a xmlns="" href="#id2439001">Introduction</a>, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2502325">Collections</a>, <a xmlns="" href="#id2504710">Represent</a>, <a xmlns="" href="#id2506281">Representation Graph</a>, <a xmlns="" class="preferred" href="#id2506659">Nodes</a>, <a xmlns="" href="#id2506940">Tags</a>, <a xmlns="" href="#id2507367">Nodes Comparison</a>, <a xmlns="" href="#id2508372">Keys Order</a>, <a xmlns="" href="#id2510888">Resolved</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2541922">Collection Styles</a>, <a xmlns="" href="#id2542413">Flow Sequences</a>, <a xmlns="" class="preferred" href="#id2543957">Mapping Styles</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-may"></a>may, <a class="preferred" href="#id2502086">Terminology</a></dt>
+              <dt xmlns=""><a id="index-entry-&ldquo;more indented&rdquo; line"></a>&ldquo;more indented&rdquo; line, <a href="#id2503232">Scalars</a>, <a href="#id2522356">Line Folding</a>, <a class="preferred" href="#id2540863">Folded</a></dt>
+              <dt xmlns=""><a id="index-entry-must"></a>must, <a class="preferred" href="#id2502086">Terminology</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>N</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-named tag handle"></a>named tag handle, <a href="#id2516631">Miscellaneous Characters</a>, <a class="preferred" href="#id2525159">Tag Handles</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-need not"></a>need not, <a class="preferred" href="#id2502086">Terminology</a></dt>
+              <dt xmlns=""><a id="index-entry-node"></a>node</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information           model, <a xmlns="" href="#id2502724">Structures</a>, <a xmlns="" href="#id2504710">Represent</a>, <a xmlns="" href="#id2505138">Serialize</a>, <a xmlns="" href="#id2506281">Representation Graph</a>, <a xmlns="" class="preferred" href="#id2506659">Nodes</a>, <a xmlns="" href="#id2506940">Tags</a>, <a xmlns="" href="#id2507367">Nodes Comparison</a>, <a xmlns="" href="#id2508190">Serialization Tree</a>, <a xmlns="" href="#id2508372">Keys Order</a>, <a xmlns="" href="#id2508656">Anchors and Aliases</a>, <a xmlns="" href="#id2508949">Presentation Stream</a>, <a xmlns="" href="#id2509255">Node Styles</a>, <a xmlns="" href="#id2509980">Comments</a>, <a xmlns="" href="#id2510274">Loading Failure Points</a>, <a xmlns="" href="#id2510726">Well-Formed and Identified</a>, <a xmlns="" href="#id2510888">Resolved</a>, <a xmlns="" href="#id2512215">Recognized and Valid</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2519916">Indentation Spaces</a>, <a xmlns="" href="#id2526349">Documents</a>, <a xmlns="" class="preferred" href="#id2527964">Nodes</a>, <a xmlns="" href="#id2528258">Node Anchors</a>, <a xmlns="" href="#id2528616">Node Tags</a>, <a xmlns="" href="#id2530982">Alias Nodes</a>, <a xmlns="" href="#id2531352">Flow Nodes</a>, <a xmlns="" href="#id2542214">Sequence Styles</a>, <a xmlns="" href="#id2543032">Block Sequences</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-node property"></a>node property, <a href="#id2526349">Documents</a>, <a class="preferred" href="#id2527964">Nodes</a>, <a href="#id2530982">Alias Nodes</a>, <a href="#id2531352">Flow Nodes</a>, <a href="#id2531873">Block Nodes</a>, <a href="#id2542413">Flow Sequences</a>, <a href="#id2543032">Block Sequences</a>, <a href="#id2544175">Flow Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-non-specific tag"></a>non-specific tag, <a href="#id2503753">Tags</a>, <a href="#id2505379">Present</a>, <a href="#id2510274">Loading Failure Points</a>, <a class="preferred" href="#id2510888">Resolved</a>, <a href="#id2512702">Syntax</a>, <a href="#id2528616">Node Tags</a>, <a href="#id2532386">Scalar Styles</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>O</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-optional"></a>optional, <a class="preferred" href="#id2502086">Terminology</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>P</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-parse"></a>parse, <a class="preferred" href="#id2505613">Parse</a>, <a href="#id2508949">Presentation Stream</a>, <a href="#id2510888">Resolved</a>, <a href="#id2515898">Line Break Characters</a>, <a href="#id2517668">Escape Sequences</a>, <a href="#id2525159">Tag Handles</a>, <a href="#id2527114">Complete Stream</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-partial representation"></a>partial representation, <a class="preferred" href="#id2510274">Loading Failure Points</a>, <a href="#id2510888">Resolved</a>, <a href="#id2512215">Recognized and Valid</a></dt>
+              <dt xmlns=""><a id="index-entry-plain  style"></a>plain           style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2503232">Scalars</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a>, <a xmlns="" href="#id2510888">Resolved</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2526349">Documents</a>, <a xmlns="" href="#id2528616">Node Tags</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" href="#id2531352">Flow Nodes</a>, <a xmlns="" href="#id2532386">Scalar Styles</a>, <a xmlns="" class="preferred" href="#id2535812">Plain</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-present"></a>present, <a href="#id2504309">Processing YAML Information</a>, <a href="#id2504710">Represent</a>, <a class="preferred" href="#id2505379">Present</a>, <a href="#id2505613">Parse</a>, <a href="#id2506659">Nodes</a>, <a href="#id2507367">Nodes Comparison</a>, <a href="#id2508949">Presentation Stream</a>, <a href="#id2509799">Scalar Formats</a>, <a href="#id2510888">Resolved</a>, <a href="#id2513160">Character Set</a>, <a href="#id2515898">Line Break Characters</a>, <a href="#id2517668">Escape Sequences</a>, <a href="#id2519186">Production Parameters</a>, <a href="#id2522356">Line Folding</a>, <a href="#id2523342">YAML Character Stream</a>, <a href="#id2526349">Documents</a>, <a href="#id2528616">Node Tags</a>, <a href="#id2530054">Node Content</a>, <a href="#id2530982">Alias Nodes</a>, <a href="#id2531352">Flow Nodes</a>, <a href="#id2532632">Flow Scalar Styles</a>, <a href="#id2535812">Plain</a>, <a href="#id2538656">Block Chomping Indicator</a>, <a href="#id2542214">Sequence Styles</a>, <a href="#id2543032">Block Sequences</a>, <a href="#id2543957">Mapping Styles</a>, <a href="#id2545757">Block Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-presentation"></a>presentation, <a href="#id2504309">Processing YAML Information</a>, <a href="#id2506012">Information Models</a>, <a class="preferred" href="#id2508949">Presentation Stream</a>, <a href="#id2526349">Documents</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-presentation  detail"></a>presentation           detail, <a class="preferred" href="#id2505379">Present</a>, <a href="#id2505613">Parse</a>, <a href="#id2505832">Construct</a>, <a href="#id2506012">Information Models</a>, <a href="#id2508949">Presentation Stream</a>, <a href="#id2509255">Node Styles</a>, <a href="#id2509799">Scalar Formats</a>, <a href="#id2509980">Comments</a>, <a href="#id2510119">Directives</a>, <a href="#id2510888">Resolved</a>, <a href="#id2515898">Line Break Characters</a>, <a href="#id2517668">Escape Sequences</a>, <a href="#id2519916">Indentation Spaces</a>, <a href="#id2520528">Comments</a>, <a href="#id2521201">Separation Spaces</a>, <a href="#id2521681">Ignored Line Prefix</a>, <a href="#id2522356">Line Folding</a>, <a href="#id2523453">Directives</a>, <a href="#id2525159">Tag Handles</a>, <a href="#id2525905">Document Boundary Markers</a>, <a href="#id2526349">Documents</a>, <a href="#id2532386">Scalar Styles</a>, <a href="#id2538656">Block Chomping Indicator</a>, <a href="#id2541922">Collection Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-primary tag handle"></a>primary tag handle, <a class="preferred" href="#id2525159">Tag Handles</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-printable character"></a>printable character, <a href="#id2439001">Introduction</a>, <a href="#id2438272">Prior Art</a>, <a class="preferred" href="#id2513160">Character Set</a>, <a href="#id2517668">Escape Sequences</a>, <a href="#id2534365">Single Quoted</a>, <a href="#id2535812">Plain</a>, <a href="#id2540046">Literal</a></dt>
+              <dt xmlns=""><a id="index-entry-processor"></a>processor, <a href="#id2502086">Terminology</a>, <a class="preferred" href="#id2504309">Processing YAML Information</a>, <a href="#id2504671">Processes</a>, <a href="#id2505138">Serialize</a>, <a href="#id2505379">Present</a>, <a href="#id2507367">Nodes Comparison</a>, <a href="#id2508949">Presentation Stream</a>, <a href="#id2510119">Directives</a>, <a href="#id2510726">Well-Formed and Identified</a>, <a href="#id2510888">Resolved</a>, <a href="#id2512215">Recognized and Valid</a>, <a href="#id2512548">Available</a>, <a href="#id2513160">Character Set</a>, <a href="#id2513364">Character Encoding</a>, <a href="#id2515898">Line Break Characters</a>, <a href="#id2523453">Directives</a>, <a href="#id2523874">YAML Directive</a>, <a href="#id2525159">Tag Handles</a>, <a href="#id2525905">Document Boundary Markers</a>, <a href="#id2528258">Node Anchors</a>, <a href="#id2528616">Node Tags</a>, <a href="#id2538125">Block Indentation Indicator</a>, <a href="#id2543957">Mapping Styles</a>, <a href="#id2544175">Flow Mappings</a>, <a href="#id2545757">Block Mappings</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>Q</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-quoted style"></a>quoted style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2503232">Scalars</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a>, <a xmlns="" href="#id2510888">Resolved</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2516631">Miscellaneous Characters</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" class="preferred" href="#id2532386">Scalar Styles</a></dt>
+                </dl>
+              </dd>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>R</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-recognized tag"></a>recognized tag, <a class="preferred" href="#id2512215">Recognized and Valid</a></dt>
+              <dt xmlns=""><a id="index-entry-recommended"></a>recommended, <a class="preferred" href="#id2502086">Terminology</a></dt>
+              <dt xmlns=""><a id="index-entry-represent"></a>represent, <a href="#id2439001">Introduction</a>, <a href="#id2438272">Prior Art</a>, <a class="preferred" href="#id2504710">Represent</a>, <a href="#id2506940">Tags</a>, <a href="#id2507367">Nodes Comparison</a>, <a href="#id2508372">Keys Order</a></dt>
+              <dt xmlns=""><a id="index-entry-representation"></a>representation, <a href="#id2504309">Processing YAML Information</a>, <a href="#id2505138">Serialize</a>, <a href="#id2505723">Compose</a>, <a href="#id2505832">Construct</a>, <a href="#id2506012">Information Models</a>, <a class="preferred" href="#id2506281">Representation Graph</a>, <a href="#id2507367">Nodes Comparison</a>, <a href="#id2508190">Serialization Tree</a>, <a href="#id2508372">Keys Order</a>, <a href="#id2508656">Anchors and Aliases</a>, <a href="#id2508949">Presentation Stream</a>, <a href="#id2509255">Node Styles</a>, <a href="#id2509799">Scalar Formats</a>, <a href="#id2509980">Comments</a>, <a href="#id2510119">Directives</a>, <a href="#id2512548">Available</a>, <a href="#id2520528">Comments</a>, <a href="#id2523453">Directives</a>, <a href="#id2528258">Node Anchors</a>, <a href="#id2528616">Node Tags</a>, <a href="#id2538656">Block Chomping Indicator</a>, <a href="#id2543957">Mapping Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-required"></a>required, <a class="preferred" href="#id2502086">Terminology</a></dt>
+              <dt xmlns=""><a id="index-entry-reserved  directive"></a>reserved             directive, <a href="#id2510119">Directives</a>, <a class="preferred" href="#id2523453">Directives</a></dt>
+              <dt xmlns=""><a id="index-entry-reserved indicator"></a>reserved indicator, <a class="preferred" href="#id2513753">Indicator Characters</a></dt>
+              <dt xmlns=""><a id="index-entry-root node"></a>root node, <a class="preferred" href="#id2506281">Representation Graph</a>, <a href="#id2510888">Resolved</a>, <a href="#id2523342">YAML Character Stream</a>, <a href="#id2526349">Documents</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>S</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-scalar"></a>scalar</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information       model, <a xmlns="" href="#id2439001">Introduction</a>, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2503232">Scalars</a>, <a xmlns="" href="#id2504710">Represent</a>, <a xmlns="" href="#id2506281">Representation Graph</a>, <a xmlns="" class="preferred" href="#id2506659">Nodes</a>, <a xmlns="" href="#id2506940">Tags</a>, <a xmlns="" href="#id2507367">Nodes Comparison</a>, <a xmlns="" href="#id2509255">Node Styles</a>, <a xmlns="" href="#id2509799">Scalar Formats</a>, <a xmlns="" href="#id2509980">Comments</a>, <a xmlns="" href="#id2510274">Loading Failure Points</a>, <a xmlns="" href="#id2510888">Resolved</a>, <a xmlns="" href="#id2512215">Recognized and Valid</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2515898">Line Break Characters</a>, <a xmlns="" href="#id2516631">Miscellaneous Characters</a>, <a xmlns="" href="#id2517668">Escape Sequences</a>, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2520528">Comments</a>, <a xmlns="" href="#id2521201">Separation Spaces</a>, <a xmlns="" href="#id2521681">Ignored Line Prefix</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" class="preferred" href="#id2532386">Scalar Styles</a>, <a xmlns="" href="#id2532720">Double Quoted</a>, <a xmlns="" href="#id2535812">Plain</a>, <a xmlns="" href="#id2538656">Block Chomping Indicator</a>, <a xmlns="" href="#id2540046">Literal</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-secondary tag handle"></a>secondary tag handle, <a class="preferred" href="#id2525159">Tag Handles</a></dt>
+              <dt xmlns=""><a id="index-entry-separation  space"></a>separation                 space, <a href="#id2516631">Miscellaneous Characters</a>, <a href="#id2520528">Comments</a>, <a class="preferred" href="#id2521201">Separation Spaces</a>, <a href="#id2543032">Block Sequences</a>, <a href="#id2544175">Flow Mappings</a>, <a href="#id2545757">Block Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-sequence"></a>sequence</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2439001">Introduction</a>, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2504710">Represent</a>, <a xmlns="" href="#id2506281">Representation Graph</a>, <a xmlns="" class="preferred" href="#id2506659">Nodes</a>, <a xmlns="" href="#id2506940">Tags</a>, <a xmlns="" href="#id2507367">Nodes Comparison</a>, <a xmlns="" href="#id2508372">Keys Order</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2541922">Collection Styles</a>, <a xmlns="" class="preferred" href="#id2542214">Sequence Styles</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-serialization"></a>serialization, <a href="#id2504309">Processing YAML Information</a>, <a href="#id2505138">Serialize</a>, <a href="#id2505379">Present</a>, <a href="#id2505613">Parse</a>, <a href="#id2505723">Compose</a>, <a href="#id2505832">Construct</a>, <a href="#id2506012">Information Models</a>, <a class="preferred" href="#id2508190">Serialization Tree</a>, <a href="#id2508656">Anchors and Aliases</a>, <a href="#id2508949">Presentation Stream</a>, <a href="#id2509255">Node Styles</a>, <a href="#id2509799">Scalar Formats</a>, <a href="#id2509980">Comments</a>, <a href="#id2510119">Directives</a>, <a href="#id2520528">Comments</a>, <a href="#id2523453">Directives</a>, <a href="#id2528258">Node Anchors</a>, <a href="#id2528616">Node Tags</a>, <a href="#id2538656">Block Chomping Indicator</a>, <a href="#id2543957">Mapping Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-serialization  detail"></a>serialization           detail, <a class="preferred" href="#id2505138">Serialize</a>, <a href="#id2505723">Compose</a>, <a href="#id2506012">Information Models</a>, <a href="#id2508372">Keys Order</a>, <a href="#id2508656">Anchors and Aliases</a>, <a href="#id2528258">Node Anchors</a>, <a href="#id2543957">Mapping Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-serialize"></a>serialize, <a href="#id2438272">Prior Art</a>, <a class="preferred" href="#id2505138">Serialize</a>, <a href="#id2505723">Compose</a>, <a href="#id2508372">Keys Order</a>, <a href="#id2508656">Anchors and Aliases</a>, <a href="#id2530982">Alias Nodes</a></dt>
+              <dt xmlns=""><a id="index-entry-shall"></a>shall, <a class="preferred" href="#id2502086">Terminology</a></dt>
+              <dt xmlns=""><a id="index-entry-should"></a>should, <a class="preferred" href="#id2502086">Terminology</a></dt>
+              <dt xmlns=""><a id="index-entry-simple  key"></a>simple                 key, <a href="#id2519186">Production Parameters</a>, <a href="#id2521201">Separation Spaces</a>, <a href="#id2532632">Flow Scalar Styles</a>, <a href="#id2532720">Double Quoted</a>, <a href="#id2534365">Single Quoted</a>, <a href="#id2535812">Plain</a>, <a href="#id2541922">Collection Styles</a>, <a class="preferred" href="#id2544175">Flow Mappings</a>, <a href="#id2545757">Block Mappings</a></dt>
+              <dt xmlns=""><a id="index-entry-single pair style"></a>single pair style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information             model, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2542214">Sequence Styles</a>, <a xmlns="" href="#id2542413">Flow Sequences</a>, <a xmlns="" class="preferred" href="#id2544175">Flow Mappings</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-single quoted style"></a>single quoted style</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2503232">Scalars</a>, <a xmlns="" class="preferred" href="#id2509255">Node Styles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2530054">Node Content</a>, <a xmlns="" href="#id2532386">Scalar Styles</a>, <a xmlns="" class="preferred" href="#id2534365">Single Quoted</a>, <a xmlns="" href="#id2535812">Plain</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-specific line break"></a>specific line break, <a class="preferred" href="#id2515898">Line Break Characters</a>, <a href="#id2517668">Escape Sequences</a>, <a href="#id2522356">Line Folding</a></dt>
+              <dt xmlns=""><a id="index-entry-specific  tag"></a>specific           tag, <a class="preferred" href="#id2510888">Resolved</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-stream"></a>stream</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2502724">Structures</a>, <a xmlns="" href="#id2504309">Processing YAML Information</a>, <a xmlns="" href="#id2505379">Present</a>, <a xmlns="" href="#id2505613">Parse</a>, <a xmlns="" class="preferred" href="#id2508949">Presentation Stream</a>, <a xmlns="" href="#id2510274">Loading Failure Points</a>, <a xmlns="" href="#id2510726">Well-Formed and Identified</a>, <a xmlns="" href="#id2510888">Resolved</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2512702">Syntax</a>, <a xmlns="" href="#id2513160">Character Set</a>, <a xmlns="" href="#id2513364">Character Encoding</a>, <a xmlns="" href="#id2519186">Production Parameters</a>, <a xmlns="" href="#id2519916">Indentation Spaces</a>, <a xmlns="" href="#id2523342">YAML Character Stream</a>, <a xmlns="" href="#id2524672">Tag Prefixes</a>, <a xmlns="" href="#id2525905">Document Boundary Markers</a>, <a xmlns="" class="preferred" href="#id2527114">Complete Stream</a>, <a xmlns="" href="#id2527964">Nodes</a>, <a xmlns="" href="#id2531352">Flow Nodes</a>, <a xmlns="" href="#id2539942">Block Scalar Styles</a>, <a xmlns="" href="#id2543957">Mapping Styles</a>, <a xmlns="" href="#id2544175">Flow Mappings</a>, <a xmlns="" href="#id2545757">Block Mappings</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-strip chomping"></a>strip chomping, <a href="#id2519186">Production Parameters</a>, <a class="preferred" href="#id2538656">Block Chomping Indicator</a></dt>
+              <dt xmlns=""><a id="index-entry-style"></a>style, <a href="#id2505379">Present</a>, <a href="#id2505832">Construct</a>, <a href="#id2506012">Information Models</a>, <a href="#id2508949">Presentation Stream</a>, <a class="preferred" href="#id2509255">Node Styles</a>, <a href="#id2509799">Scalar Formats</a>, <a href="#id2510888">Resolved</a>, <a href="#id2526349">Documents</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>T</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-tab"></a>tab, <a href="#id2438272">Prior Art</a>, <a href="#id2513160">Character Set</a>, <a class="preferred" href="#id2516631">Miscellaneous Characters</a>, <a href="#id2517668">Escape Sequences</a>, <a href="#id2519916">Indentation Spaces</a>, <a href="#id2520528">Comments</a>, <a href="#id2521201">Separation Spaces</a>, <a href="#id2521681">Ignored Line Prefix</a>, <a href="#id2532720">Double Quoted</a>, <a href="#id2534365">Single Quoted</a>, <a href="#id2535812">Plain</a>, <a href="#id2538125">Block Indentation Indicator</a>, <a href="#id2540046">Literal</a>, <a href="#id2540863">Folded</a></dt>
+              <dt xmlns=""><a id="index-entry-tag"></a>tag</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information model, <a xmlns="" href="#id2438272">Prior Art</a>, <a xmlns="" href="#id2503753">Tags</a>, <a xmlns="" href="#id2504710">Represent</a>, <a xmlns="" href="#id2505379">Present</a>, <a xmlns="" href="#id2506281">Representation Graph</a>, <a xmlns="" href="#id2506659">Nodes</a>, <a xmlns="" class="preferred" href="#id2506940">Tags</a>, <a xmlns="" href="#id2507367">Nodes Comparison</a>, <a xmlns="" href="#id2509799">Scalar Formats</a>, <a xmlns="" href="#id2510274">Loading Failure Points</a>, <a xmlns="" href="#id2510888">Resolved</a>, <a xmlns="" href="#id2512215">Recognized and Valid</a>, <a xmlns="" href="#id2512548">Available</a>, <a xmlns="" href="#id2525159">Tag Handles</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2516631">Miscellaneous Characters</a>, <a xmlns="" href="#id2524297">TAG Directive</a>, <a xmlns="" href="#id2524672">Tag Prefixes</a>, <a xmlns="" href="#id2527964">Nodes</a>, <a xmlns="" class="preferred" href="#id2528616">Node Tags</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-TAG directive"></a>TAG directive, <a href="#id2506940">Tags</a>, <a href="#id2510119">Directives</a>, <a href="#id2523453">Directives</a>, <a class="preferred" href="#id2524297">TAG Directive</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-tag handle"></a>tag handle, <a href="#id2503753">Tags</a>, <a href="#id2505379">Present</a>, <a href="#id2524297">TAG Directive</a>, <a href="#id2524672">Tag Prefixes</a>, <a class="preferred" href="#id2525159">Tag Handles</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-tag  prefix"></a>tag               prefix, <a href="#id2524297">TAG Directive</a>, <a class="preferred" href="#id2524672">Tag Prefixes</a>, <a href="#id2528616">Node Tags</a></dt>
+              <dt xmlns=""><a id="index-entry-tag resolution"></a>tag resolution, <a href="#id2506940">Tags</a>, <a href="#id2510274">Loading Failure Points</a>, <a class="preferred" href="#id2510888">Resolved</a>, <a href="#id2512702">Syntax</a>, <a href="#id2528616">Node Tags</a>, <a href="#id2532386">Scalar Styles</a></dt>
+              <dt xmlns=""><a id="index-entry-tag shorthand"></a>tag shorthand, <a href="#id2503753">Tags</a>, <a href="#id2512702">Syntax</a>, <a href="#id2516631">Miscellaneous Characters</a>, <a href="#id2524297">TAG Directive</a>, <a href="#id2524672">Tag Prefixes</a>, <a href="#id2525159">Tag Handles</a>, <a class="preferred" href="#id2528616">Node Tags</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>U</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-unavailable  tag"></a>unavailable           tag, <a href="#id2505832">Construct</a>, <a href="#id2510274">Loading Failure Points</a>, <a class="preferred" href="#id2512548">Available</a></dt>
+              <dt xmlns=""><a id="index-entry-unidentified alias"></a>unidentified alias, <a href="#id2510274">Loading Failure Points</a>, <a class="preferred" href="#id2510726">Well-Formed and Identified</a></dt>
+              <dt xmlns=""><a id="index-entry-unrecognized tag"></a>unrecognized tag, <a href="#id2510274">Loading Failure Points</a>, <a class="preferred" href="#id2512215">Recognized and Valid</a></dt>
+              <dt xmlns=""><a id="index-entry-unresolved tag"></a>unresolved tag, <a href="#id2510274">Loading Failure Points</a>, <a class="preferred" href="#id2510888">Resolved</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>V</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-valid content"></a>valid content, <a class="preferred" href="#id2512215">Recognized and Valid</a></dt>
+              <dt xmlns=""><a id="index-entry-value"></a>value</dt>
+              <dd xmlns="">
+                <dl>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">information       model, <a xmlns="" href="#id2439001">Introduction</a>, <a xmlns="" href="#id2502325">Collections</a>, <a xmlns="" href="#id2502724">Structures</a>, <a xmlns="" href="#id2504710">Represent</a>, <a xmlns="" class="preferred" href="#id2506659">Nodes</a>, <a xmlns="" href="#id2507367">Nodes Comparison</a>, <a xmlns="" href="#id2508372">Keys Order</a>, <a xmlns="" href="#id2510888">Resolved</a></dt>
+                  <dt xmlns="http://www.w3.org/1999/xhtml">syntax, <a xmlns="" href="#id2513753">Indicator Characters</a>, <a xmlns="" href="#id2535812">Plain</a>, <a xmlns="" class="preferred" href="#id2543957">Mapping Styles</a></dt>
+                </dl>
+              </dd>
+              <dt xmlns=""><a id="index-entry-verbatim  tag"></a>verbatim       tag, <a href="#id2512702">Syntax</a>, <a class="preferred" href="#id2528616">Node Tags</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>W</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-well-formed stream"></a>well-formed stream, <a class="preferred" href="#id2510726">Well-Formed and Identified</a></dt>
+              <dt xmlns=""><a id="index-entry-white space"></a>white space, <a class="preferred" href="#id2516631">Miscellaneous Characters</a>, <a href="#id2521681">Ignored Line Prefix</a>, <a href="#id2522356">Line Folding</a>, <a href="#id2532720">Double Quoted</a>, <a href="#id2534365">Single Quoted</a>, <a href="#id2540863">Folded</a></dt>
+            </dl>
+          </div>
+          <div class="indexdiv">
+            <h3>Y</h3>
+            <dl>
+              <dt xmlns=""><a id="index-entry-YAML  directive"></a>YAML             directive, <a href="#id2510119">Directives</a>, <a href="#id2523453">Directives</a>, <a class="preferred" href="#id2523874">YAML Directive</a></dt>
+            </dl>
+          </div>
+        </div>
+      </div>
+    </div>
+  </body>
+</html>
