Build your Own Search Service




                                                 Saurabh Sahni
                         ...
Outline
•  About BOSS API
  –  What?
  –  Why?
  –  Features
•  What can be built with the BOSS API?
•  How to use it
  – ...
About BOSS API
What?


•  Open Yahoo’s core search features via
   web services to let 3rd parties
   revolutionize Search




     http:...
Opening the search technology stack




                                       Assist              Rank
             EXTRA...
Opening the search technology stack


                                          Your App here
                            ...
Why?

•  Removes entry barriers
•  Asset to Innovate
  –  Develop new relevance models
  –  Change presentation style
•  S...
BOSS API features
•  No branding or attribution
•  Ability to change presentation style
•  Ability to re-order results and...
What can be built with the
             BOSS API?
middlespot.com




10 
Inquisitor: Browser Extenstion




11 
Cluuz: http://cluuz.com
Keyword finder - http://keywordfinder.org/
askBOSS: http://ask-boss.appspot.com/
askBOSS: http://ask-boss.appspot.com/
askBOSS: http://ask-boss.appspot.com/
Webmeme: http://www.webmeme.in




17 
How to use it?
Get Started
•  Register for an application id
   http://developer.yahoo.com/wsregapp/
Get Started…
•  Documentation
   http://developer.yahoo.com/search/boss/
   boss_guide/

•  Code samples: Javascript, PHP ...
BOSS Search API Interface

http://boss.yahooapis.com/ysearch/{vert}/v1/{query}

 •  {query}: term to look for (url-encoded...
BOSS API


 Searching
 Slumdog
 Millionaire




               (Source: http://en.wikipedia.org/wiki/File:Slumdog_Milliona...
BOSS API
•  Search for slumdog millionaire:
  –  http://boss.yahooapis.com/ysearch/web/v1/
     slumdog+millionaire?appid=...
BOSS API: XML response
h"p://boss.yahooapis.com/ysearch/web/v1/slumdog+millionaire?appid=xyz&format=xml 
Site Restrict Search


•  Search for slumdog millionaire on
   selected movie sites
  –  Add param
     sites=indiatimes.c...
http://boss.yahooapis.com/ysearch/web/v1/slumdog+millionaire?
appid=xyz&sites=indiatimes.com%2Cmovies.yahoo.com&format=xml
Search images

•  http://boss.yahooapis.com/ysearch/images/v1/
   slumdog +millionaire?dimensions=large
http://boss.yahooapis.com/ysearch/images/v1/
slumdog +millionaire
Search News

•  http://boss.yahooapis.com/ysearch/news/v1/
   slumdog +millionaire?age=15d
http://boss.yahooapis.com/ysearch/news/v1/
slumdog + millionaire?age=15d
Code Example
    Movie Search
Movie Search Code Example
http://www.saurabhsahni.com/boss-examples.zip
More with
BOSS API
Related keywords


   Add parameter view=keyterms
   –  http://boss.yahooapis.com/ysearch/web/v1/slumdog
      +millionair...
http://boss.yahooapis.com/ysearch/web/v1/slumdog +millionaire
appid=xyz&view=keyterms&format=xml
Semantic Data
•  Access structured data acquired through
   SearchMonkey
Semantic Data




 view=searchmonkey_feed               view=searchmonkey_rdf




 http://developer.yahoo.com/search/boss/...
http://boss.yahooapis.com/ysearch/web/v1/slumdog +millionaire?appid=xyz&
view=searchmonkey_feed&format=xml
Long abstracts
•  Add parameter abstract=long
  –  get up to 300 characters instead of 130
Spell Check 

http://boss.yahooapis.com/ysearch/spelling/v1/
milionare?format=xml



Response
Site Explorer
•  Get page inlinks
  –  http://boss.yahooapis.com/ysearch/se_inlink/v1/
     {URL}?appid={APPID}


•  Page ...
BOSS Mashup Framework
•  Python (v2.5+) library

•  BOSS Search SDK plus …

•  SQL for remixing arbitrary XML/JSON sources...
BMF + Google App Engine
•  Enhanced version of BMF to GAE platform
•  http://zooie.wordpress.com/2008/08/04/yahoo-boss-goo...
More BOSS Implementations


•  http://mashable.com/boss/
•  http://delicious.com/tag/bossmashup
•  Add yours by tagging it...
One more thing…
 One more thing…
BOSS in Academic Research
•  The biggest dataset available on web
•  Very useful for Web-mining research
   experiments
  ...
Questions?

Learn more at:
http://developer.yahoo.com/search/boss/

Slides at:
http://www.slideshare.net/saurabhsahni/
Appendix
Search UI Templates in BOSS Mashup Framework




 BOSS Mashup Framework simplifies aggregating and presenting
 multiple da...
BMF Features

 •  select, group, sort, union, joins, udfs, where
 •  Text normalization and duplicate removal
 •  All-in-m...
BOSS: Yahoo HackU IIIT Bangalore
Upcoming SlideShare
Loading in …5
×

BOSS: Yahoo HackU IIIT Bangalore

1,824
-1

Published on

This presentation provides an introduction Yahoo! BOSS API

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,824
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

BOSS: Yahoo HackU IIIT Bangalore

  1. 1. Build your Own Search Service Saurabh Sahni Developer, hacker, evangelist Yahoo! HackU IIIT Bangalore | 5th December 2009
  2. 2. Outline •  About BOSS API –  What? –  Why? –  Features •  What can be built with the BOSS API? •  How to use it –  BOSS API –  Code example –  BOSS Mashup framework
  3. 3. About BOSS API
  4. 4. What? •  Open Yahoo’s core search features via web services to let 3rd parties revolutionize Search http://developer.yahoo.com/search/boss
  5. 5. Opening the search technology stack Assist Rank EXTRACT CRAWL SPAM <-> Gold Usage Retrieve Web Map Analyze Index Index
  6. 6. Opening the search technology stack Your App here WEB API Assist Rank EXTRACT CRAWL SPAM <-> Gold Usage Retrieve Web Map Analyze Index Index
  7. 7. Why? •  Removes entry barriers •  Asset to Innovate –  Develop new relevance models –  Change presentation style •  Search anywhere –  Improve Vertical Quality with Web comprehensiveness
  8. 8. BOSS API features •  No branding or attribution •  Ability to change presentation style •  Ability to re-order results and blend-in additional content •  Access to multiple verticals (web search, image, news) •  Keyword suggestions, spell checks •  Semantic data, in-links, abstracts •  Ability to monetize
  9. 9. What can be built with the BOSS API?
  10. 10. middlespot.com 10 
  11. 11. Inquisitor: Browser Extenstion 11 
  12. 12. Cluuz: http://cluuz.com
  13. 13. Keyword finder - http://keywordfinder.org/
  14. 14. askBOSS: http://ask-boss.appspot.com/
  15. 15. askBOSS: http://ask-boss.appspot.com/
  16. 16. askBOSS: http://ask-boss.appspot.com/
  17. 17. Webmeme: http://www.webmeme.in 17 
  18. 18. How to use it?
  19. 19. Get Started •  Register for an application id http://developer.yahoo.com/wsregapp/
  20. 20. Get Started… •  Documentation http://developer.yahoo.com/search/boss/ boss_guide/ •  Code samples: Javascript, PHP and Python http://www.saurabhsahni.com/boss- examples.zip
  21. 21. BOSS Search API Interface http://boss.yahooapis.com/ysearch/{vert}/v1/{query} •  {query}: term to look for (url-encoded) •  {vert} := {web, news, images, spelling} •  @ required –  appid •  @ optional –  start, count, lang, region, format, callback, sites, view
  22. 22. BOSS API Searching Slumdog Millionaire (Source: http://en.wikipedia.org/wiki/File:Slumdog_Millionaire_poster.jpg)
  23. 23. BOSS API •  Search for slumdog millionaire: –  http://boss.yahooapis.com/ysearch/web/v1/ slumdog+millionaire?appid=xyz&format=xml
  24. 24. BOSS API: XML response h"p://boss.yahooapis.com/ysearch/web/v1/slumdog+millionaire?appid=xyz&format=xml 
  25. 25. Site Restrict Search •  Search for slumdog millionaire on selected movie sites –  Add param sites=indiatimes.com,movies.yahoo.com,i mdb.com –  http://boss.yahooapis.com/ysearch/web/v1/slumdog +millionaire?appid=xyz&sites=indiatimes.com %2Cmovies.yahoo.com&format=xml
  26. 26. http://boss.yahooapis.com/ysearch/web/v1/slumdog+millionaire? appid=xyz&sites=indiatimes.com%2Cmovies.yahoo.com&format=xml
  27. 27. Search images •  http://boss.yahooapis.com/ysearch/images/v1/ slumdog +millionaire?dimensions=large
  28. 28. http://boss.yahooapis.com/ysearch/images/v1/ slumdog +millionaire
  29. 29. Search News •  http://boss.yahooapis.com/ysearch/news/v1/ slumdog +millionaire?age=15d
  30. 30. http://boss.yahooapis.com/ysearch/news/v1/ slumdog + millionaire?age=15d
  31. 31. Code Example Movie Search
  32. 32. Movie Search Code Example
  33. 33. http://www.saurabhsahni.com/boss-examples.zip
  34. 34. More with BOSS API
  35. 35. Related keywords Add parameter view=keyterms –  http://boss.yahooapis.com/ysearch/web/v1/slumdog +millionaire?appid=xyz&view=keyterms&format=xml
  36. 36. http://boss.yahooapis.com/ysearch/web/v1/slumdog +millionaire appid=xyz&view=keyterms&format=xml
  37. 37. Semantic Data •  Access structured data acquired through SearchMonkey
  38. 38. Semantic Data view=searchmonkey_feed view=searchmonkey_rdf http://developer.yahoo.com/search/boss/stuctureddata.html
  39. 39. http://boss.yahooapis.com/ysearch/web/v1/slumdog +millionaire?appid=xyz& view=searchmonkey_feed&format=xml
  40. 40. Long abstracts •  Add parameter abstract=long –  get up to 300 characters instead of 130
  41. 41. Spell Check  http://boss.yahooapis.com/ysearch/spelling/v1/ milionare?format=xml Response
  42. 42. Site Explorer •  Get page inlinks –  http://boss.yahooapis.com/ysearch/se_inlink/v1/ {URL}?appid={APPID} •  Page data: collection of subpages in a domain –  http://boss.yahooapis.com/ysearch/se_pagedata/v1/ {URL}?appid={APPID}
  43. 43. BOSS Mashup Framework •  Python (v2.5+) library •  BOSS Search SDK plus … •  SQL for remixing arbitrary XML/JSON sources http://developer.yahoo.com/search/boss/mashup.html
  44. 44. BMF + Google App Engine •  Enhanced version of BMF to GAE platform •  http://zooie.wordpress.com/2008/08/04/yahoo-boss-google-app- engine-integrated/ •  Enables quick deployment of BOSS applications online
  45. 45. More BOSS Implementations •  http://mashable.com/boss/ •  http://delicious.com/tag/bossmashup •  Add yours by tagging it with “bossmashup” on Del.icio.us!
  46. 46. One more thing… One more thing…
  47. 47. BOSS in Academic Research •  The biggest dataset available on web •  Very useful for Web-mining research experiments –  Natural language processing –  Semantic extraction –  Related keywords –  Similarity detection –  Clustering algorithms –  Spelling corrections
  48. 48. Questions? Learn more at: http://developer.yahoo.com/search/boss/ Slides at: http://www.slideshare.net/saurabhsahni/
  49. 49. Appendix
  50. 50. Search UI Templates in BOSS Mashup Framework BOSS Mashup Framework simplifies aggregating and presenting multiple data sources
  51. 51. BMF Features •  select, group, sort, union, joins, udfs, where •  Text normalization and duplicate removal •  All-in-memory storage and retrieval operations •  Ability to join lists of tables via an arbitrary predicate function (map-like) •  Search UI template framework •  Single search function provides total access to BOSS REST API

×