A list's associated cursor is valid if it is positioned at an element of the list, and is invalid if it is not positioned at any element of the list. Each list's cursor is initially invalid. Calling either ostc_ObjectList::first() or ostc_ObjectList::next() on the list renders the cursor valid.