Skip to content

Change the domain and range of isVariantOf to Product #1797

@jvandriel

Description

@jvandriel

(edit by @danbri June 2020; see also: #2587)

One of the things I keep running into over and over again is that there currently is no way to express a 'variant' relation between products without the use of ProductModel. Which IMO is an serious issue as there are far more products out there of which publishers don't have info about / a resource for the ProductModel than there are publishers that do have such info.

For example, cell phone cases - a type of product that often is available in several colors yet for which, more often than not, doesn't exist a resource containing product model information, eg:

4 variants (color) of the same product of which the ProductModel.name is 'Evo Check' according to their own structured data, but that's all the info there is.

Currently such products can only be sort-of chained together by using either the isSimilarTo or isRelatedTo properties, which IMHO, don't express the correct relation (and sameAs doesn't do it for me either).

And so I suggest we change the domain and range of isVariantOf from ProductModel to Product.

Interesting note:
This topic became top of mind for me again when I was studying Google's Merchant Center documentation, which contains an example of an array of unchained products that implies a group of product variants on a single page (try adding a mainEntityOfPage to that example, which is important if there are also other top-level entities on a page, besides the product variants).

So the way I see it is that even Google isn't sure how to handle the relation between product variants and uses an array as a poor man's solution to come to some sort of implied semantics where explicit semantics are needed.

Metadata

Metadata

Assignees

Labels

no-issue-activityDiscuss has gone quiet. Auto-tagging to encourage people to re-engage with the issue (or close it!).

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions