I was trying out a bunch of things on Google's Rich Results Test, and ran into this issue.
<html>
<head>
<title>Test SEO</title>
<script type="application/ld+json">
{
"@context":"https://schema.org",
"@type":"Service",
"name":"ABC",
"aggregateRating":{
"@type":"AggregateRating",
"ratingValue":5,
"reviewCount":2
},
"review":[
{
"@type":"Review",
"name": "ABC",
"author": {
"@type": "Person",
"name": "David A"
},
"reviewBody":"Awesome",
"reviewRating":{
"@type":"Rating",
"ratingValue":5
}
},
{
"@type":"Review",
"name": "ABC",
"author": {
"@type": "Person",
"name": "David B"
},
"reviewBody":"Great",
"reviewRating":{
"@type":"Rating",
"ratingValue":5
}
}
]
}
</script>
</head>
<body>
</body>
</html>
When I ran the test, it returned 3 errors, 2 of them saying Item does not support reviews, and 1 of them saying Invalid object type for field 'itemReviewed'.
For the first error, I'm not sure why I'm getting the error as I provided all the required fields for a review (https://developers.google.com/search/docs/advanced/structured-data/review-snippet#review-properties).
As for the second error, again I think I provided all the needed fields according to https://developers.google.com/search/docs/advanced/structured-data/review-snippet#aggregated-rating-type-definition, but still getting back that error.
I didn't provide itemReviewed to either objects, since the document indicated if it's nested, it can be omitted.