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_AttributeDescriptorList::first() or ostc_AttributeDescriptorList::next() on the list renders the cursor valid.