# YAML test # Comment key: value another key: Another value another key: O'Brien another key: O"Brien boolean: true null_value: null single quotes: 'have ''one'' escape pattern' double quotes: "have many: \", \0, \t, \u263A, \x0d\x0a == \r\n, and more. \x" decimal: +12345 negative: -1_4 zero: 0 octal: 0o14 another octal: 014_2 hexadecimal: 0x_Ca2 float: 1.23015e+3 exponential: 12.3015e+02 fixed: 12__30.1_5 sexagesimal: 19_0:20:30.15 sexagesimal-inline: [123:45:12, 123:45:32.234_32, +12__3:23] infinity: !!float .inf not a number: !!float .NaN datetime: 2001-12-15T02:59:43.1Z date: 2002-12-14 json_map: {"key": "value", "key":value, key: value, nokey:value} json_seq: [3, 2, -.inf, "value", "key": value, "key":value, key: value, nokey:value] another key: [O'Brien, O"Brien,true,false , null] another key: {key: [+0x12a, , !!hello: bye, 1, off, {a: [{b: ''}]}]} ? !!python/tuple [5, 7] : Fifty Seven ? set2: item1: null item2: null foo: &foo <<: *base age: 10 !!seq [ !!str "Block scalar\n", !!map { ? &B1 !!str "foo" : !!str "bar", ? !!str "baz" : *B1, }, !!map { !!str "sun" : !!str "yellow", }, ] !!map { !!str "Booleans": !!seq [ !!bool "true", !!bool "false" ], !!str "Invalid": !!seq [ # Rejected by the schema True, Null, 0o7, 0x3A, +12.3, ], } --- !clarkevans.com,2002/graph/^shape - !^circle center: &ORIGIN {x: 73, y: 129} radius: 7 ? - Dog - Cat : [ 2018-08-11, 2016-01-01 ] # Literal/Folded Style --- | \//||\/|| // || ||__ --- > Mark McGwire's year was crippled by a knee injury. ? | This is a key that has multiple lines : | and this is it's literal value # Capture the indentation of the Key. The "-" and "?" operators # are considered as part of the indentation: key1: key2: !!hello | literal: " text" # [ ] # literal { } key3: |+ literal: 'text' no-literal: " text" #comment ? key: |- literal: "text" no-literal: "text" - item1 - item2: - - - key: >- "literal text" # [ ] 'literal block' no-literal: 12 ? - - - - ? key: | literal: [ ] no-literal: [ ] - # bla bla a: # comment !str - value # new value a: # ds !str text - text # - is a text a: # ds !str text - text - value # new value (desindented) # This implementation only supports 4 dashes at most. - - - - abc - cde # = "abc - cde" - - - - - abc - cde # mistakenly detected as new indent [key]: text: text # Capture the indentation of the literal/folded operator: |- literal: "text" | # comment # no comment # comment !!binary | R0lGODlhDAAMAIQAAP//9/X 17unp5WZmZgAAAOfn515eXv Pz7Y6OjuDg4J+fn5OTk6enp 56enmleECcgggoBADs= key1: key2: | literal: "text" key3: !!str | literal: "text" #literal # Capture the indentation of the operators "-" or "?": ? - - - !!hello |+ literal: "sdfsd" # [ ] no-literal: "sdfsd" # [ ] - - - - >- literal: "text" #literal no-literal: "text" # This implementation of literal blocks has a limitation: # it only supports 4 dashes at most for indent detection. - - - - - - - key: | literal? "dfsf" # Only comments after spaces & strings in multiline attributes (bug #407060) reg_list: - reg: ?#XPath //div[@class="product_item cf"][@id] ))(?sx) id="product(?P<code>[^"]+)" .+?<h4><a\s+[^>]+>(?P<title>[^<]+)</a></h4>