diff --git a/spec/collator.html b/spec/collator.html
index 57dac1d3..c1e6d562 100644
--- a/spec/collator.html
+++ b/spec/collator.html
@@ -14,6 +14,10 @@
InitializeCollator ( _collator_, _locales_, _options_ )
The abstract operation InitializeCollator accepts the arguments _collator_ (which must be an object), _locales_, and _options_. It initializes _collator_ as a *Collator* object. The following steps are taken:
+
+ The following algorithm refers to the `type` nonterminal from UTS 35's Unicode Locale Identifier grammar.
+
+
1. Let _requestedLocales_ be ? CanonicalizeLocaleList(_locales_).
1. If _options_ is *undefined*, then
@@ -29,6 +33,10 @@ InitializeCollator ( _collator_, _locales_, _options_ )
1. Let _opt_ be a new Record.
1. Let _matcher_ be ? GetOption(_options_, *"localeMatcher"*, *"string"*, « *"lookup"*, *"best fit"* », *"best fit"*).
1. Set _opt_.[[localeMatcher]] to _matcher_.
+ 1. Let _collation_ be ? GetOption(_options_, *"collation"*, *"string"*, *undefined*, *undefined*).
+ 1. If _collation_ is not *undefined*, then
+ 1. If _collation_ does not match the Unicode Locale Identifier `type` nonterminal, throw a *RangeError* exception.
+ 1. Set _opt_.[[co]] to _collation_.
1. Let _numeric_ be ? GetOption(_options_, *"numeric"*, *"boolean"*, *undefined*, *undefined*).
1. If _numeric_ is not *undefined*, then
1. Let _numeric_ be ! ToString(_numeric_).