@@ -219,35 +219,30 @@ implementations.
219
219
220
220
## Data Collections
221
221
222
- A data collection is a finite, iterable aggregation of elements whose iteration
223
- order is not necessarily stable. This specification describes the semantic
224
- properties of data collections using types like "list", "set" and "map". These
225
- describe observable data collections, such as the result of applying a grammar
226
- and the inputs and outputs of algorithms. They also describe unobservable data
227
- collections such as temporary data internal to an algorithm. Each data
228
- collection type defines the operations available, and whether values are unique
229
- or ordered.
222
+ Algorithms within this specification refer to specific data collection types.
223
+ Temporary data internal to an algorithm serves to best describe expected
224
+ behavior. Data observed from a service adhering to this specification must
225
+ behave according to the uniqueness and iteration order expectations of those
226
+ data types.
230
227
231
228
** List**
232
229
233
- :: The term _ list_ describes a sequence of zero or more values, which may
234
- contain duplicates. Currently, all lists in this specification are ordered, but
235
- for clarity the term "ordered list" may be used when an order is semantically
236
- important.
230
+ :: A _ list_ is an ordered collection of values which may contain duplicates. A
231
+ value added to a list is ordered after existing values.
237
232
238
233
** Set**
239
234
240
- :: The term _ set_ describes a collection of zero or more values, which may not
241
- contain duplicates. Each value is considered a "member" of the set. A set is
242
- unordered unless explicitly stated otherwise (as an "ordered set"). For clarity,
243
- the term "unordered set" may be used when the lack of an order is semantically
244
- important .
235
+ :: A _ set_ is a collection of values which must not contain duplicates.
236
+
237
+ :: An _ ordered set _ is a set which has a defined order. A value added to an
238
+ ordered set, which does not already contain that value, is ordered after
239
+ existing values .
245
240
246
241
** Map**
247
242
248
- :: The term _ map_ describes a collection where each element is a pair (called an
249
- " entry") consisting of a key and a value. Keys are unique: no two entries with
250
- the same key may exist in the same map, but values may repeat. A map is
251
- unordered unless explicitly stated otherwise (as an "ordered map"). For clarity,
252
- the term "unordered map" may be used when the lack of an order is semantically
253
- important .
243
+ :: A _ map_ is a collection of entries, each of which has a key and value. Each
244
+ entry has a unique key, and can be directly referenced by that key.
245
+
246
+ :: An _ ordered map _ is a map which has a defined order. An entry added to an
247
+ ordered map, which does not have an entry with that key, is ordered after
248
+ existing values .
0 commit comments