Schema.org is a dictionary that, like any other dictionary, can be used in many forms. The website http://schema.org/ has examples using Microdata strong> and the RDF and RDFa and JSON-LD syntaxes, but these are not the only syntaxes with which it can be used. For example, you can use it with any other RDF syntax like Turtle or RDF / XML .
There is no better syntax. All of them have advantages and disadvantages. See, for example, my answer on the differences between Microdata and RDFa . Note that you can use different syntaxes (and dictionaries) in the same document.
Now, if you have a specific customer, you should consult your documentation. However, syntax support comes and goes, and not everything that they can support is necessarily documented, and not everything that is documented necessarily works.
In the case of Google, you are probably interested in their rich snippets. Their rich fragment documentation mentions Microdata, Microformats, and RDFa. However, note that not all related examples use the Schema.org dictionary, but the older Data-vocabulary.org or Microformats (since you cannot use dictionaries such as Schema.org or Data-vocabulary.org with microformats). In addition, there are several Rich Snippets that are present on this page, such as the "Link Search Box" , for which they even recommend the JSON-LD syntax.
As a general tip: search engines usually prefer visible content over hidden metadata. For example, the presence of keywords in the form of hidden metadata allows authors to claim that their documents relate to something else that they actually are (either because of an attempt to deceive the search engine, or because the authors forget to update the content in both places) . Consequently, decoupling metadata from content, like its case with JSON-LD, can (possibly!) Lead to the same problems as current search engines with hidden metadata. (If or what search engines actually process it, this is a question that does not fit the topic.)
Another possible advantage to connecting metadata with content (for example, with RDFa) is that you can easily and automatically generate the same information in JSON-LD, Turtle, etc., because everything is just RDF. Just analyze RDFa, convert to your preference formats and paste (in a script ) or link (with rel - alternate ), if that makes sense.
But yes, adding RDFa is often more complicated than adding BLOB JSON-LD, because you need to adapt it to existing markup. (However, he should not “interrupt the check” unless you make mistakes.)