ONIX has a different purpose than OPDS.
ONIX for example is meant to distribute metadata between a publisher and a retailer/library/distributor.
ONIX is much more complex because it has to handle things that we don't need to care about in OPDS: territorial restrictions, price in various currencies, how a title is decomposed into several elements etc.
OPDS is meant to be directly consumed by a client and displayed to the user.
In certain cases where you need to distribute a minimal amount of metadata, OPDS could be a replacement, although this is not an intended use case. Since OPDS is built on Atom, you could also use the ONIX namespace to include additional metadata in an OPDS entry.
At a retailer like Feedbooks, we get content from publishers as ONIX and only display what's necessary to the user as OPDS. They're complementary rather than competing standards.
Hadrien