Mobile app version of vmapp.org
Login or Join
Barnes591

: Schema.org Microdata Across Multiple Pages Say I have markup like this on https://example.org/index.html: <span itemscope itemtype="https://schema.org/LocalBusiness"> <meta itemprop="url"

@Barnes591

Posted in: #Microdata #SchemaOrg

Say I have markup like this on example.org/index.html:
<span itemscope itemtype="https://schema.org/LocalBusiness">
<meta itemprop="url" content="https://example.org/index.html">
<meta itemprop="name" content="Example Industries">
<span itemprop="address" itemscope itemtype="https://schema.org/PostalAddress">
<meta itemprop="addressCountry" content="CA">
<meta itemprop="addressRegion" content="ON">
<meta itemprop="addressLocality" content="Ottawa">
</span>
<meta itemprop="telephone" content="613-555-1234">
...
</span>


Then on example.org/employees/joe-blow.html I have

<span itemscope itemtype="https://schema.org/Person">
<meta itemprop="url" content="https://example.org/employees/joe-blow.html">
<meta itemprop="givenName" content="Joe">
<meta itemprop="familyName" content="Blow">
<span itemprop="worksFor" itemscope itemtype="https://schema.org/LocalBusiness">
<meta itemprop="url" content="https://example.org/index.html">
<meta itemprop="name" content="Example Industries">
</span>
</span>


I obviously don't want to repeat all the information about the LocalBusiness within each Person. Is this a valid way for the Person to reference the LocalBusiness on another page?



I've also tried it like this:
example.org/index.html:
<span itemid="#business" itemscope itemtype="https://schema.org/LocalBusiness">
<meta itemprop="url" content="https://example.org/index.html">
<meta itemprop="name" content="Example Industries">
<span itemprop="address" itemscope itemtype="https://schema.org/PostalAddress">
<meta itemprop="addressCountry" content="CA">
<meta itemprop="addressRegion" content="ON">
<meta itemprop="addressLocality" content="Ottawa">
</span>
<meta itemprop="telephone" content="613-555-1234">
...
</span>

example.org/employees/joe-blow.html:
<span itemscope itemtype="https://schema.org/Person">
<meta itemprop="url" content="https://example.org/employees/joe-blow.html">
<meta itemprop="givenName" content="Joe">
<meta itemprop="familyName" content="Blow">
<link itemprop="worksFor" href="https://example.org/#business">
</span>


But Google's validator doesn't seem to recognize the linked information. It complained unless I re-included the name property of the LocalBusiness.

10.01% popularity Vote Up Vote Down


Login to follow query

More posts by @Barnes591

1 Comments

Sorted by latest first Latest Oldest Best

 

@Ann8826881

How to reference/link with Microdata and Schema.org

If possible, I would use both ways (url property from Schema.org & itemid attribute from Microdata).

While Schema.org isn’t that strict about it, I think it makes sense to use different URIs for them, if you want to differentiate between the page and the thing:


Schema.org’s url property gives the URI of the page about the thing.
Microdata’s itemid attribute gives the URI of the thing.


For example, the URI example.org/employees/joe-blow.html points to a page about Joe Blow, and the URI example.org/employees/joe-blow.html#i is the URI for Joe Blow himself. Then you could specify:

<div itemscope itemtype="http://schema.org/Person" itemid="/employees/joe-blow.html#i">
<link itemprop="url" href="/employees/joe-blow.html" />
</div>


<div itemscope itemtype="http://schema.org/AboutPage" itemid="/employees/joe-blow.html">
<link itemprop="about mainEntity" href="/employees/joe-blow.html#i" />
<!-- just for the sake of the example; you would typically include the 'Person' item here -->
</div>


Search engine support

Google’s SDTT doesn’t follow links. Copying my comment to a related question:


The SDTT doesn’t support it, but of course that doesn’t necessarily mean that Google doesn’t support it. I guess it makes sense that the tool doesn’t follow references, because there could be many, possibly endless, even to external documents. -- My guess (I have no evidence, just a guess) is that the Googlebot will follow those references (these are, after all, normal a/area/link hyperlinks), but without "adding" the structured data from the linked page to the linking page.


As far as I know, no search engine documents that they would follow references in structured data to do something with it.

10% popularity Vote Up Vote Down


Back to top | Use Dark Theme