Im pretty new to JSON-LD and am currently struggling making the Google Rich Results Test happy with my custom JSON-LD data.
Every time I use a @context
other than https://schema.org/
it shows me the error Incorrect value type "@context"
.
This even happens with this simple example based on a json-ld.org context:
<script type="application/ld+json">
{
"@context": "https://json-ld.org/contexts/person.jsonld",
"@type": "Person",
"name": "Foo"
}
</script>
After some trail and error I found out that with the following code the json-ld.org/playground shows me the same result if I use @vocab
<script type="application/ld+json">
{
"@context": {"@vocab": "http://xmlns.com/foaf/0.1/"},
"@type": "Person",
"name": "Foo"
}
</script>
And although Google is happy with this code I’m very uncertain if this can or should be the right solution to fix this kind of “Structured data parsing error”?
What is the correct way (that is accepted by Google) to write non-schema.org JSON-LD data?