+ /**
+ * An interface which indicates that an object exposes a 'selection' model,
+ * allowing the selection of one or more of its children. Read-only Selection
+ * instances are possible, in which case the interface is used to programmatically
+ * determine the selected-ness of its children. A selected child has ::State::STATE_SELECTED,
+ * and a child which may hypothetically be selected (though possibly not programmatically
+ * selectable) has ::State::STATE_SELECTABLE.
+ * @note Events emitted by implementors of Selection include:
+ * \li \c "object:selection-changed" An instance of Selection has undergone a change in the
+ * 'selected-ness' of its children, i.e. had a selection added,
+ * removed, and/or modified. Usually accompanied by
+ * corresponding \c "object:state-changed:selected" events
+ * from the corresponding children, unless the children are
+ * previously un-queried via AT-SPI and the Selection instance
+ * has ::State::STATE_MANAGES_DESCENDANTS.
+ **/