[2] [DFN[[RUBYB[[[コレクション]]]@en[collection]]]]は、
[[節点]]の[[リスト]]です [SRC[>>1]]。

* 仕様書

[REFS[
- [1] [CITE@en-US[DOM Standard]] ([TIME[2014-06-23 14:49:32 +09:00]] 版) <http://dom.spec.whatwg.org/#concept-collection>
]REFS]

* 構成要素

[5] [[コレクション]]は、
[FIG(list)[
- [RUBYB[[[根]]]@en[root]]
- [RUBYB[[[フィルター]]]@en[filter]]
]FIG]
... を有します [SRC[>>1]]。

[6] [[コレクション]]は、[[根]]として指定された[[節点]]を[[根]]とする[[部分木]]に含まれる[[節点]]のうち、
[[フィルター]]によって[[濾過]]されて残ったものを[RUBYB[表しています]@en[represented by the collection]] [SRC[>>1]]。

[7] [[コレクション]]は [[live]] または[[静的]]のいずれかです [SRC[>>1]]。
[[静的]]なら、ある時点で[[根]]と[[フィルター]]から決まる[[節点]]の[[リスト]]を表しています。
[[live]] なら、評価が必要になった時点で[[根]]と[[フィルター]]から決定された[[節点]]の[[リスト]]を表していて、
対象となる[[木]]の変化に合わせてリアルタイムで変化します。

[8] [[コレクション]]に含まれる[[節点]]の[[リスト]]は、別途規定がない限り、
[[木順]]で[[整列]]されたものです [SRC[>>1]]。

;; [10] [[コレクション]]に属する[[節点]]は、すべて同じ[[木]]に属するものです。

;; [9] ほとんどの[[コレクション]]は、[[live]] で、[[木順]]です。

[11] [CODE(DOMi)@en[[[NodeIterator]]]] の [[iterator collection]]
は、そこから[[節点]]が削除される時に特別な処理が実行されます。

* コレクションの一覧

[3] [[コレクション]]には次の種類があります。

[FIG(list middle)[
- [CODE(DOMi)@en[[[NodeList]]]]
- [CODE(DOMi)@en[[[HTMLCollection]]]]
- [CODE(DOMi)@en[HTMLAllCollection]]
- [CODE(DOMi)@en[[[NodeIterator]]]] の [[iterator collection]]
- [CODE(DOMi)@en[[[NamedNodeMap]]]]
]FIG]

;; [4] [CODE(DOMi)@en[[[Elements]]]] や [[read only array]] は[[配列]]の一種とされており、
分類上[[コレクション]]ではありません。