2017-06-20 6 views
1

My Microdataは検証しません: "itemprop属性が指定されましたが、その要素はどの項目のプロパティでもありません。"私は<a href="http://schema.org/" rel="nofollow noreferrer">Schema.org</a>形式でいくつかのmicrodataでWebページを検証しようとしているが、私はタイプのエラーの多くを得る

The itemprop attribute was specified, but the element is not a property of any item.

は、これが私のマークアップの一般的な構造である:

<div itemscope itemtype="http://schema.org/ProductModel" itemprop="mainEntity"> 
    <meta itemprop="productID" content="XYZ0001" /> 
    <meta itemprop="name" content="Product XYZ" /> 

    <table> 
     <tr itemscope itemprop="additionalProperty" itemtype="http://schema.org/PropertyValue"> 
      <th><span itemprop="name">Foo</span></th> 
      <td><span itemprop="value">1197</span></td>         
     </tr> 
     <tr itemscope itemprop="additionalProperty" itemtype="http://schema.org/PropertyValue"> 
      <th><span itemprop="name">Bar</span></th> 
      <td><span itemprop="value">Blah blah</span></td>          
     </tr> 
    </table> 
</div> 

私はProductModeladditionalPropertyを使用しています。なぜなら、ページエンティティには、より適切な事前定義タイプ(まだ)がないからです。マークアップで間違いがありますか?

答えて

1

要素にitempropを指定する場合は、itemscopeの親要素が必要です。

スニペットに示されていないなど、親要素を持っていない限り、これは可能性の高いエラーを与える行である:

<div itemscope itemtype="http://schema.org/ProductModel" itemprop="mainEntity"> 

私はあなたがこのProductModelは、ウェブの主要な実体であることを伝えたいと仮定ページなので、次のように指定します。

<div itemscope itemtype="http://schema.org/WebPage"> 
    <div itemscope itemtype="http://schema.org/ProductModel" itemprop="mainEntity"> 
    <!-- … --> 
    </div> 
</div> 

(またはそれ以上の特定のサブタイプのいずれか、適用、例えば、 ItemPage場合。)
関連する問題