1. Structured data
1.1. #1: PageMaps: invisible blocks of XML that add metadata to pages.
1.1.1. Once you create a PageMap, you can submit it to Google using any of the following methods
1.1.1.1. #1: Add PageMap data directly to your HTML page. Google will discover the PageMap information when we crawl your site.
1.1.1.2. #2: Add PageMap data to a Sitemap, and submit that Sitemap for on-demand indexing. This is a good option if you don't want PageMap exposed in the HTML source code of your page.
1.1.1.3. #3: Submit PageMap data using the Custom Search Control API.
1.2. #2: Microformats: tags used to mark up visible page content along predefined types.
1.3. #3: RDFa: an alternate standard for marking up visible page content along arbitrary types.
1.4. #4: Microdata: a new HTML5 standard for marking up visible page content.
1.5. #5: <meta> tags: standard HTML tags, a subset of which are parsed by Google.
1.6. #6: Page Date: features on a page indicating its date, which Google attempts to parse
2. Editions
2.1. Custom Search Engine (free)
2.2. Google Site Search (paid)
3. Workflow
3.1. Step 1: Create a Custom Search Engine on Google
3.1.1. The way 1: using the Control Panel
3.1.2. The way 2: creating an XML file with the definition of the engine
3.2. Step 2: Using
3.2.1. The way 1: Using a default page hosted by Google to show results
3.2.2. The way 2: embed search functionality directly in our website
3.2.2.1. #1: The Custom Search Control API lets you embed Google Custom Search element in your web pages and other web applications using JavaScript.
3.2.2.1.1. #1: Using the version 1 (old version)
3.2.2.1.2. #2: Using the version 2 (recommended)
3.2.2.2. #2: The JSON/Atom API lets you develop websites and programs to retrieve and display search results from Google Custom Search programmatically
3.2.2.3. #3: The XML API use a client application of your choice to retrieve a list of custom search engines (CSE) under an account, create and delete custom search engines, and retrieve code for a search box, among other things. It is available to Google Site Search customers only.
3.2.2.3.1. The process of programmatically creating search engine