Nobody has the right but there are obvious ways to differentiate them. You pool a set of majority features together that did not exist in a previous iteration. Really its hard to do before the implementation is complete. basically its hard to define web3 before there is a web3. What is happening is that there are parties who are actively trying to make major changes to how majority of the internet is used, that new version is therefore web3.
Its like how we different between epochs or periods of time. They are just abstractions of ideas/things/beings put into a bucket.
Web1.0 was essentially a static web with static pages. Its just how the internet was mostly used during that time period. Web2.0 essentially transformed HTTP + javascript to the standard OS used to run programs. No more installing software locally... well guess what in web1.0 days people still had dynamic websites (php, cgi, flash, java applet) and in the web2.0 days I still have to install video games from steam. They are just general buckets to help our brains more easily categorize time periods and the major differences between them.
Now, with the term "Web3", crypto enthusiasts try to establish it a-priori. That is, nobody knows exactly what kind of technologies/changes will be in "Web3" and even the problem it solves are not considered problems that need fixing by others. And it doesn't matter, because whether "Web3" will be a thing that changes the web as we know it will not be decided by evangelists, it will be decided when it has been adapted by the broad majority - and my personal take is that what currently is proclaimed as Web3 will not see broad adaption (by users, enterprises, network operators etc.).