Talk about data being separate from programs always reminds me what a good job Microsoft did with the spacial filesystem (that means one folder is one window, and they remember their location), single-document interface (a UI paradigm) and COM (a cross-process communication system). As a novice user not understanding a whole lot about the system, your documents were in the operating system and not in a specific program (this still wasn't perfect and a lot of new users did think their documents were in programs, which might be why we gave that up) and those programs could talk to each other and embed each other's documents.
This stuff probably seemed moderately innovative if you didn't grow up with it, seemed blindingly obvious if you did grow up with it, and somehow, like idiots, we've managed to lose it again!
OLE objects are just FAT like filesystems; nothing too disimilar to Unix if it mounted disk images with text files and different images with it in order to create a document format.