The applications today needs store multiple type of data. One way to do it is using a filesystem in a file. OLE2-developers used this approach.
Inside a OLE2 file, there are streams (files) and directories. Using libole2 is easy to travel through such filesystem-in-a-file, and create, read, write or remove files, and create or remove directories.