@restorante @cvtsi2sd @wamwoowam.co.uk
It's not (mostly) about the document format, it's about the design of the application. LibreOffice is a huge monolith. It has some ability to run extensions, but the monolithic nature makes it very hard for other programs to interoperate with it.
The Open Document Format is a terrible spec. It omits a huge amount of detail (it's been years since I read it, but the first ratified version didn't even provide a grammar for spreadsheet formulae, it literally just had a place in the XML for formulae and implementers were just meant to know what a formula was, how to parse one, and what functions were exposed). But that's a largely unrelated issue. If it were a good spec, that only enables the kind of interoperability you get by saving a document in one program and importing it in another one, not the kind you get by having two programs communicate.
By being a single complex monolith, LibreOffice is very hard for anyone to modify. It's an enormous C++ codebase, where a lot of it is ancient C++ (and a load of the comments are German, unless they've finished translating them since I last looked). As a proficient C++ programmer (and member of the C++ standards committee), I am not confident of my ability to fix a bug or add a missing feature in LibreOffice. And, if I did, getting it upstreamed is a lot more work, so I'd probably end up carrying that patch for a long time.
In contrast, a lot more people can write Python scripts that coordinate between web APIs, or AppleScripts that combine features of desktop apps on macOS. For something like OLE, it was easy to create a custom object that I could embed in a '90s Word document (even in Visual Basic!) and have it make the document do something novel.
To give a concrete example: OPENSTEP's Text Services (also on OS X / macOS) make it easy to have a generic plugin that takes some highlighted text and replaces it with a PDF from typesetting it in LaTeX, so I can embed nicely rendered formulae in anything on macOS that uses NSTextView, whereas providing something that gives me a better equation editor in LibreOffice is orders of magnitude harder.
If you want to lock people into your platform, you build a big platform. If that isn't your goal (and it mostly isn't for F/OSS) then building something like that means that you're at a disadvantage. Your competitors will benefit from lock in and vertical integration in ways you can't. But if you build small modular composable software, your proprietary competitors can't do that.
If you have a system that's assembled from small tools where each tool could be written by a single person (or maybe a few people) then lock in is impossible. If someone produces something you want but you don't want to deal with them, reimplementing it is feasible in a way that reimplementing a Microsoft or Apple product rarely is. And if you're a government and want a thriving software market without lock in, that's the kind of thing that you should incentivise.