The simplicity of the Open Graph protocol makes it incredibly easy to implement and parse. Unfortunately, this same simplicity can also translate to some shortcomings you’ll likely encounter when you’re working with the specification, ranging from implementation differences between sites to the risk of inaccurate generalizations made about entire pages since tiered object types are not provided. We’ll discuss a couple of these inherent Open Graph issues next.
One issue that has surfaced within the Open Graph protocol is being unable to differentiate objects with similar characteristics.
With several objects that have a real-world location, this is not a problem. We can differentiate the objects by utilizing additional geographical information—for example, if we have reviewed the same chain restaurant at different locations around a city.
But say we’re not looking at something with a real-world location—for example, a movie review for Fight Club. There are two movies with the same name in this case, one from 1999 and another from 2006. Therein lies the problem. When we enter in all of the Open Graph information for both movies, they will be almost identical, except perhaps the description. However, since the description is an arbitrary string with no defined structure, we can rule this out as a differentiator.
The inability to provide tiered or secondary object definitions ...