OpenSearch
Upcoming SlideShare
Loading in...5
×
 

OpenSearch

on

  • 5,500 views

 

Statistics

Views

Total Views
5,500
Views on SlideShare
5,487
Embed Views
13

Actions

Likes
0
Downloads
47
Comments
1

2 Embeds 13

http://www.slideshare.net 12
http://webcache.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • thank you lot,its great presentation
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

OpenSearch OpenSearch Presentation Transcript

  • OpenSearch Dr. Harry Chen CMSC 491S/691S March 12, 2008
  • Agenda
    • What’s OpenSearch technology?
    • Overview OpenSearch specification
      • Describe an OpenSearch service
      • Advertise and compose a search request
      • Discover a new OpenSearch service
    • Inside OpenSearch application implementation
  • OpenSearch at a9.com
  • OpenSearch in Firefox
  • OpenSearch
    • OpenSearch is a set of standards for describing search services and publishing search results on the Web.
    • XML is used to describe services and search results.
    • Search results are published in a syndication format (RSS or Atom)
  • Typical OpenSearch Model OpenSearch Client OpenSearch Services
  • Communication OpenSearch Client (e.g., a9.com) OpenSearch Services (e.g., IMDB) Query string (plain text) Search results (HTML) HTTP GET request http://foo.com/os?q=stuff HTTP Response RSS/Atom (XML) You
  • OpenSearch != Meta-Search Engine
    • OpenSearch is a technology for building search services for the open Web.
    • It’s not a search engine or a meta-search engine
    • But, you can use this technology to build meta-search engines, vertical-market search engines, your-personal-search engines, my-social-network-search engines etc.
  • Key Features Autodiscovery Search Result Description Search URL Template Service Description OpenSearch
  • Service Description
    • An XML document that describes the properties of a search service. E.g.
      • “What can you tell me this service?”
      • “Who developed this service?”
      • “Does this service output adult-content?”
      • “What’s the license model for this service?”
      • “What’s the URL to call the search service?”
      • And more…
    http://www.opensearch.org/Specifications/OpenSearch/1.1/Draft_3#OpenSearch_description_elements
  • An Example
    • Yahoo! Web Search
    * Defined in gnizr Open Source ** In our gnizr installation: http://eb1.cs.umbc.edu:8080/gnizr/settings/opensearch/yahoo-searchdescription.xml
  • Publishing the Service Description
    • You announce the availability of the search service by publishing the description document on the Web
    • Few options
      • Submit the description doc URL to an OpenSearch directory
      • Embed a <meta/> tag description in various HTML pages for crawlers to discover
      • Describe this information in your RSS feeds
  • Found a Service, Now what?
    • You need to know how to “invoke” the search request.
    • This information is defined in the <Url/> in the service description doc.
  • Decoding the URL Template
    • The URL template tells the client how to compose a URL used for sending search request.
    • It’s a template because it has special syntax for “value-replacement”.
      • {searchTerms}  put your search string here
      • {startIndex}  return search result from this idx
      • Etc.
  • An Yahoo! example Place your search query here. (e.g., java) Where you want the index to start for the matching search results (e.g., 1)
  • Other Terms in the URL Template
    • {count} : # of results per page
    • {startPage}: the page number of the set of search result
    • {startIndex}: the index of the first search result desired
    • {language}: desired language of the search result
    • And more…
    http://www.opensearch.org/Specifications/OpenSearch/1.1/Draft_3#OpenSearch_1.1_parameters
  • Try-it-yourself
    • If you feed the URL into your browser…
  • Reading the Search Result
    • Search Results are usually described in RSS or Atom
    • Special OpenSearch vocabularies are used to describe additional search information that can’t expressed in the core RSS or Atom vocabularies.
  • Result in RSS 2.0 Atom vocab. is used to “point to” the service description URL
  • Result in Atom
  • How to Announce the Service
    • Other than manually submit your service description to an OpenSearch directory, you can exploit autodiscovery .
    • A standard way for crawlers and clients to discover your services from HTML and RSS.
  • In HTML Pages http://www.opensearch.org/Specifications/OpenSearch/1.1
  • In RSS feeds http://www.opensearch.org/Specifications/OpenSearch/1.1
  • An Autodiscovery Example In Firefox, whenever you see a “blueish” icon means an OpenSearch service is discovered. http://en.wikipedia.org/wiki/Opensearch
  • How Wikipedia Implements OpenSearch http://en.wikipeida.org  view source Service Description Doc http://en.wikipedia.org/w/opensearch_desc.php
  • Try-it-yourself
    • Enter the URL into the browser
    Do you know how to compose a search request for Wikipedia?
  • What’s this? a different URL for getting search term suggestions!
  • OpenSearch dev in Firefox
    • http://developer.mozilla.org/en/docs/Creating_OpenSearch_plugins_for_Firefox
  • Summary
    • OpenSearch is a specification for describing and publishing search services on the open Web.
    • OpenSearch is not a search engine.
    • Many Web sites support this standard, and browsers can recognize and make use these services.
    http://opensearch.org