Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

The problem that I have is that I have a client that sells local services, he wants to use a h1 that includes both the service and local, no problem there… But the snag is he wants to use as much as Schema.org as possible, again no problem but with the service name + location within the h1 this brings up a problem in my markup. When I mean problem I don’t mean it doesn’t validate, I like doing things the correct way and for all you who use Schema.org regularly you know it’s poorly documented on Do’s and Don’ts so to speak.

So for example purposes only because I can’t disclose much information in regards of my client nor the topic due to a NDA being signed, so let’s pretend his/her company is a hair dressing company that he wants to target Devon in the UK.

The h1 would read something like "Cut and Blow Devon" (I personally dislike the keyword "Devon" in there but sometimes no matter how hard you try you just can’t convince people what’s best for them).

Anyway, so we have "Cut and Blow Devon" which looks something like (Product is equal to service, as there is no service in Schema.org):

<article itemscope itemtype="http://schema.org/Product">
    <h1><span itemprop="name">Cut and Blow</span> Devon</h1>
    <span itemprop="description">A funky Description will go here</span>

Originally I did have "Devon" included within the span of itemprop="name" but it makes no sense, since no service should be called "Cut and Blow Devon", or should it?

Anyway, then it got me thinking wouldn’t it just be better to use Article as the schema mark up?

<article itemscope itemtype="http://schema.org/Article">
    <h1 itemprop="name">Cut and Blow Devon</h1>
    <span itemprop="description">A funky Description will go here</span>

I appreciate everyone who has managed to read though that and now I’ll make the question a little more obvious: Would you recommend using Article or Product, and is it bad to use span PARTLY within a h1 to define the Schema.org name?

share|improve this question

This is a bit subjective, but I don't believe Schema.org dicatates in anyway what tags the itemprop attributes can be added to, so I don't see any problem with your <h1><span itemprop="name">Cut and Blow</span> Devon</h1> approach. You could quite conceivably have something like this:

<h1>New for 2013: <span itemprop="name">Cut and Blow</span></h1>

which is basically the same thing, and I don't think anyone could consider that bad practice. Just imagine that when parsing the markup, the HTML tag the attribute is used on is irrelevant.

As for Product vs. Article, if the page is about a specific service offered by this company, I'd stick with Product. If the page is simply about the type of service, or just tangentially related to the service; then perhaps Article would more appropriate. You'll note that the Schema.org page for Product gives "Commodity services, like haircuts" as an example of the type.

share|improve this answer

Your Answer


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.