How to set breadcrumbs for an article in Schema.org? - seo

Using Schema.org, I would like search engines to read the breadcrumbs of my articles.
However, BreadcrumbList is part of a WebPage but not a part of an Article.
I can add a WebPage object to each article, but it seems a bit redundant and I'm not sure how search engines would treat it.
What is a right way of implementing both breadcrumb and article objects?
Real life examples would be great.

Articles and web pages are different entities. For various reasons it makes sense not to blur the line between these entities. Articles have no breadcrumbs, web pages have. That’s why Schema.org defines the breadcrumb property only for WebPage (and sub-types).
The common and expected way is to provide a WebPage entity in addition to any entities you have on the page (like one or multiple Article).
The mainEntity property (or the inverse mainEntityOfPage property) is used to denote the primary entity that the web page describes.
So for a web page that contains a single article, you could have something like:
WebPage breadcrumb BreadcrumbList
WebPage mainEntity Article

Here is a example on Google with schema.org

Related

What would be REST way to get relevant resources?

Let's say I have an API to get a product given an product ID as: api/products/<productid>.
What would be a REST way to get relevant products given a product ID. I think I can use a query on the same endpoint as api/products?id=<productid>, but not sure if this is ideal or it might be confusing.
Standard practice for making api url is api/products/<productid>.
for params other than id (generally for filtering or searching purpose), query params are considered api/products?name=somename
The detailed resource naming guide can be found here
What would be REST way to get relevant resources?
Answer this question: how would you do it on the web?
You might have a web page for the product, and then a link from that page to a new page describing the related resources, where each entry in that page would include links to the product page of the specific resources.
What we need to define for the client (or make it easy to discover) is how to find the links.
In the case of the web, we are typically using HTML representation of our pages. HTML is special in that it has a standardized understanding of links. For human consumers, we surround the link with context (typically, the contents of the A element); for machines, we should be a bit more precise about defining the rule.
For representations that don't have a standardized understanding of links, we need to do something else. The most common answer is to use Web Linking, which is to say we put a description of the relationship between to URI into the headers of the response.
REST doesn't care what spelling conventions you use for your resource identifiers, so long as they are consistent with the production rules defined in RFC 3896. So you can choose any spelling convention you like.
For instance, it is common to use spelling conventions that include key value pairs in the query part of the URI, because HTML GET forms can be used to describe links with that shape, which simplifies certain use cases.
Since REST doesn't care about your spelling conventions, you can use the extra freedom to address other problems (what spellings are easy for people reading the logs? what spellings are easy for people documenting the API? and so on....)

Questions on Data-Vocabulary.org and Schema.org for Breadcrumbs

I am very new to schemas (this is my first time) and I am a little confused on this info. I was reading into schemas for breadcrumbs and I came across 2 different methods:
Google way: From what I read from here, Google shows example of adding Microdata using http://data-vocabulary.org/Breadcrumb
Schema.org example: The example in Schema.org shows a very different approach. Something like this:
<div itemprop="breadcrumb">
Books >
Literature & Fiction >
Classics
</div>
My questions are:
(1) Is it better for me to use the Schema.org method instead of Data-Vocabulary.org in 2014? When I read the discussions in this topic here where some has said that Data-Vocabulary.org is outdated and Schema.org is the latest method. Is this a valid statement for today? I have still seen a lot of websites using Data-Vocabulary.org similar to Google's example.
(2) The Schema.org method is too simple and unlike Google's Data-vocabulary.org example that adds itemprop="url" for URLs, itemprop="title" for titles, etc. individually. But the Schema.org method just wraps the whole breadcrumbs and doesn't declare individual URLs and titles. So would Google's search engine understand the URLs and titles if I used the Schema.org method? Or is Google's Data-Vocabulary.org method better for Google's search engine results?
(3) Lastly, with the breadcrumb separator does it only show the separator used in the HTML markup? For instance, I have breadcrumb separator added via CSS and it's not in the HTML markup. So in this case, if the breadcrumbs are shown in search results, would it automatically add the > separator or will it show exactly the way I've shown in my HTML?
Schema.org and Data-Vocabulary.org are vocabularies. If you want, you could use both of them for the same content (the Microdata syntax makes this hard/impossible, but it’s easy with the RDFa syntax).
If you are interested in a specific consumer for your markup, it makes sense to check their documentation to see what exactly they support (of course you can’t be sure if their documentation is correct and complete).
In case of Google Search and their Rich Snippets, the documentation would be: Rich snippets - Breadcrumbs (currently "experimental"). On this page, they only give examples using the Data-Vocabulary.org.
(Note: Stack Overflow is the wrong place for discussing actual support and behaviour of third-party services like Google Search. On our sister site Webmasters such questions might be on-topic.)

Schema.org siteNavigationElement

I'm having trouble getting the Webmaster Tools rich snippet testing tool to properly return markup for schema.org's WebPageElement types.
http://schema.org/WebPageElement
Does anyone have a site that hosts this markup?
I'm looking for solutions for a website that has undesirable snippets returned on Google search. The website is an interactive library of slide presentations, with an advanced search function.
Many different search pages on this site are being dropped from the Google index every week. The snippet returned on these pages includes the navigation menu. There is no h1 tag and the first line of the navigation menu is in bold, so Google is identifying the menu as the main content of the page and returning this info in the search results.
I need Google to put the actual page content in the search results, to increase click through rate and resolve a probable duplicate content issue.
I thought it would be good to put an h1 tag on the site, and add schema for WebPageElement, SiteNavigationElement, WPHeader, WPFooter, and WebPage.
Does anyone have examples of this markup on their site?
In the past I've used the rich snippet tool and had it return error, and in every instance I found that my code did indeed contain an error, so I don't think it's the tool.
I have implemented several of the schema.org WebPageElement types in http://gamesforkidsfree.net/en/ including siteNavigationElement
You can check how it is being recognized by Google in Rich Snippets Testing Tool.
Also in Google Webmaster Tools, there is a section to check this kind of markup at "Optimization / Structured Data", for this case it shows:
Type Schema Items # Pages
---------------------------------------------------------
ItemPage schema.org 109,657 6,866
WPAdBlock schema.org 20,727 6,973
SiteNavigationElement schema.org 7,350 7,322
WPHeader schema.org 7,319 7,319
WPFooter schema.org 7,319 7,319
WebPage schema.org 649 649
Regarding duplicate content you can have a look at one of the many Google support pages about canonicalization (isn't that duplicate content? :) e.g. canonicalization -> hints.
It would be easier to answer if you could show the actual website or a SERP screenshot. By the way I don't think that your problem can be solved using that kind of markup since there is no evidence that Google supports it even if Schema.org is a Google initiative.
For what I understand you have two different kind of issues:
Bad search snippets. Google shows in the search snippet a fragment of the on page text that is relevant to the user query. So what you see on the search snippet largely depends on the query you typed in the search box. If you see a piece of the navigation menu in the snippets it could be that there is no relevant text in the indexed page so Google does not have anything better to show than the text in the navigation menu
Search pages being dropped from the Google index. This is a different, and more serious, problem. Are those "search pages" a good and relevant result compared to the other pages ranking for the query you are typing? Is the main topic of the page clear and explicit (remember that sometimes you nee to spoon-feed the search engines)? I'm giving you more questions than answers but, as I stated before, is not easy to diagnose a SEO problem without seeing the web site.
All the above being said, google does show in its SERP when you define BREADCRUMP and schema.org as a whole is being made by the search engine giants so implementing it ensures some level of better understanding of the bots about your page. Search engines do not tell you everything they do but if you follow the main standards they produce together you pretty much ensure yourself good content availability within the SERPs.
You shouldn't count much on the impact from that though.
I suggest you focus mainly on pretty urls, canonical usage, title, description and proper implementation of schema.org itemprop for your main content type on the inner pages as well as H1 for your title.
Also try to render your main content as high as possible within the html and avoid splitting your title, summary and image… best case scenario they should be close to each other with H1, IMG and P elements and not be divided by divs, tables and so on.
You can have a look at this site http://svejo.net/1792774-protsesat-na-tsifrovizatsiya-v-balgariya-zapochva
It has a pretty good SEO on its article pages and shows up quite nicely and often in SERPs because of its on-page SEO.
I hope this helps you.

Is there a way to add Microdata type for feeds?

I am displaying the feeds from Facebook and Twitter on a site. For SEO purpose I came across this excellent site http://schema.org/. I read through the site but didn’t get a way to add Microdata to feeds.
Does anyone have idea? Also is there a better way to add SEO to feeds?
If you are displaying the feed entries on your page, you would be using HTML. If you use HTML5, you may use Microdata. If you can’t change the output on the server-side, you’d have to add the Microdata with JavaScript (if you are interested in search engines consuming your Microdata, then this would probably not work for most of them).
If you link to the feeds from your page, they are probably in XML (Atom, RSS, …). Microdata can only be used with (X)HTML5.
If you want to use the schema.org vocabulary, you can use Microdata, RDFa Lite, JSON-LD, ….

Google rich snippets not showing on testing tool but showing on search?

If you type in "Boyce Avenue" on Google, it shows a rich snippet of their upcoming events which I'm assuming is using Event Information. However, if you type in "boyceavenue.com/tour.html" in Google's rich snippet tool, nothing shows up. Why does this happen?
I have answered this here in your other question.
Google and other search engines are using various data sources for generating Rich Snippets and similar functions. Rich meta-data crawled from the pages, be it RDFa, microdata, or microformats, is only ONE (yet important) source.
Google seems to have bilateral agreements with -- typically large -- sites for consuming their structured data directly. This why you may see rich snippets on pages that have no data markup in the HTML.
Google Fusion Tables (http://www.google.com/fusiontables/Home/) may also become a technique for exposing structured data to Google.
However, in general, using schema.org or http://purl.org/goodrelations/ (for ecommerce) markup in RDFa or microdata syntax is IMO the best option for new sites,
because the data will be accessible to search engines and browser extensions alike and
because the data will also send relevance signals to search engines (see http://wiki.goodrelations-vocabulary.org/GoodRelations_for_Semantic_SEO for more details.
Best wishes
Martin Hepp