Take the 2-minute tour ×
Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

I have a website which lists business information in coherence with member information. So I am needing to use the Nested Items method.

Each "Business" listing has this setup:

  1. Business Name
  2. Business Address
  3. Business Location (city, state)
  4. Business Hours of Operation
  5. Business Contact Person (member name)
  6. Business Phone #
  7. Business Cell Phone #
  8. Business Website
  9. Business Description
  10. Other people (member names) who also work for this company (business name).

Each "Member" listing has this setup:

  1. Member Name
  2. Business Name
  3. Member Location (city, state)
  4. Member Phone #
  5. Member Cellphone #
  6. Member E-mail Address
  7. Member Website
  8. Member Description
  9. Other companies (business names) this person (member name) does business with.

I have attempted to apply the itemscope, itemtype and itemprop attributes to my mark-up myself.

<div class="listingBox">
    <div class="gradient2 gradient">
        <div class="column_1" itemscope itemtype="http://data-vocabulary.org/Person">
            <table>
                <tr>
                    <td colspan="2"><h2><a name="member_name" href="#" itemprop="name">Member Name</a></h2></td>
                </tr>
                <tr>
                    <td><h5>Business:</h5></td>
                    <td><a title="Business Name" href="#" itemprop="affiliation">Business Name</a></td>
                </tr>
                <tr>
                    <td><h5>Location:</h5></td>
                    <td><a title="City, ST" rel="nofollow" target="_blank" href="#"><span itemprop="locality">Minneapolis</span>, <span itemprop="region">MN</span></a></td>
                </tr>
            </table>
        </div>
        <!-- end .column_1 -->
        <div class="column_2" itemscope itemtype="http://data-vocabulary.org/Organization">
        <meta itemprop="name" content="Business Name" />
            <table >
                <tr>
                    <td><h5>Phone:</h5></td>
                    <td><span itemprop="tel">123-456-7890</span></td>
                </tr>
                <tr>
                    <td><h5>Cell:</h5></td>
                    <td><span itemprop="tel">012-345-6789</span></td>
                </tr>
                <tr>
                    <td><h5>E-mail:</h5></td>
                    <td><a rel="nofollow" href="#">business@email.com</a></td>
                </tr>
                <tr>
                    <td><h5>Website:</h5></td>
                    <td><a target="_blank" title="Business Name" href="#" itemprop="url">www.business-website.com</a></td>
                </tr>
            </table>
        </div>
        <!-- end .column_2 -->
        <div class="column_3">
            <table>
                <tr>
                    <td colspan="2"><h5>Description:</h5>
                        <div class="more-less">
                            <div class="more-block">
                                <p>Description of the business would be placed in this area.</p>
                            </div>
                        </div></td>
                </tr>
                <tr>
                    <td colspan="2"><h5>Members:</h5>
                        <p><a title="Member Name1" href="#" rel="acquaintance">Member Name1</a>, <a title="Member Name2" href="#" rel="acquaintance">Member Name2</a></p></td>
                </tr>
            </table>
        </div>
        <!-- end .column_3 -->
        <div class="clear"></div>
    </div>
    <!-- end .listingBox-gradient2 gradient --></div>
<!-- end .listingBox -->

I feel like it is incorrect, and I would like an explanation of what I'm doing wrong, and how to do it correctly. I have business information and member information mixed in with both types of listings.

Some of the warnings google is giving:

  • Note that there is no guarantee that a Rich Snippet will be shown for this page on actual search results. For more details, see the FAQ.
  • Warning: If this markup is about a person, at least 2 of the following fields are needed: organization, location, or role. See the people help page for more information.
share|improve this question
1  
What's the actual question? That first "warning" has nothing to do with whether your markup is bad; they're just making no guarantees they're use the metadata at all. The second one seems like it's satisfied by the person having the business name and location data. –  Su' Aug 7 '12 at 19:34
add comment

1 Answer

up vote 1 down vote accepted

The simple answer would be to change the way the data is presented. (Grouping the data by itemtype.)

For example. If "most" of the data pertains to "People", then you would put all of the data related to people in a div or some element of the sort. Then you would specify an itemtype of "Person".

Now, you CAN contain multiple itemtypes in a section of data. In my situation for example, I have a TWO main itemtypes (technically three -- if you include the address break-down) but the main focus was on TWO major types (Person & Organization -- or Members and Businesses).

It really just depended on the area of the website. I happened to have two MAJOR types of data listed on my website. Member data and Business Data. Both totally separate profile pages.

One for the members, which would primarily provide information about that particular member along with the business they owned, or if they were associated with any other businesses on the site.

The other was for businesses, which would provide information about the business along with who was the primary contact for that business listing. The business profile also has a feature which lists other members who are associated with this particular business profile.

You may think at this point that it's pretty self explanatory, but when you have a primary focus intertwined with a secondary focus, you have to understand how nested data works.


Here is an example of HTML markup that illustrates setting up a section of data with a primary focus on a business.

<div id="business" itemscope itemtype="http://data-vocabulary.org/Organization"> 
    <ul>
        <li>Business: <a href="#" itemprop="name">Some Business Name</a></li>
        <li>Contact: <a href="#" rel="contact">Some Person</a></li>
        <li>Phone: <span itemprop="tel">123-456-7890</span></li>
        <li itemprop="address" itemscope itemtype="http://data-vocabulary.org/Address">
        Address: <span itemprop="street-address">123 Fake Street</span>, <span itemprop="locality">Fake City</span>, <span itemprop="region">Fake State</span>, <span itemprop="postal-code">12345</span>, <span itemprop="country-name">USA</span>
        </li>
        <li>Website: <a href="#" itemprop="url">Some Business Website</a></li>
        <li>Members: <a href="#" rel="acquaintance">Person Name1</a>, <a href="#" rel="acquaintance">Person Name2</a>, <a href="#" rel="acquaintance">Person Name3</a></li>
    </ul>
</div>

Here is an example of HTML markup that illustrates setting up a section of data with a primary focus on a person and a secondary focus on a business.

<div id="members" itemscope itemtype="http://data-vocabulary.org/Person"> 
    <ul>
        <li>Name: <a href="#" itemprop="name">Some Person</a></li>
        <li>Business: <a href="#" itemprop="affiliation">Some Business Name</a></li>
        <li itemprop="address" itemscope itemtype="http://data-vocabulary.org/Address">
        Location: <span itemprop="locality">Fake City</span> <span itemprop="region">Fake State</span>
        </li>
        <li>Website: <a href="#" itemprop="url">Some Website</a></li>
        <li itemscope itemtype="http://data-vocabulary.org/Organization">
            <span itemprop="address" itemscope itemtype="http://data-vocabulary.org/Address">
            Address: <br />
            <a href="#" rel="contact">Some Person</a>
            <a href="#" itemprop="name">Some Business Name</a>
            <span itemprop="street-address">123 Fake Street</span><br /> 
            <span itemprop="locality">Fake City</span> <span itemprop="region">Fake State</span> <span itemprop="postal-code">12345</span><br /> 
            <span itemprop="country-name">USA</span><br />
            </span>
            <p>Phone: <span itemprop="tel">(123) 456-7890</span></p>
            <p>Business Relations: <a href="#" rel="acquaintance">Some Business Name1</a>, <a href="#" rel="acquaintance">Some Business Name2</a>, <a href="#" rel="acquaintance">Some Business Name3</a></p>
        </li>
    </ul>
</div>

Side Note: When preparing a section of data which relates to a person, you MUST have at least TWO of the following itemprops: organization, location, or role. (Person's name is mandatory.)


Hope I was able to help someone else with a similar situation.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.