Consider an object model where an Object has an list (ie. indexed collection) of composite elements. Often you want to add a single element to the end of the collection, using .add(newElement). Currently, the entire collection of elements is loaded and initialised. A more efficient approach would be to have a lazy collection that merely calls an sql COUNT(index_column) or MAX(index_column)+1 to calculate its size when adding elements.
Proxies are not available for composite-elements, as they don't have a unique id, although the do have a key and index column that makes each element unique.