Schema.org for search results page - schema.org

I implemented a Google Sitelinks Searchbox on my home page.
I've checked https://developers.google.com/search/docs/data-types/sitelinks-searchbox and it doesn't mention which format I should use for the results page.
Which Schema.org type can be used for my own SERPs? Should I use an XML sitemap, JSON-LD, Microdata?

You can use the SearchResultsPage type.
Each result could be a WebPage (or a more specific type, like ItemPage if it applies).
To connect the SearchResultsPage with the WebPage results, you can use the mainEntity property with an ItemList value. You can find RDFa examples in this answer.

Related

Which property to use for WebPage sections?

I have pages that aren't articles and have multiple sections on the page describing different organizations/services and their information. I am defining the page as a WebPage since this page isn't really an article.
Which property should I use to best mark these sections on the page?
WebPageElement or one of its more specific types might be what you're looking for.
There is a full hierarchy of types that should point you in the right direction.
If you're looking to markup contact information such as email, phone etc. you might want to try ContactPoint or PostalAddress.
As #Brad notes, the WebPageElement type would be the closest match for something like a "webpage section". You could use the hasPart property to denote that they are parts of your WebPage.
But I think that it’s typically not useful to provide WebPageElement (or one of its child types) in the first place: don’t say something about how you structure your page, say something about the things you describe on your page.
So if you provide data about an organization, use Organization. If you provide data about a service offered by an organization, use Service (→ provider Organization) etc.
Use the mainEntity property of your WebPage (or one if its more specific types) to link the primary item the page is about:
If the page is about a single organization, you could use:
ItemPage mainEntity Organization.
If the page is about multiple organizations, you could add a list:
CollectionPage mainEntity ItemList
(and each Organization would be its own list item, added via itemListElement)
(By the way, even if Article would be appropriate in your case, you could still use WebPage in addition, so it’s not either-or. In that case, the mainEntity of the WebPage, or the more specific ItemPage, would be the Article item.)

Confluence REST API - expanding page body when retrieving page by title

I'm accessing a Confluence page by its title using the latest REST API. To retrieve more details on certain fields, I'm passing the expand parameter (see Confluence Docs):
https://xyz.atlassian.net/wiki/rest/api/content/?title=Architecture&spaceKey=XX&expand=body
or
https://xyz.atlassian.net/wiki/rest/api/content/?title=Architecture&spaceKey=XX&expand=body.view
But the results don't hold any information on the found page body.
Note, this is working fine with requests using a page id only. Using the title to retrieve the page is threaded similar to search results, hence the expand feature seems not to work the same. According to the documentation it should work as per my example. Am I missing something?
You need to specify which type of "body" you want in the expansion parameter.
In your case, something like this:
https://xyz.atlassian.net/wiki/rest/api/content/?title=Architecture&spaceKey=XX&expand=body.view
https://xyz.atlassian.net/wiki/rest/api/content/?title=Architecture&spaceKey=XX&expand=body.export_view
Possible values are:
editor
export_view
anonymous_export_view
view
storage

Bing search api limit to certain sites

Can I define Bing search api only return result from subdomains from a site? For example, www.domain.com/dir/. This is something similar to what Google custom search does. But Google CSE has a hard limit on 10k/day. Is there an alternative search api available for this purpose?
You can simply put this into the query field, like this:
site:domain.com/dir/ whatIAmLookingFor
The query field can contain anything the Bing Engine supports, despite the keyword being site, it apparently supports also URLs
You can read the Bing Search API docs here.
madmuffin is correct, but I'm expanding on his answer to show how multiple sites can be searched. You can use the advanced search operator "site:" as part of your query "q" param.
Single Site Example
"heart disease" site:www.example.com
Multiple Site Example
"heart disease" (site:www.example1.com OR site:www.example2.com)

Open Graph product schema enum property values

I would like to know what are the allowed values for the Open Graph og:product type, og:availability property. It is defined as an enum property (see http://graph.facebook.com/schema/og/product#availability).
I have struggled for a while trying to make Open Graph product tags work according to Pinterest Rich Pins specification without any success. (see http://developers.pinterest.com/rich_pins/ -> Open Graph -> availability). The example there works fine, both Facebook and Pinterest debuggers parse it correctly.
<meta property="og:availability" content="instock" />
But if this value is changed by any of the ones which are described in the Rich Pins documentation (in stock", "preorder", "backorder", "out of stock", "discontinued"). Both Facebook and Pinterest debuggers fail to parse the content of this og:availability property.
Also the documented value documented in Rich Pins for the meta tag property looks wrong to me but og:availability and product:availability are valid ones
The latest version of the Facebook documentation lists the following as valid values for the og:availability property: instock, oos, pending.
The correct answer for "instock" is "in stock" with space. After many tries, and consulting the product Schema, this works.

From where does Google get the abstract for each of its site results, that it displays on its search result page?

I am working on a project in which i have to search for terms on a search engine and then cluster the results on their contextual sense. So i have to treat each result as a document. unfortunately, the data present along with each result on the result page is too little for clustering. Hence, I wanted to know from where the search engines get the abstract for each result that they show. If i could get that entire abstract then i can cluster the results by treating them as separate documents.
From where does google get the abstract ?
For eg: If you search for "1000 Mile" on google, the second result shows the following abstract:
"The women's 1000 Mile Collection is based on classic designs and reflects Wolverine's long heritage of crafting quality footwear. Complementing these classics ..."
This abstract is not present in the Meta tags of the page.
From where does Google find this data.
Thanks
From Does Google use the Meta Description Tag for Description of Page?
Google will choose your search results snippets from the following places (not necessarily in this order):
The page's Meta Description tag
The page's Open Directory Project (ODP) Listing
Page content relevant to the search query
If you do not want Google to use the ODP listing's description then you can tell them not to do so with the following Meta tag:
<meta name="robots" content="NOODP">
If you want to encourage Google to use your Meta Description tag then make sure it is unique to each page. Also make sure it contains an accurate description of the page's content.
In thew absence of an ODP description and Meta Description tag, Google will use a portion of the page's text as the description. This text will contain the closest matches to the search query. I have not seen any official limit to how long this can be but a couple of sentences seems about right.
On a related note, if you don't want a snippet to be shown with a particular page you can use the following Meta tag to prevent one from being shown:
<meta name="robots" content="nosnippet">
See this blog post for Google's tips on using the meta description tag.
According to this site, "The meta description should typically be at most 145 to 150 characters in length as these are the maximum number of characters typically displayed at Yahoo! and Google, respectively."
That site is Flash-based, and Google can index Flash content, so given that the snippet isn't in the HTML source of the page as you point out, nor is it in the cached version of the page, I'm guessing that it's somewhere in the Flash movie.
It's kind of arbitrary that the snippet mentions 'The women's 1000 Mile Collection' while the site link itself is to the parent category of 1000 mile, not just women's, so I'm guessing here that gathering snippet-friendly metadata from a Flash site is an imprecise science. That's my best guess.
In this Google Webmaster blog post, they explain how they use external text or HTML files loaded into the Flash movie, and in one of the comments Jonathan Simon says (sorry):
"We try our best to crawl Flash content but the results can sometimes be less than ideal. You are only seeing a title in the search results for your site because that's the only bit of HTML text that you have outside of your Flash content. You could add a Meta description element to offer more information in HTML. You could also add some other text that's not a part of your Flash content. Just doing this should improve the snippet you see associated with your site in the search results."