Zuma Lifeguard Wiki
Advertisement
a sequence -- not the dash at the start:
	- Memoirs Found in a Bathtub
	- Snow Crash
	- Ghost World
"---" separates multiple documents in a single file:
	---
	- Harry Potter and the Prisoner of Azkaban
	- Harry Potter and the Goblet of Fire
	- Harry Potter and the Order of the Phoenix
	---
	- Memoirs Found in a Bathtub
	- Snow Crash
	- Ghost World
text that has a colon in it is a map with key on the left side:
	Stanislaw Lem: Memoirs Found in a Bathtub
	Neal Stephenson: Snowcrash
	Daniel Clowes: Ghost World
a sequence and a map:
	---
	- Stanislaw Lem: Memoirs Found in a Bathtub
	- Neal Stephenson: Snowcrash
	- Daniel Clowes: Ghost World
map inside a map:
---
	date: 2003-07-25
	letters to:
		"Hank Bros.: the Car Wash!": 1
		Jim O'Connor: 2
		Myself: 2
A ">" starts a folder block.  a blank line separates logical lines.  The value part of the map is only two lines:
---
	Concerning Car Washes: >

		We are sorry to have misplaced this letter.
		We were told by a reliable source that you
		were the owner of "Hank Bros.: the Car Wash!".

		Sorry.
A "|" starts a literal block.  Every physical line is a separate line.  The value part of the map is 6 liness:
	Concerning "Jim O'Connor": |

		You are receiving Jim O'Connor's mail for several reasons:
		- The nameplate on your mailbox still says his name.
		- He has told our postman that you screen his mail.
		- He is living in your ceiling.
		- He held a raygun to the postman's head.
A sequence nested inside of a dictionary:
	---
	name: Dirk Hockeybranch
	minutes spent: 
		- 1.02
		- 1.34
		- 0.7
		- 0.89
		- 0.94
The same as above, but using an inline sequence (must have a space after ','):
	---
	name: Dirk Hockeybranch
	minutes spent: [1.02, 1.34, 0.7, 0.89, 0.94]
An example of an inline map:
	---
	minutes spent: {one: 1.02, two: 1.34, three: 0.7,
		four: 0.89, five: 0.94}
Sequence within a sequence:
	---
	-
		- Golden Red Apple
		- Granny Smith Apple
		- Red Rome Apple
	- Peach
	- Plum
A folded block in a sequence:
	---
	- More about "Jim O'Connor"
	- >
		Your patience in dealing with Jim has been
		much appreciated. As a token of our gratitude
		please accept this gift.
A literal block in a sequence:
	---
	- RE: More about "Jim O'Connor"
	- |
		I thank you for your wonderful gift of a towel.
		It dries quickly, and it is as soft as down.
Keep (+) and chomp (-) operators are used to with literal or foloded blocks to say what to do with extra spaces and new lines:
	---
	normal: |
		This has one newline.

	kept: |+
		This has three newlines.

	chomped: |-
		This has no newlines.

	...
	---
	normal: >
		This has one newline.

	kept: >+
		This has three newlines.

	chomped: >-
		This has no newlines.
A merge key ('<<') can be used in a mapping to insert other mappings. If the value associated with the merge key is a mapping, each of its key/value pairs is inserted into the current mapping.
	mapping:
		name: Joe
		job: Accountant
		<<:
			age: 38
Any YAML type can be forced into a string using the explicit !str method:
	date string: !str 2001-08-01 
	number string: !str 192
Single-quoted Strings:
	all my favorite symbols: '#:!/%.)' 
	a few i hate: '&(*' 
	why do i hate them?: 'it''s very hard to explain
Double-quoted Strings:
	i know where i want my line breaks: "one here\nand another here\n"
Multi-line Quoted Strings:
	i want a long string: "so i'm going to
		let it go on and on to other lines
		until i end it with a quote."
Unquoted strings may also span multiple lines:
	- My little toe is broken in two places;
	- I'm crazy to have skied this way;
	- I'm not the craziest he's seen, since there was always the German guy
		who skied for 3 hours on a broken shin bone (just below the kneecap);
	- Nevertheless, second place is respectable, and he doesn't
		recommend going for the record;
	- He's going to put my foot in plaster for a month;
	- This would impair my skiing ability somewhat for the
		duration, as can be imagined.
You can use the tilde '~' character for a null value:
	name: Mr. Show
	hosted by: Bob and David
	date of next season: ~
You can use 'true' and 'false' for boolean values:
	Is Gus a Liar?: true
	Do I rely on Gus for Sustenance?: false
An integer or a float is a series of numbers:
	zero: 0
	simple: 12
	one-thousand: 1,000
	negative one-thousand: -1,000
	a simple float: 2.00 
	larger float: 1,000.09 
	scientific notation: 1.00009e+3
You can represent timestamps by using ISO8601 format:
	iso8601: 2001-12-14t21:59:43.10-05:00 
	space seperated: 2001-12-14 21:59:43.10 -05:00
A date can be represented by its year, month and day in ISO8601 order:
	--- 1976-07-31
If you need to refer to the same item of data twice, you can give that item an alias. The alias is a plain string, starting with an ampersand. The item may then be referred to by the alias throughout your document by using an asterisk before the name of the alias. This is called an anchor:
	- &showell Steve
	- Clark
	- Brian
	- Oren
	- *showell
An alias can be used on any item of data, including sequences, mappings, and other complex data types:
	- &hello 
		Meat: pork 
		Starch: potato 
	- banana 
	- *hello	
Multiple Document Separators in Block:
	foo: |
		---
		foo: bar
		---
		yo: baz
	bar: |
		fooness
Advertisement