1

Assuming I have a marked-up blog post using Microdata, is this the correct way to include the nested publisher person? I don't want to display the publisher name, but it's required by Google Structured Data Testing Tool. I'm happy with the markup for the nested author person, but using div, a layout tag, simply for nesting an invisible meta tag seems wrong.

<article itemscope itemtype="http://schema.org/BlogPosting">
  <h1 itemprop="headline">Post heading goes here</h1>

  <meta itemprop="keywords" content="alpha, beta, gamma" />

  <div itemprop="publisher" itemscope itemtype="http://schema.org/Person" itemid="philbalchin">
    <meta itemprop="name" content="Phil Balchin" />
  </div>

  <p itemprop="author" itemscope itemtype="http://schema.org/Person" itemid="philbalchin">
    <span itemprop="name">Phil Balchin</span>
  </p>

</article>

Is it possible to chain itemprop names, i.e., itemprop="publisher.name", or something similar to avoid unnecessary tags?

unor
  • 92,415
  • 26
  • 211
  • 360
maniacalrobot
  • 2,413
  • 2
  • 18
  • 20

1 Answers1

3

As the author and the publisher is the same person in your case, you could use both properties in the same itemprop:

<article itemscope itemtype="http://schema.org/BlogPosting">
  <h1 itemprop="headline">Post heading goes here</h1>

  <meta itemprop="keywords" content="alpha, beta, gamma" />

  <div itemprop="author publisher" itemscope itemtype="http://schema.org/Person" itemid="philbalchin">
    <span itemprop="name">Phil Balchin</span>
  </div>

</article>

But if that’s not the case, adding a div that contains meta and link elements is the appropriate alternative, exactly because it’s a meaningless element.

Community
  • 1
  • 1
unor
  • 92,415
  • 26
  • 211
  • 360