tree-sitter-yaml/corpus/spec.txt

8687 lines
226 KiB
Plaintext
Raw Normal View History

2019-08-31 07:14:13 -04:00
================================================================================
Aliases in Block Sequence
================================================================================
- &a a
- &b b
- *a
- *b
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(alias)))
(block_sequence_item
(flow_node
(alias)))))))
================================================================================
Aliases in Explicit Block Mapping
================================================================================
? &a a
: &b b
: *a
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
value: (flow_node
(alias)))))))
================================================================================
Aliases in Flow Objects
================================================================================
{ &a [a, &b b]: *b, *a : [c, *b, d]}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(anchor)
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(anchor)
(plain_scalar))))
2019-08-31 07:14:13 -04:00
value: (flow_node
(alias)))
(flow_pair
key: (flow_node
(alias))
value: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(alias))
(flow_node
(plain_scalar)))))))))
================================================================================
Aliases in Implicit Block Mapping
================================================================================
&a a: &b b
*a : *b
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(alias))
value: (flow_node
(alias)))))))
================================================================================
Allowed characters in alias
================================================================================
a: &:@*!$"<foo>: scalar a
b: *:@*!$"<foo>:
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(alias)))))))
================================================================================
Allowed characters in keys
================================================================================
a!"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~: safe
?foo: safe question mark
:foo: safe colon
-foo: safe dash
this is#not: a comment
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Allowed characters in plain scalars
================================================================================
safe: a!"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~
!"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~
safe question mark: ?foo
safe colon: :foo
safe dash: -foo
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Allowed characters in quoted mapping key
================================================================================
"foo\nbar:baz\tx \\$%^&*()x": 23
'x\ny:z\tx $%^&*()x': 24
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(double_quote_scalar
(escape_sequence)
(escape_sequence)
(escape_sequence)))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(single_quote_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Anchor and alias as mapping key [INVALID]
================================================================================
key1: &alias value1
&b *alias : value2
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(flow_node
(anchor)))
================================================================================
Anchor before sequence entry on same line [INVALID]
================================================================================
&anchor - sequence entry
--------------------------------------------------------------------------------
(ERROR
(flow_node
(anchor)))
================================================================================
Anchor before zero indented sequence
================================================================================
---
seq:
&anchor
- a
- b
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))))))
================================================================================
Anchor for empty node
================================================================================
---
a: &anchor
b: *anchor
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(alias)))))))
================================================================================
Anchor plus Alias [INVALID]
================================================================================
key1: &a value
key2: &b *a
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor))))
================================================================================
Anchor with colon in the middle
================================================================================
---
key: &an:chor value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Anchor with unicode character
================================================================================
---
- &😁 unicode anchor
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(anchor)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Anchors and Tags
================================================================================
- &a !!str a
- !!int 2
- !!int &c 4
- &d d
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(anchor)
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(tag)
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(anchor)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Anchors in Mapping
================================================================================
&a a: b
c: &d d
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Anchors on Empty Scalars
================================================================================
- &a
- a
-
&a : a
b: &b
-
&c : &a
-
? &d
-
? &e
: &a
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(anchor)))
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor))
value: (flow_node
(anchor))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor))
value: (flow_node
(anchor))))))))))
================================================================================
Anchors With Colon in Name
================================================================================
&a: key: &a value
foo:
*a:
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(alias)))))))
================================================================================
Backslashes in singlequotes
================================================================================
'foo: bar\': baz'
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(single_quote_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Bad indentation in mapping (2) [INVALID]
================================================================================
map:
key1: "quoted1"
key2: "bad indentation"
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(ERROR))))))))
================================================================================
Bad indentation in mapping [INVALID]
================================================================================
map:
key1: "quoted1"
key2: "bad indentation"
--------------------------------------------------------------------------------
(ERROR
(flow_node
(plain_scalar))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar))))
================================================================================
Bare document after document end marker
================================================================================
---
scalar1
...
key: value
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar)))
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Blank lines
================================================================================
foo: 1
bar: 2
text: |
a
b
c
d
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Block Mapping with Missing Keys
================================================================================
: a
: b
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
value: (flow_node
(plain_scalar)))
(block_mapping_pair
value: (flow_node
(plain_scalar)))))))
================================================================================
Block Mapping with Missing Values
================================================================================
? a
? b
c:
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar)))))))
================================================================================
Block Mapping with Multiline Scalars
================================================================================
? a
true
: null
d
? e
42
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar)))))))
================================================================================
Block Mappings in Block Sequence
================================================================================
- key: value
key2: value2
-
key3: value3
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Block scalar indicator order
================================================================================
- |2-
explicit indent and chomp
- |-2
chomp and explicit indent
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_scalar)))
(block_sequence_item
(block_node
(block_scalar)))))))
================================================================================
Block Scalar Keep
================================================================================
--- |+
ab
...
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Block Scalar Strip
================================================================================
|-
ab
...
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Block Scalar Strip [1.3]
================================================================================
--- |-
ab
...
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Block scalar with spaces only
================================================================================
empty block scalar: >
# comment
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(comment)))))
================================================================================
Block scalar with wrong indented line after spaces only [INVALID]
================================================================================
block scalar: >
invalid
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(ERROR)))))
================================================================================
Block Sequence in Block Mapping
================================================================================
key:
- item1
- item2
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))))))
================================================================================
Block Sequence in Block Sequence
================================================================================
- - s1_i1
- s1_i2
- s2
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Block Submapping
================================================================================
foo:
bar: 1
baz: 2
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Colon and adjacent value after comment on next line
================================================================================
---
{ "foo" # comment
:bar }
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(double_quote_scalar))
(comment)
value: (flow_node
(plain_scalar)))))))
================================================================================
Colon and adjacent value on next line
================================================================================
---
{ "foo"
:bar }
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Colon followed by comma
================================================================================
---
- :,
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Colon in Double Quoted String
================================================================================
"foo: bar\": baz"
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(double_quote_scalar
(escape_sequence)))))
================================================================================
Comment and document-end marker
================================================================================
# comment
...
--------------------------------------------------------------------------------
(stream
(comment)
(document))
2019-08-31 07:14:13 -04:00
================================================================================
Comment between plain scalar lines [INVALID]
================================================================================
word1 # comment
word2
--------------------------------------------------------------------------------
(ERROR
(flow_node
(plain_scalar))
(comment))
================================================================================
Comment in flow sequence before comma
================================================================================
---
[ word1
# comment
, word2]
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(comment)
(flow_node
(plain_scalar))))))
================================================================================
Comment in plain multiline value [INVALID]
================================================================================
key: word1
# xxx
word2
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(comment)
(ERROR)))))
================================================================================
Comment that looks like a mapping key [INVALID]
================================================================================
key: value
this is #not a: key
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(ERROR
(flow_node
(plain_scalar)))
(comment)))))
================================================================================
Comment without whitespace after block scalar indicator [INVALID]
================================================================================
block: ># comment
scalar
--------------------------------------------------------------------------------
(ERROR
2020-09-28 10:07:27 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Comment without whitespace after doublequoted scalar [INVALID]
================================================================================
key: "value"# invalid comment
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar))))
================================================================================
Construct Binary
================================================================================
canonical: !!binary "\
R0lGODlhDAAMAIQAAP//9/X17unp5WZmZgAAAOfn515eXvPz7Y6OjuDg4J+fn5\
OTk6enp56enmlpaWNjY6Ojo4SEhP/++f/++f/++f/++f/++f/++f/++f/++f/+\
+f/++f/++f/++f/++f/++SH+Dk1hZGUgd2l0aCBHSU1QACwAAAAADAAMAAAFLC\
AgjoEwnuNAFOhpEMTRiggcz4BNJHrv/zCFcLiwMWYNG84BwwEeECcgggoBADs="
generic: !!binary |
R0lGODlhDAAMAIQAAP//9/X17unp5WZmZgAAAOfn515eXvPz7Y6OjuDg4J+fn5
OTk6enp56enmlpaWNjY6Ojo4SEhP/++f/++f/++f/++f/++f/++f/++f/++f/+
+f/++f/++f/++f/++f/++SH+Dk1hZGUgd2l0aCBHSU1QACwAAAAADAAMAAAFLC
AgjoEwnuNAFOhpEMTRiggcz4BNJHrv/zCFcLiwMWYNG84BwwEeECcgggoBADs=
description:
The binary value above is a tiny arrow encoded as a gif image.
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(tag)
(double_quote_scalar
(escape_sequence)
(escape_sequence)
(escape_sequence)
(escape_sequence))))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(tag)
(block_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Directive without document [INVALID]
================================================================================
%YAML 1.2
...
--------------------------------------------------------------------------------
(stream
(ERROR
(yaml_directive
(yaml_version)))
(document))
================================================================================
Document start on last line
================================================================================
---
a: b
---
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(document))
================================================================================
Document with footer
================================================================================
aaa: bbb
...
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Document-end marker
================================================================================
...
--------------------------------------------------------------------------------
(stream
(document))
================================================================================
Double quoted scalar with escaped single quote [INVALID]
================================================================================
---
double: "quoted \' scalar"
--------------------------------------------------------------------------------
(ERROR
(flow_node
(plain_scalar)))
================================================================================
Double quoted string without closing quote [INVALID]
================================================================================
---
key: "missing closing quote
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(ERROR)))))
================================================================================
Doublequoted scalar starting with a tab
================================================================================
---
tab: "\tstring"
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar
(escape_sequence))))))))
================================================================================
Duplicate YAML directive
================================================================================
%YAML 1.2
%YAML 1.2
---
--------------------------------------------------------------------------------
(stream
(document
(yaml_directive
(yaml_version))
(yaml_directive
(yaml_version))))
================================================================================
Empty flow collections
================================================================================
---
nested sequences:
- - - []
- - - {}
key1: []
key2: {}
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_sequence)))))))))
(block_sequence_item
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_mapping))))))))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_mapping)))))))
================================================================================
Empty Lines at End of Document
================================================================================
:
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair)))))
================================================================================
Empty Lines Between Mapping Elements
================================================================================
1: 2
3: 4
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Empty Stream
================================================================================
--------------------------------------------------------------------------------
(stream)
================================================================================
Escaped slash in double quotes
================================================================================
escaped slash: "a\/b"
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar
(escape_sequence))))))))
================================================================================
Explicit key and value seperated by comment
================================================================================
---
? key
# comment
: value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
(comment)
value: (flow_node
(plain_scalar)))))))
================================================================================
Explicit Non-Specific Tag
================================================================================
! a
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(tag)
(plain_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Explicit Non-Specific Tag [1.3]
================================================================================
---
! a
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(tag)
(plain_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Flow Mapping
================================================================================
{foo: you, bar: far}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Flow mapping colon on line after key
================================================================================
{"foo"
: "bar"}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(double_quote_scalar)))))))
================================================================================
Flow Mapping in Block Sequence
================================================================================
- {a: b}
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Flow Mapping Key on two lines [INVALID]
================================================================================
[23
]: 42
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_sequence
(flow_node
(plain_scalar)))))
(MISSING _eof))
================================================================================
Flow mapping missing a separating comma [INVALID]
================================================================================
---
{
foo: 1
bar: 2 }
--------------------------------------------------------------------------------
(ERROR
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))
================================================================================
Flow Sequence
================================================================================
[foo, bar, 42]
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))))))
================================================================================
Flow Sequence in Block Mapping
================================================================================
a: [b, c]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))))))
================================================================================
Flow Sequence in Flow Mapping
================================================================================
{a: [b, c], [d, e]: f}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))
(flow_pair
key: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))))
value: (flow_node
(plain_scalar)))))))
================================================================================
Flow Sequence in Flow Sequence
================================================================================
[a, [b, c]]
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))))))))
================================================================================
Flow sequence with invalid comma at the beginning [INVALID]
================================================================================
---
[ , a, b, c ]
--------------------------------------------------------------------------------
(ERROR)
================================================================================
Flow sequence with invalid extra closing bracket [INVALID]
================================================================================
---
[ a, b, c ] ]
--------------------------------------------------------------------------------
(ERROR
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))
================================================================================
Flow sequence with invalid extra comma [INVALID]
================================================================================
---
[ a, b, c, , ]
--------------------------------------------------------------------------------
(ERROR
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))
================================================================================
Flow sequence without closing bracket [INVALID]
================================================================================
---
[ [ a, b, c ]
--------------------------------------------------------------------------------
(ERROR
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))
================================================================================
Folded Block Scalar
================================================================================
>
ab
cd
ef
gh
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Folded Block Scalar [1.3]
================================================================================
--- >
ab
cd
ef
gh
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Implicit Flow Mapping Key on one line
================================================================================
[flow]: block
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(flow_sequence
(flow_node
(plain_scalar))))
value: (flow_node
(plain_scalar)))))))
================================================================================
Implicit key followed by newline [INVALID]
================================================================================
---
[ key
: value ]
--------------------------------------------------------------------------------
(ERROR
(flow_node
(plain_scalar)))
================================================================================
Implicit key followed by newline and adjacent value [INVALID]
================================================================================
[ "key"
:value ]
--------------------------------------------------------------------------------
(ERROR
(flow_node
(double_quote_scalar)))
================================================================================
Invalid anchor in zero indented sequence [INVALID]
================================================================================
---
seq:
&anchor
- a
- b
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(flow_node
(anchor)))
================================================================================
Invalid block mapping key on same line as previous key [INVALID]
================================================================================
---
x: { y: z }in: valid
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Invalid comment after comma [INVALID]
================================================================================
---
[ a, b, c,#invalid
]
--------------------------------------------------------------------------------
(ERROR
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))
================================================================================
Invalid comment after end of flow sequence [INVALID]
================================================================================
---
[ a, b, c, ]#invalid
--------------------------------------------------------------------------------
(ERROR
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))
================================================================================
Invalid content after document end marker [INVALID]
================================================================================
---
key: value
... invalid
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(MISSING _eof))
================================================================================
Invalid document markers in flow style [INVALID]
================================================================================
[
--- ,
...
]
--------------------------------------------------------------------------------
(ERROR
(plain_scalar))
================================================================================
Invalid document-end marker in single quoted string [INVALID]
================================================================================
---
'
...
'
--------------------------------------------------------------------------------
(ERROR
(document
(ERROR)))
================================================================================
Invalid document-start marker in doublequoted tring [INVALID]
================================================================================
---
"
---
"
--------------------------------------------------------------------------------
(ERROR
(ERROR))
================================================================================
Invalid escape in double quoted string [INVALID]
================================================================================
---
"\."
--------------------------------------------------------------------------------
(ERROR)
================================================================================
Invalid item after end of flow sequence [INVALID]
================================================================================
---
[
sequence item
]
invalid item
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_sequence
(flow_node
(plain_scalar)))))
(MISSING _eof))
================================================================================
Invalid mapping after sequence [INVALID]
================================================================================
- item1
- item2
invalid: x
--------------------------------------------------------------------------------
(ERROR
(block_sequence_item
(flow_node
(plain_scalar)))
(flow_node
(plain_scalar))
(plain_scalar))
================================================================================
Invalid mapping in plain multiline [INVALID]
================================================================================
this
is
invalid: x
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar)))
(MISSING _eof))
================================================================================
Invalid Mapping in plain scalar [INVALID]
================================================================================
key:
word1 word2
no: key
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))
================================================================================
Invalid mapping in plain single line value [INVALID]
================================================================================
a: b: c: d
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))
================================================================================
Invalid nested mapping [INVALID]
================================================================================
---
a: 'b': c
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(single_quote_scalar))))
================================================================================
Invalid scalar after sequence [INVALID]
================================================================================
- item1
- item2
invalid
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(ERROR
(plain_scalar))))))
================================================================================
Invalid scalar at the end of mapping [INVALID]
================================================================================
key:
- item1
- item2
invalid
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))
(ERROR
(flow_node
(plain_scalar)))))))
================================================================================
Invalid scalar at the end of sequence [INVALID]
================================================================================
key:
- bar
- baz
invalid
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(ERROR
(plain_scalar)))))))))
================================================================================
Invalid sequene item on same line as previous item [INVALID]
================================================================================
---
- { y: z }- invalid
--------------------------------------------------------------------------------
(ERROR
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
================================================================================
Invalid tabs as indendation in a mapping [INVALID]
================================================================================
---
a:
b:
c: value
--------------------------------------------------------------------------------
(ERROR
2020-09-28 10:07:27 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Invalid tag [INVALID]
================================================================================
---
!invalid{}tag scalar
--------------------------------------------------------------------------------
(ERROR
(flow_node
(tag)
(flow_mapping)))
2019-08-31 07:14:13 -04:00
================================================================================
Invalid text after block scalar indicator [INVALID]
================================================================================
---
folded: > first line
second line
--------------------------------------------------------------------------------
(ERROR
(flow_node
(plain_scalar)))
================================================================================
Invalid value after mapping [INVALID]
================================================================================
foo:
bar
invalid
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(ERROR
(flow_node
(plain_scalar)))))))
================================================================================
Key with anchor after missing explicit mapping value
================================================================================
---
a: 1
? b
&anchor c: 3
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar)))))))
================================================================================
Literal Block Scalar
================================================================================
a: |
ab
cd
ef
...
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Literal block scalar with more spaces in first line [INVALID]
================================================================================
---
block scalar: |
more spaces at the beginning
are invalid
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(ERROR)))))
================================================================================
Literal unicode
================================================================================
---
wanted: love ♥ and peace ☮
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Lookahead test cases
================================================================================
- bla"keks: foo
- bla]keks: foo
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Mapping starting at --- line [INVALID]
================================================================================
--- key1: value1
key2: value2
--------------------------------------------------------------------------------
2020-09-28 10:07:27 -04:00
(stream
(document
(flow_node
(plain_scalar)))
(MISSING _eof))
2019-08-31 07:14:13 -04:00
================================================================================
Mapping with anchor on document start line [INVALID]
================================================================================
--- &anchor a: b
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(MISSING _eof))
================================================================================
Mapping, key and flow sequence item anchors
================================================================================
---
&mapping
&key [ &item a, b, c ]: value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(anchor)
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(flow_sequence
(flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))))
value: (flow_node
(plain_scalar)))))))
================================================================================
Missing colon [INVALID]
================================================================================
top1:
key1: val1
top2
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(ERROR
(flow_node
(plain_scalar)))))))
================================================================================
Missing comma in flow [INVALID]
================================================================================
key: [ word1
# xxx
word2 ]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(ERROR
(flow_node
(plain_scalar))
(comment))))))
================================================================================
Missing document-end marker before directive [INVALID]
================================================================================
---
scalar1 # comment
%YAML 1.2
---
scalar2
--------------------------------------------------------------------------------
(stream
(document)
(ERROR
(flow_node
(plain_scalar))
(comment))
(document
(flow_node
(plain_scalar))))
================================================================================
Missing space in YAML directive
================================================================================
%YAML1.2
---
key: value
--------------------------------------------------------------------------------
(stream
(document
(reserved_directive
(directive_name))
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Mixed Block Mapping (explicit to implicit)
================================================================================
? a
: 13
1.5: d
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Mixed Block Mapping (implicit to explicit)
================================================================================
a: 4.2
? 23
: d
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
More indented lines at the beginning of folded block scalars
================================================================================
---
a: >2
more indented
regular
b: >2
more indented
regular
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Multi-level Mapping Indent
================================================================================
a:
b:
c: d
e:
f: g
h: i
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Multiline double quoted flow mapping key
================================================================================
---
- { "single line": value}
- { "multi
line": value}
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Multiline double quoted implicit keys [INVALID]
================================================================================
"a\nb": 1
"c
d": 1
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(double_quote_scalar
(escape_sequence)))
value: (flow_node
(plain_scalar)))
(ERROR)))))
================================================================================
Multiline doublequoted flow mapping key without value
================================================================================
---
- { "single line", a: b}
- { "multi
line", a: b}
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_mapping
(flow_node
(double_quote_scalar))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(flow_mapping
(flow_node
(double_quote_scalar))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Multiline implicit keys [INVALID]
================================================================================
a\nb: 1
c
d: 1
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))
================================================================================
Multiline plain flow mapping key
================================================================================
---
- { single line: value}
- { multi
line: value}
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Multiline plain flow mapping key without value
================================================================================
---
- { single line, a: b}
- { multi
line, a: b}
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_mapping
(flow_node
(plain_scalar))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(flow_mapping
(flow_node
(plain_scalar))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Multiline plain scalar with empty line
================================================================================
---
plain: a
b
c
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Multiline plain value with tabs on empty lines
================================================================================
key:
value
with
tabs
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Multiline Scalar at Top Level
================================================================================
a
b
c
d
e
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar))))
================================================================================
Multiline Scalar at Top Level [1.3]
================================================================================
---
a
b
c
d
e
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar))))
================================================================================
Multiline Scalar in Mapping
================================================================================
a: b
c
d:
e
f
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Multiline scalar that looks like a YAML directive
================================================================================
---
scalar
%YAML 1.2
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar))))
================================================================================
Multiline single quoted implicit keys [INVALID]
================================================================================
'a\nb': 1
'c
d': 1
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(single_quote_scalar))
value: (flow_node
(plain_scalar)))
(ERROR)))))
================================================================================
Multiple Entry Block Sequence
================================================================================
- foo
- bar
- 42
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Multiple Pair Block Mapping
================================================================================
foo: blue
bar: arrr
baz: jazz
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Nested flow collections
================================================================================
---
{
a: [
b, c, {
d: [e, f]
}
]
}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))))))))))))))
================================================================================
Nested flow collections on one line
================================================================================
---
{ a: [b, c, { d: [e, f] } ] }
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))))))))))))))
================================================================================
Nested flow mapping sequence and mappings
================================================================================
---
{ top1: [item1, {key2: value2}, item3], top2: value2 }
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))
(flow_node
(plain_scalar)))))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Nested implicit complex keys
================================================================================
---
[
[ a, [ [[b,c]]: d, e]]: 23
]
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_sequence
(flow_pair
key: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(flow_sequence
(flow_pair
key: (flow_node
(flow_sequence
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))))))
value: (flow_node
(plain_scalar)))
(flow_node
(plain_scalar))))))
value: (flow_node
(plain_scalar)))))))
================================================================================
Nested top level flow mapping
================================================================================
{ key: [[[
value
]]]
}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(flow_node
(flow_sequence
(flow_node
(flow_sequence
(flow_node
(plain_scalar)))))))))))))
================================================================================
Node Anchor and Tag on Seperate Lines
================================================================================
key: &anchor
!!map
a: b
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Node anchor in sequence [INVALID]
================================================================================
- item1
&node
- item2
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(ERROR
(anchor))
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Node anchor not indented [INVALID]
================================================================================
key: &x
!!map
a: b
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)))
(ERROR
(tag))))))
================================================================================
Node and Mapping Key Anchors
================================================================================
---
top1: &node1
&k1 key1: one
top2: &node2 # comment
key2: two
top3:
&k3 key3: three
top4:
&node4
&k4 key4: four
top5:
&node5
key5: five
top6: &val6
six
top7:
&val7 seven
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(comment)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Node and Mapping Key Anchors [1.3]
================================================================================
---
top1: &node1
&k1 key1: one
top2: &node2 # comment
key2: two
top3:
&k3 key3: three
top4: &node4
&k4 key4: four
top5: &node5
key5: five
top6: &val6
six
top7:
&val7 seven
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(comment)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Non-Specific Tags on Scalars
================================================================================
- plain
- "double quoted"
- 'single quoted'
- >
block
- plain again
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(double_quote_scalar)))
(block_sequence_item
(flow_node
(single_quote_scalar)))
(block_sequence_item
(block_node
(block_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Plain mapping key ending with colon
================================================================================
---
key ends with two colons::: value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Plain Scalar looking like key, comment, anchor and tag
================================================================================
k:#foo
&a !t s
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar))))
================================================================================
Plain Scalar looking like key, comment, anchor and tag [1.3]
================================================================================
---
k:#foo
&a !t s
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar))))
================================================================================
Plain scalar with backslashes
================================================================================
---
plain\value\with\backslashes
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar))))
================================================================================
Plain URL in flow mapping
================================================================================
- { url: http://example.org }
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Scalar value with two anchors [INVALID]
================================================================================
top1: &node1
&k1 key1: val1
top2: &node2
&v2 val2
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)))
(ERROR
(flow_node
(anchor)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Scalars on --- line
================================================================================
--- "quoted
string"
--- &node foo
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(double_quote_scalar)))
(document
(flow_node
(anchor)
(plain_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Sequence entry that looks like two with wrong indentation
================================================================================
- single multiline
- sequence entry
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Sequence Indent
================================================================================
foo:
- 42
bar:
- 44
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar))))))))))
================================================================================
Sequence on same Line as Mapping Key [INVALID]
================================================================================
key: - a
- b
--------------------------------------------------------------------------------
(ERROR
2020-09-28 10:07:27 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Sequence With Same Indentation as Parent Mapping
================================================================================
1:
- 2
- 3
4: 5
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Simple Mapping Indent
================================================================================
foo:
bar: baz
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Single block sequence with anchor
================================================================================
&sequence
- a
--------------------------------------------------------------------------------
(stream
(document
(block_node
(anchor)
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Single block sequence with anchor and explicit document start
================================================================================
--- &sequence
- a
--------------------------------------------------------------------------------
(stream
(document
(block_node
(anchor)
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Single Entry Block Sequence
================================================================================
- foo
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Single Pair Block Mapping
================================================================================
foo: bar
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 2.1. Sequence of Scalars
================================================================================
- Mark McGwire
- Sammy Sosa
- Ken Griffey
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Spec Example 2.2. Mapping Scalars to Scalars
================================================================================
hr: 65 # Home runs
avg: 0.278 # Batting average
rbi: 147 # Runs Batted In
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(comment)
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(comment)
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(comment)))))
================================================================================
Spec Example 2.3. Mapping Scalars to Sequences
================================================================================
american:
- Boston Red Sox
- Detroit Tigers
- New York Yankees
national:
- New York Mets
- Chicago Cubs
- Atlanta Braves
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 2.4. Sequence of Mappings
================================================================================
-
name: Mark McGwire
hr: 65
avg: 0.278
-
name: Sammy Sosa
hr: 63
avg: 0.288
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 2.5. Sequence of Sequences
================================================================================
- [name , hr, avg ]
- [Mark McGwire, 65, 0.278]
- [Sammy Sosa , 63, 0.288]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))
(block_sequence_item
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))
(block_sequence_item
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))))))
================================================================================
Spec Example 2.6. Mapping of Mappings
================================================================================
Mark McGwire: {hr: 65, avg: 0.278}
Sammy Sosa: {
hr: 63,
avg: 0.288
}
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 2.7. Two Documents in a Stream
================================================================================
# Ranking of 1998 home runs
---
- Mark McGwire
- Sammy Sosa
- Ken Griffey
# Team ranking
---
- Chicago Cubs
- St Louis Cardinals
--------------------------------------------------------------------------------
(stream
(comment)
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(comment))))
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Spec Example 2.8. Play by Play Feed from a Game
================================================================================
---
time: 20:03:20
player: Sammy Sosa
action: strike (miss)
...
---
time: 20:03:47
player: Sammy Sosa
action: grand slam
...
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 2.9. Single Document with Two Comments
================================================================================
---
hr: # 1998 hr ranking
- Mark McGwire
- Sammy Sosa
rbi:
# 1998 rbi ranking
- Sammy Sosa
- Ken Griffey
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
(comment)
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
(comment)
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 2.10. Node for “Sammy Sosa” appears twice in this document
================================================================================
---
hr:
- Mark McGwire
# Following node labeled SS
- &SS Sammy Sosa
rbi:
- *SS # Subsequent occurrence
- Ken Griffey
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(comment)
(block_sequence_item
(flow_node
(anchor)
(plain_scalar))))))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(alias)))
(comment)
(block_sequence_item
(flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 2.11. Mapping between Sequences
================================================================================
? - Detroit Tigers
- Chicago cubs
:
- 2001-07-23
? [ New York Yankees,
Atlanta Braves ]
: [ 2001-07-02, 2001-08-12,
2001-08-14 ]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))))
value: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))))))
================================================================================
Spec Example 2.12. Compact Nested Mapping
================================================================================
---
# Products purchased
- item : Super Hoop
quantity: 1
- item : Basketball
quantity: 4
- item : Big Shoes
quantity: 1
--------------------------------------------------------------------------------
(stream
(document
(comment)
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 2.13. In literals, newlines are preserved
================================================================================
# ASCII Art
--- |
\//||\/||
// || ||__
--------------------------------------------------------------------------------
(stream
(comment)
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 2.14. In the folded scalars, newlines become spaces
================================================================================
--- >
Mark McGwire's
year was crippled
by a knee injury.
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 2.15. Folded newlines are preserved for "more indented" and blank lines
================================================================================
>
Sammy Sosa completed another
fine season with great stats.
63 Home Runs
0.288 Batting Average
What a year!
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 2.16. Indentation determines scope
================================================================================
name: Mark McGwire
accomplishment: >
Mark set a major league
home run record in 1998.
stats: |
65 Home Runs
0.278 Batting Average
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Spec Example 2.17. Quoted Scalars
================================================================================
unicode: "Sosa did fine.\u263A"
control: "\b1998\t1999\t2000\n"
hex esc: "\x0d\x0a is \r\n"
single: '"Howdy!" he cried.'
quoted: ' # Not a ''comment''.'
tie-fighter: '|\-*-/|'
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar
(escape_sequence))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar
(escape_sequence)
(escape_sequence)
(escape_sequence)
(escape_sequence))))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar
(escape_sequence)
(escape_sequence)
(escape_sequence)
(escape_sequence))))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(single_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(single_quote_scalar
(escape_sequence)
(escape_sequence))))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(single_quote_scalar)))))))
================================================================================
Spec Example 2.18. Multi-line Flow Scalars
================================================================================
plain:
This unquoted scalar
spans many lines.
quoted: "So does this
quoted scalar.\n"
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar
(escape_sequence))))))))
================================================================================
Spec Example 2.23. Various Explicit Tags
================================================================================
---
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.
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(tag)
(block_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(tag)
(block_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 2.24. Global Tags
================================================================================
%TAG ! tag:clarkevans.com,2002:
--- !shape
# Use the ! handle for presenting
# tag:clarkevans.com,2002:circle
- !circle
center: &ORIGIN {x: 73, y: 129}
radius: 7
- !line
start: *ORIGIN
finish: { x: 89, y: 102 }
- !label
start: *ORIGIN
color: 0xFFEEBB
text: Pretty vector drawing.
--------------------------------------------------------------------------------
(stream
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(block_node
(tag)
(comment)
(comment)
(block_sequence
(block_sequence_item
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(alias)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))))
(block_sequence_item
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(alias)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 2.25. Unordered Sets
================================================================================
# Sets are represented as a
# Mapping where each key is
# associated with a null value
--- !!set
? Mark McGwire
? Sammy Sosa
? Ken Griff
--------------------------------------------------------------------------------
(stream
(comment)
(comment)
(comment)
(document
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 2.26. Ordered Mappings
================================================================================
# Ordered maps are represented as
# A sequence of mappings, with
# each mapping having one key
--- !!omap
- Mark McGwire: 65
- Sammy Sosa: 63
- Ken Griffy: 58
--------------------------------------------------------------------------------
(stream
(comment)
(comment)
(comment)
(document
(block_node
(tag)
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 2.27. Invoice
================================================================================
--- !<tag:clarkevans.com,2002:invoice>
invoice: 34843
date : 2001-01-23
bill-to: &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.
--------------------------------------------------------------------------------
(stream
(document
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(alias)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 2.28. Log File
================================================================================
---
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
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))))))))
================================================================================
Spec Example 5.3. Block Structure Indicators
================================================================================
sequence:
- one
- two
mapping:
? sky
: blue
sea : green
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 5.4. Flow Collection Indicators
================================================================================
sequence: [ one, two, ]
mapping: { sky: blue, sea: green }
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 5.5. Comment Indicator
================================================================================
# Comment only.
--------------------------------------------------------------------------------
(stream
(comment))
================================================================================
Spec Example 5.6. Node Property Indicators
================================================================================
anchored: !local &anchor value
alias: *anchor
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(tag)
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(alias)))))))
================================================================================
Spec Example 5.7. Block Scalar Indicators
================================================================================
literal: |
some
text
folded: >
some
text
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Spec Example 5.8. Quoted Scalar Indicators
================================================================================
single: 'text'
double: "text"
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(single_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))))))
================================================================================
Spec Example 5.9. Directive Indicator
================================================================================
%YAML 1.2
--- text
--------------------------------------------------------------------------------
(stream
(document
(yaml_directive
(yaml_version))
(flow_node
(plain_scalar))))
================================================================================
Spec Example 5.12. Tabs and Spaces
================================================================================
# Tabs and spaces
quoted: "Quoted "
block: |
void main() {
printf("Hello, world!\n");
}
--------------------------------------------------------------------------------
(stream
(comment)
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Spec Example 6.1. Indentation Spaces
================================================================================
# Leading comment line spaces are
# neither content nor indentation.
Not indented:
By one space: |
By four
spaces
Flow style: [ # Leading spaces
By two, # in flow style
Also by two, # are neither
Still by two # content nor
] # indentation.
--------------------------------------------------------------------------------
(stream
(comment)
(comment)
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(comment)
(flow_node
(plain_scalar))
(comment)
(flow_node
(plain_scalar))
(comment)
(flow_node
(plain_scalar))
(comment))))
(comment))))))))
================================================================================
Spec Example 6.2. Indentation Indicators
================================================================================
? a
: - b
- - c
- d
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))))))))))))
================================================================================
Spec Example 6.3. Separation Spaces
================================================================================
- foo: bar
- - baz
- baz
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 6.4. Line Prefixes
================================================================================
plain: text
lines
quoted: "text
lines"
block: |
text
lines
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Spec Example 6.5. Empty Lines
================================================================================
Folding:
"Empty line
as a line feed"
Chomping: |
Clipped empty lines
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Spec Example 6.5. Empty Lines [1.3]
================================================================================
Folding:
"Empty line
as a line feed"
Chomping: |
Clipped empty lines
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Spec Example 6.6. Line Folding
================================================================================
>-
trimmed
as
space
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 6.6. Line Folding [1.3]
================================================================================
--- >-
trimmed
as
space
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 6.7. Block Folding
================================================================================
>
foo
bar
baz
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 6.8. Flow Folding
================================================================================
"
foo
bar
baz
"
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(double_quote_scalar))))
================================================================================
Spec Example 6.8. Flow Folding [1.3]
================================================================================
---
"
foo
bar
baz
"
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(double_quote_scalar))))
================================================================================
Spec Example 6.9. Separated Comment
================================================================================
key: # Comment
value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
(comment)
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 6.10. Comment Lines
================================================================================
# Comment
--------------------------------------------------------------------------------
(stream
(comment))
================================================================================
Spec Example 6.11. Multi-Line Comments
================================================================================
key: # Comment
# lines
value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
(comment)
(comment)
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 6.12. Separation Spaces
================================================================================
{ first: Sammy, last: Sosa }:
# Statistics:
hr: # Home runs
65
avg: # Average
0.278
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))
(comment)
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
(comment)
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
(comment)
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 6.13. Reserved Directives
================================================================================
%FOO bar baz # Should be ignored
# with a warning.
--- "foo"
--------------------------------------------------------------------------------
(stream
(document
(reserved_directive
(directive_name)
(directive_parameter)
(directive_parameter))
2019-08-31 07:14:13 -04:00
(comment)
(comment)
(flow_node
(double_quote_scalar))))
================================================================================
Spec Example 6.13. Reserved Directives [1.3]
================================================================================
%FOO bar baz # Should be ignored
# with a warning.
---
"foo"
--------------------------------------------------------------------------------
(stream
(document
(reserved_directive
(directive_name)
(directive_parameter)
(directive_parameter))
2019-08-31 07:14:13 -04:00
(comment)
(comment)
(flow_node
(double_quote_scalar))))
================================================================================
Spec Example 6.14. “YAML” directive
================================================================================
%YAML 1.3 # Attempt parsing
# with a warning
---
"foo"
--------------------------------------------------------------------------------
(stream
(document
(yaml_directive
(yaml_version))
(comment)
(comment)
(flow_node
(double_quote_scalar))))
================================================================================
Spec Example 6.16. “TAG” directive
================================================================================
%TAG !yaml! tag:yaml.org,2002:
---
!yaml!str "foo"
--------------------------------------------------------------------------------
(stream
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(flow_node
(tag)
(double_quote_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 6.18. Primary Tag Handle
================================================================================
# Private
!foo "bar"
...
# Global
%TAG ! tag:example.com,2000:app/
---
!foo "bar"
--------------------------------------------------------------------------------
(stream
(comment)
(document
(flow_node
(tag)
(double_quote_scalar)))
2019-08-31 07:14:13 -04:00
(comment)
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(flow_node
(tag)
(double_quote_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 6.18. Primary Tag Handle [1.3]
================================================================================
# Private
---
!foo "bar"
...
# Global
%TAG ! tag:example.com,2000:app/
---
!foo "bar"
--------------------------------------------------------------------------------
(stream
(comment)
(document
(flow_node
(tag)
(double_quote_scalar)))
2019-08-31 07:14:13 -04:00
(comment)
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(flow_node
(tag)
(double_quote_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 6.19. Secondary Tag Handle
================================================================================
%TAG !! tag:example.com,2000:app/
---
!!int 1 - 3 # Interval, not integer
--------------------------------------------------------------------------------
(stream
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(comment))
================================================================================
Spec Example 6.20. Tag Handles
================================================================================
%TAG !e! tag:example.com,2000:app/
---
!e!foo "bar"
--------------------------------------------------------------------------------
(stream
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(flow_node
(tag)
(double_quote_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 6.21. Local Tag Prefix
================================================================================
%TAG !m! !my-
--- # Bulb here
!m!light fluorescent
...
%TAG !m! !my-
--- # Color here
!m!light green
--------------------------------------------------------------------------------
(stream
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(comment)
(flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(comment)
(flow_node
(tag)
(plain_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 6.22. Global Tag Prefix
================================================================================
%TAG !e! tag:example.com,2000:app/
---
- !e!foo "bar"
--------------------------------------------------------------------------------
(stream
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(block_node
(block_sequence
(block_sequence_item
(flow_node
(tag)
(double_quote_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 6.23. Node Properties
================================================================================
!!str &a1 "foo":
!!str bar
&a2 baz : *a1
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(tag)
(anchor)
(double_quote_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(alias)))))))
================================================================================
Spec Example 6.24. Verbatim Tags
================================================================================
!<tag:yaml.org,2002:str> foo :
!<!bar> baz
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(tag)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(tag)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 6.26. Tag Shorthands
================================================================================
%TAG !e! tag:example.com,2000:app/
---
- !local foo
- !!str bar
- !e!tag%21 baz
--------------------------------------------------------------------------------
(stream
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(block_node
(block_sequence
(block_sequence_item
(flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(tag)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 6.28. Non-Specific Tags
================================================================================
# Assuming conventional resolution:
- "12"
- 12
- ! 12
--------------------------------------------------------------------------------
(stream
(comment)
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(double_quote_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(tag)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 6.29. Node Anchors
================================================================================
First occurrence: &anchor Value
Second occurrence: *anchor
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(alias)))))))
================================================================================
Spec Example 7.1. Alias Nodes
================================================================================
First occurrence: &anchor Foo
Second occurrence: *anchor
Override anchor: &anchor Bar
Reuse anchor: *anchor
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(alias)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(alias)))))))
================================================================================
Spec Example 7.2. Empty Content
================================================================================
{
foo : !!str,
!!str : bar,
}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(tag)))
(flow_pair
key: (flow_node
(tag))
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 7.3. Completely Empty Flow Nodes
================================================================================
{
? foo :,
: bar,
}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar)))
(flow_pair
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 7.4. Double Quoted Implicit Keys
================================================================================
"implicit block key" : [
"implicit flow key" : value,
]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(flow_sequence
(flow_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 7.5. Double Quoted Line Breaks
================================================================================
"folded
to a space,
to a line feed, or \
\ non-content"
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(double_quote_scalar
(escape_sequence)
(escape_sequence)))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 7.5. Double Quoted Line Breaks [1.3]
================================================================================
---
"folded
to a space,
to a line feed, or \
\ non-content"
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(double_quote_scalar
(escape_sequence)
(escape_sequence)))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 7.6. Double Quoted Lines
================================================================================
" 1st non-empty
2nd non-empty
3rd non-empty "
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(double_quote_scalar))))
================================================================================
Spec Example 7.6. Double Quoted Lines [1.3]
================================================================================
---
" 1st non-empty
2nd non-empty
3rd non-empty "
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(double_quote_scalar))))
================================================================================
Spec Example 7.7. Single Quoted Characters
================================================================================
'here''s to "quotes"'
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(single_quote_scalar
(escape_sequence)))))
================================================================================
Spec Example 7.7. Single Quoted Characters [1.3]
================================================================================
---
'here''s to "quotes"'
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(single_quote_scalar
(escape_sequence)))))
================================================================================
Spec Example 7.8. Single Quoted Implicit Keys
================================================================================
'implicit block key' : [
'implicit flow key' : value,
]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(single_quote_scalar))
value: (flow_node
(flow_sequence
(flow_pair
key: (flow_node
(single_quote_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 7.9. Single Quoted Lines
================================================================================
' 1st non-empty
2nd non-empty
3rd non-empty '
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(single_quote_scalar))))
================================================================================
Spec Example 7.9. Single Quoted Lines [1.3]
================================================================================
---
' 1st non-empty
2nd non-empty
3rd non-empty '
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(single_quote_scalar))))
================================================================================
Spec Example 7.10. Plain Characters
================================================================================
# Outside flow collection:
- ::vector
- ": - ()"
- Up, up, and away!
- -123
- http://example.com/foo#bar
# Inside flow collection:
- [ ::vector,
": - ()",
"Up, up and away!",
-123,
http://example.com/foo#bar ]
--------------------------------------------------------------------------------
(stream
(comment)
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(double_quote_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))
(comment)
(block_sequence_item
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(double_quote_scalar))
(flow_node
(double_quote_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))))))
================================================================================
Spec Example 7.11. Plain Implicit Keys
================================================================================
implicit block key : [
implicit flow key : value,
]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(flow_sequence
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 7.12. Plain Lines
================================================================================
1st non-empty
2nd non-empty
3rd non-empty
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar))))
================================================================================
Spec Example 7.13. Flow Sequence
================================================================================
- [ one, two, ]
- [three ,four]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))
(block_sequence_item
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))))))
================================================================================
Spec Example 7.14. Flow Sequence Entries
================================================================================
[
"double
quoted", 'single
quoted',
plain
text, [ nested ],
single: pair,
]
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_sequence
(flow_node
(double_quote_scalar))
(flow_node
(single_quote_scalar))
(flow_node
(plain_scalar))
(flow_node
(flow_sequence
(flow_node
(plain_scalar))))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 7.15. Flow Mappings
================================================================================
- { one : two , three: four , }
- {five: six,seven : eight}
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 7.16. Flow Mapping Entries
================================================================================
{
? explicit: entry,
implicit: entry,
?
}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair)))))
================================================================================
Spec Example 7.17. Flow Mapping Separate Values
================================================================================
{
unquoted : "separate",
http://foo.com,
omitted value:,
: omitted key,
}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(flow_node
(plain_scalar))
(flow_pair
key: (flow_node
(plain_scalar)))
(flow_pair
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 7.18. Flow Mapping Adjacent Values
================================================================================
{
"adjacent":value,
"readable": value,
"empty":
}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(double_quote_scalar)))))))
================================================================================
Spec Example 7.19. Single Pair Flow Mappings
================================================================================
[
foo: bar
]
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_sequence
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 7.20. Single Pair Explicit Entry
================================================================================
[
? foo
bar : baz
]
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_sequence
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 7.21. Single Pair Implicit Entries
================================================================================
- [ YAML : separate ]
- [ : empty key entry ]
- [ {JSON: like}:adjacent ]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_sequence
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(flow_sequence
(flow_pair
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(flow_sequence
(flow_pair
key: (flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 7.21. Single Pair Implicit Entries [1.3
================================================================================
- [ YAML : separate ]
- [ : empty key entry ]
- [ "JSON like":adjacent ]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_sequence
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(flow_sequence
(flow_pair
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(flow_sequence
(flow_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 7.23. Flow Content
================================================================================
- [ a, b ]
- { a: b }
- "a"
- 'b'
- c
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))
(block_sequence_item
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(flow_node
(double_quote_scalar)))
(block_sequence_item
(flow_node
(single_quote_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Spec Example 7.24. Flow Nodes
================================================================================
- !!str "a"
- 'b'
- &anchor "c"
- *anchor
- !!str
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(tag)
(double_quote_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(single_quote_scalar)))
(block_sequence_item
(flow_node
(anchor)
(double_quote_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(alias)))
(block_sequence_item
(flow_node
(tag)))))))
================================================================================
Spec Example 8.1. Block Scalar Header
================================================================================
- | # Empty header↓
literal
- >1 # Indentation indicator↓
folded
- |+ # Chomping indicator↓
keep
- >1- # Both indicators↓
strip
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_scalar
(comment))))
(block_sequence_item
(block_node
(block_scalar
(comment))))
(block_sequence_item
(block_node
(block_scalar
(comment))))
(block_sequence_item
(block_node
(block_scalar
(comment))))))))
================================================================================
Spec Example 8.2. Block Indentation Indicator
================================================================================
- |
detected
- >
# detected
- |1
explicit
- >
detected
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_scalar)))
(block_sequence_item
(block_node
(block_scalar)))
(block_sequence_item
(block_node
(block_scalar)))
(block_sequence_item
(block_node
(block_scalar)))))))
================================================================================
Spec Example 8.2. Block Indentation Indicator [1.3]
================================================================================
- |
detected
- >
# detected
- |1
explicit
- >
detected
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_scalar)))
(block_sequence_item
(block_node
(block_scalar)))
(block_sequence_item
(block_node
(block_scalar)))
(block_sequence_item
(block_node
(block_scalar)))))))
================================================================================
Spec Example 8.4. Chomping Final Line Break
================================================================================
strip: |-
text
clip: |
text
keep: |+
text
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Spec Example 8.5. Chomping Trailing Lines
================================================================================
# Strip
# Comments:
strip: |-
# text
# Clip
# comments:
clip: |
# text
# Keep
# comments:
keep: |+
# text
# Trail
# comments.
--------------------------------------------------------------------------------
(stream
(comment)
(comment)
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(comment)
(comment)
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(comment)
(comment)
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(comment)
(comment)))))
================================================================================
Spec Example 8.6. Empty Scalar Chomping
================================================================================
strip: >-
clip: >
keep: |+
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))))))
================================================================================
Spec Example 8.7. Literal Scalar
================================================================================
|
literal
text
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 8.7. Literal Scalar [1.3]
================================================================================
--- |
literal
text
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 8.8. Literal Content
================================================================================
|
literal
text
# Comment
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar)))
(comment))
================================================================================
Spec Example 8.8. Literal Content [1.3]
================================================================================
--- |
literal
text
# Comment
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar)))
(comment))
================================================================================
Spec Example 8.9. Folded Scalar
================================================================================
>
folded
text
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 8.9. Folded Scalar [1.3]
================================================================================
--- >
folded
text
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 8.10. Folded Lines - 8.13. Final Empty Lines
================================================================================
>
folded
line
next
line
* bullet
* list
* lines
last
line
# Comment
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar)))
(comment))
================================================================================
Spec Example 8.14. Block Sequence
================================================================================
block sequence:
- one
- two : three
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))))))))
================================================================================
Spec Example 8.15. Block Sequence Entry Types
================================================================================
- # Empty
- |
block node
- - one # Compact
- two # sequence
- one: two # Compact mapping
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item)
(comment)
(block_sequence_item
(block_node
(block_scalar)))
(block_sequence_item
(block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(comment)
(block_sequence_item
(flow_node
(plain_scalar)))
(comment))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(comment))))))))
================================================================================
Spec Example 8.16. Block Mappings
================================================================================
block mapping:
key: value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 8.17. Explicit Block Mapping Entries
================================================================================
? explicit key # Empty value
? |
block key
: - one # Explicit compact
- two # block value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(comment)
(block_mapping_pair
key: (block_node
(block_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(comment)
(block_sequence_item
(flow_node
(plain_scalar)))
(comment))))))))
================================================================================
Spec Example 8.18. Implicit Block Mapping Entries
================================================================================
plain key: in-line value
: # Both empty
"quoted key":
- entry
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair)
(comment)
(block_mapping_pair
key: (flow_node
(double_quote_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 8.19. Compact Block Mappings
================================================================================
- sun: yellow
- ? earth: blue
: moon: white
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))))))))
================================================================================
Spec Example 8.20. Block Node Types
================================================================================
-
"flow in block"
- >
Block scalar
- !!map # Block collection
foo : bar
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(double_quote_scalar)))
(block_sequence_item
(block_node
(block_scalar)))
(block_sequence_item
(block_node
(tag)
(comment)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 8.21. Block Scalar Nodes
================================================================================
literal: |2
value
folded:
!foo
>1
value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(tag)
(block_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 8.21. Block Scalar Nodes [1.3]
================================================================================
literal: |2
value
folded: !foo >1
value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(tag)
(block_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Spec Example 8.22. Block Collection Nodes
================================================================================
sequence: !!seq
- entry
- !!seq
- nested
mapping: !!map
foo: bar
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(tag)
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(block_node
(tag)
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))))))
================================================================================
Spec Example 9.2. Document Markers
================================================================================
%YAML 1.2
---
Document
... # Suffix
--------------------------------------------------------------------------------
(stream
(document
(yaml_directive
(yaml_version))
(flow_node
(plain_scalar)))
(comment))
================================================================================
Spec Example 9.3. Bare Documents
================================================================================
Bare
document
...
# No document
...
|
%!PS-Adobe-2.0 # Not the first line
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar)))
(comment)
(document)
(document
(block_node
(block_scalar))))
================================================================================
Spec Example 9.4. Explicit Documents
================================================================================
---
{ matches
% : 20 }
...
---
# Empty
...
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(document
(comment)))
================================================================================
Spec Example 9.5. Directives Documents
================================================================================
%YAML 1.2
--- |
%!PS-Adobe-2.0
...
%YAML 1.2
---
# Empty
...
--------------------------------------------------------------------------------
(stream
(document
(yaml_directive
(yaml_version))
(block_node
(block_scalar)))
(document
(yaml_directive
(yaml_version))
(comment)))
================================================================================
Spec Example 9.6. Stream
================================================================================
Document
---
# Empty
...
%YAML 1.2
---
matches %: 20
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar)))
(document
(comment))
(document
(yaml_directive
(yaml_version))
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Spec Example 9.6. Stream [1.3]
================================================================================
Mapping: Document
---
# Empty
...
%YAML 1.2
---
matches %: 20
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(document
(comment))
(document
(yaml_directive
(yaml_version))
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Tab after document header
================================================================================
--- scalar
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar))))
================================================================================
Tab at beginning of line followed by a flow mapping
================================================================================
{}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(flow_mapping))))
================================================================================
Tag shorthand used in documents but only defined in the first
================================================================================
%TAG !prefix! tag:example.com,2011:
--- !prefix!A
a: b
--- !prefix!B
c: d
--- !prefix!C
e: f
--------------------------------------------------------------------------------
(stream
(document
(tag_directive
(tag_handle)
(tag_prefix))
2019-08-31 07:14:13 -04:00
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(document
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(document
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))
================================================================================
Tags for Block Objects
================================================================================
foo: !!seq
- !!str a
- !!map
key: !!str value
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(tag)
(block_sequence
(block_sequence_item
(flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(tag)
(plain_scalar)))))))))))))
2019-08-31 07:14:13 -04:00
================================================================================
Tags for Flow Objects
================================================================================
!!map {
k: !!seq
[ a, !!str b]
}
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(tag)
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(tag)
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(tag)
(plain_scalar)))))))))
2019-08-31 07:14:13 -04:00
================================================================================
Tags for Root Objects
================================================================================
--- !!map
? a
: b
--- !!seq
- !!str c
--- !!str
d
e
--------------------------------------------------------------------------------
(stream
(document
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))))
(document
(block_node
(tag)
(block_sequence
(block_sequence_item
(flow_node
(tag)
(plain_scalar))))))
2019-08-31 07:14:13 -04:00
(document
(flow_node
(tag)
(plain_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Tags in Block Sequence
================================================================================
- !!str a
- b
- !!int 42
- d
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_sequence_item
(flow_node
(plain_scalar)))))))
================================================================================
Tags in Explicit Mapping
================================================================================
? !!str a
: !!int 47
? c
: !!str d
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(tag)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(tag)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Tags in Implicit Mapping
================================================================================
!!str a: b
c: !!int 42
e: !!str f
g: h
!!int 23: !!bool false
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(tag)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(tag)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(tag)
(plain_scalar)))))))
2019-08-31 07:14:13 -04:00
================================================================================
Tags on Empty Scalars
================================================================================
- !!str
-
!!null : a
b: !!str
- !!str : !!null
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(tag)))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(tag))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(tag))))))
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(tag))
value: (flow_node
(tag))))))))))
================================================================================
Three dashes and content without space
================================================================================
---word1
word2
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar))))
================================================================================
Three dashes and content without space [1.3]
================================================================================
---
---word1
word2
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(plain_scalar))))
================================================================================
Trailing comment in multiline plain scalar [INVALID]
================================================================================
---
plain: a
b # end of scalar
c
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(comment)
(ERROR)))))
================================================================================
Trailing content after quoted value [INVALID]
================================================================================
key1: "quoted1"
key2: "quoted2" trailing content
key3: "quoted3"
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar))))
================================================================================
Trailing content that looks like a mapping [INVALID]
================================================================================
key1: "quoted1"
key2: "quoted2" no key: nor value
key3: "quoted3"
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar))))
================================================================================
Two document start markers
================================================================================
---
---
--------------------------------------------------------------------------------
(stream
(document)
(document))
2019-08-31 07:14:13 -04:00
================================================================================
Various combinations of explicit block mappings
================================================================================
complex1:
? - a
complex2:
? - a
: b
complex3:
? - a
: >
b
complex4:
? >
a
:
complex5:
? - a
: - b
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))
value: (block_node
(block_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (block_node
(block_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))))))))))
================================================================================
Various combinations of tags and anchors
================================================================================
---
&a1
!!str
scalar1
---
!!str
&a2
scalar2
---
&a3
!!str scalar3
---
&a4 !!map
&a5 !!str key5: value4
---
a6: 1
&anchor6 b6: 2
---
!!map
&a8 !!str key8: value7
---
!!map
!!str &a10 key10: value9
---
!!str &a11
value11
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(anchor)
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(document
(flow_node
(tag)
(anchor)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(document
(flow_node
(anchor)
(tag)
(plain_scalar)))
2019-08-31 07:14:13 -04:00
(document
(block_node
(anchor)
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(tag)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(document
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(tag)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(document
(block_node
(tag)
(block_mapping
(block_mapping_pair
key: (flow_node
(tag)
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))
(document
(flow_node
(tag)
(anchor)
(plain_scalar))))
2019-08-31 07:14:13 -04:00
================================================================================
Various empty or newline only quoted strings
================================================================================
---
a: '
'
b: '
'
c: "
"
d: "
"
e: '
'
f: "
"
g: '
'
h: "
"
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(single_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(single_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(single_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(single_quote_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))))))
================================================================================
Various location of anchors in flow sequence
================================================================================
&flowseq [
a: b,
&c c: d,
{ &e e: f },
&g { g: h }
]
--------------------------------------------------------------------------------
(stream
(document
(flow_node
(anchor)
(flow_sequence
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar)))
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(anchor)
(plain_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar)))))
(flow_node
(anchor)
(flow_mapping
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))))
================================================================================
Various Trailing Comments
================================================================================
a: "double
quotes" # lala
b: plain
value # lala
c : #lala
d
? # lala
- seq1
: # lala
- #lala
seq2
e:
&node # lala
- x: y
block: > # lala
abcde
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(comment)
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(comment)
(block_mapping_pair
key: (flow_node
(plain_scalar))
(comment)
value: (flow_node
(plain_scalar)))
(block_mapping_pair
(comment)
key: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))
(comment)
value: (block_node
(block_sequence
(block_sequence_item
(comment)
(flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(comment)
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar
(comment))))))))
================================================================================
Various Trailing Comments [1.3]
================================================================================
a: "double
quotes" # lala
b: plain
value # lala
c : #lala
d
? # lala
- seq1
: # lala
- #lala
seq2
e: &node # lala
- x: y
block: > # lala
abcde
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar)))
(comment)
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(comment)
(block_mapping_pair
key: (flow_node
(plain_scalar))
(comment)
value: (flow_node
(plain_scalar)))
(block_mapping_pair
(comment)
key: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))))
(comment)
value: (block_node
(block_sequence
(block_sequence_item
(comment)
(flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(comment)
(block_sequence
(block_sequence_item
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_scalar
(comment))))))))
================================================================================
Various trailing tabs
================================================================================
a: b
seq:
- a
c: d #X
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(comment)))))
================================================================================
Whitespace After Scalars in Flow
================================================================================
- [a, b , c ]
- { "a" : b
, c : 'd' ,
e : "f"
}
- [ ]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_sequence
(block_sequence_item
(flow_node
(flow_sequence
(flow_node
(plain_scalar))
(flow_node
(plain_scalar))
(flow_node
(plain_scalar)))))
(block_sequence_item
(flow_node
(flow_mapping
(flow_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(plain_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(single_quote_scalar)))
(flow_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(double_quote_scalar))))))
(block_sequence_item
(flow_node
(flow_sequence)))))))
================================================================================
Whitespace around colon in mappings
================================================================================
"top1" :
"key1" : &alias1 scalar1
'top2' :
'key2' : &alias2 scalar2
top3: &node3
*alias1 : scalar3
top4:
*alias2 : scalar4
top5 :
scalar5
top6:
&anchor6 'key6' : scalar6
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(double_quote_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(double_quote_scalar))
value: (flow_node
(anchor)
(plain_scalar))))))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(single_quote_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(single_quote_scalar))
value: (flow_node
(anchor)
(plain_scalar))))))
2019-08-31 07:14:13 -04:00
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(anchor)
(block_mapping
(block_mapping_pair
key: (flow_node
(alias))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(alias))
value: (flow_node
(plain_scalar))))))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar)))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(anchor)
(single_quote_scalar))
2019-08-31 07:14:13 -04:00
value: (flow_node
(plain_scalar))))))))))
================================================================================
Wrong indendation in Map [INVALID]
================================================================================
key:
ok: 1
wrong: 2
--------------------------------------------------------------------------------
(ERROR
(flow_node
(plain_scalar))
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))
================================================================================
Wrong indendation in mapping [INVALID]
================================================================================
k1: v1
k2: v2
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))
================================================================================
Wrong indendation in Sequence [INVALID]
================================================================================
key:
- ok
- also ok
- wrong
--------------------------------------------------------------------------------
(ERROR
(flow_node
(plain_scalar))
(block_sequence_item
(flow_node
(plain_scalar)))
(flow_node
(plain_scalar)))
================================================================================
Wrong indented flow sequence [INVALID]
================================================================================
---
flow: [a,
b,
c]
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(ERROR
(flow_node
(plain_scalar))
(plain_scalar)
(plain_scalar))))))
================================================================================
Wrong indented multiline quoted scalar [INVALID]
================================================================================
---
quoted: "a
b
c"
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (flow_node
(plain_scalar)))
(ERROR
2020-09-28 10:07:27 -04:00
(plain_scalar)
(plain_scalar))))))
2019-08-31 07:14:13 -04:00
================================================================================
Wrong indented sequence item [INVALID]
================================================================================
- key: value
- item1
--------------------------------------------------------------------------------
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))
================================================================================
YAML directive without document end marker [INVALID]
================================================================================
---
key: value
%YAML 1.2
---
--------------------------------------------------------------------------------
(stream
(ERROR
(block_mapping_pair
key: (flow_node
(plain_scalar))
value: (flow_node
(plain_scalar))))
(document
(yaml_directive
(yaml_version))))
================================================================================
Zero indented block scalar
================================================================================
--- >
line1
line2
line3
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Zero indented block scalar with line that looks like a comment
================================================================================
--- >
line1
# no comment
line3
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_scalar))))
================================================================================
Zero-indented sequences in explicit mapping keys
================================================================================
---
?
- a
- b
:
- c
- d
--------------------------------------------------------------------------------
(stream
(document
(block_node
(block_mapping
(block_mapping_pair
key: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar)))))
value: (block_node
(block_sequence
(block_sequence_item
(flow_node
(plain_scalar)))
(block_sequence_item
(flow_node
(plain_scalar))))))))))