This is a controlling interface for containers that have a fixed list of child nodes (similar to a C structure having a fixed number of members). Normally, the child nodes would be created at the same time as their parent containers, and deleted with the parent container too.
This is a controlling interface for containers that have an unknown (at compile time) or potentially infinite number of children (such as an address book). To prevent the need to load ALL children when the container is created, the IVfsCacheContainer will create and destroy child nodes on-the-fly, as they are required. To do this, each IVfsCacheContainer has a number of cache slots that hold 'active' children (i.e. children that are being observed or read). Once a child becomes inactive, it may be removed from its cache slot and deleted, and the cache slot re-used.