Question

Is it obligatory to write Product node (parent) before Offer node (child) in DOM schema of schema.org or I can define Offer node without its parent node?

Was it helpful?

Solution

Schema.org never requires the existence of "parent" items (unless you use itemprop on an element with itemscope).

So this is totally fine:

<html itemscope itemtype="http://schema.org/Offer">
</html>

But even if you would want to add a Product, it doesn’t have to be a parent for Offer.

You can nest the Product under Offer:

<div itemscope itemtype="http://schema.org/Offer">
  <div itemprop="itemOffered" itemscope itemtype="http://schema.org/Product"></div>
</div>

Or you can have both on the same level and use itemref:

<div itemscope itemtype="http://schema.org/Offer" itemref="foo">
</div>

<div itemprop="itemOffered" itemscope itemtype="http://schema.org/Product" id="foo">
</div>
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top