เบราว์เซอร์สมัยใหม่จำนวนมากมีช่องค้นหาทางด้านขวาของแถบที่อยู่ และการค้นหาโดย Google จะได้รับการติดตั้งตามค่าเริ่มต้น ดังที่แสดงด้านล่าง:
อันที่จริงแล้ว นี่คือแอปพลิเคชันของ OpenSearch ตราบใดที่คุณเขียนไฟล์ xml รูปแบบไมโครที่เกี่ยวข้อง คุณสามารถกำหนดช่องค้นหาที่เกี่ยวข้องได้ อ้างอิงถึงเอกสารคำจำกัดความของ OpenSearch โดยพื้นฐานแล้วคุณสามารถรับรูปแบบ xml พื้นฐานได้ ตัวอย่างเช่น สามารถระบุไฟล์ xml การค้นหาทั่วไปได้ดังนี้
<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
<InputEncoding>utf-8</InputEncoding>
<ชื่อสั้น>ชื่อสั้น</ชื่อสั้น>
<คำอธิบาย>คำอธิบาย</คำอธิบาย>
<ประเภทรูปภาพ="image/vnd.microsoft.icon">ไอคอน Fav</Image>
<Url type="text/html" template="http://who.am.i/search?word={searchTerms}"/>
</OpenSearchDescription>
ไฟล์ xml ข้างต้นนั้นเข้าใจง่าย ยกเว้นรูท xml แบบคงที่ คำจำกัดความอื่นๆ สามารถเข้าใจได้อย่างแท้จริง:
การเขียนรูปแบบ xml ของ OpenSearch เสร็จสมบูรณ์ สำหรับข้อมูลโดยละเอียด โปรดดูเอกสารคำจำกัดความของ OpenSearch ต่อไป เราต้องเพิ่มการค้นหานี้ลงในเพจ โดยพื้นฐานแล้วมีสองวิธี โดยจะต้องเพิ่มแท็กลิงก์ไว้ที่ส่วนหัวของหน้า (คล้ายกับ RSS) และเพิ่มโดยใช้ Javascript (เช่น การกำหนดปุ่มเพื่อทริกเกอร์) การเพิ่มแท็กลิงก์ทำได้ง่ายมาก โดยมีรูปแบบดังนี้
<link rel="search" type="application/opensearchdescription+xml"
href="http://who.am.i/search.xml" title="ShortName" />
เช่นเดียวกับ RSS rel และประเภทได้รับการแก้ไขแล้ว โดยหลักๆ แล้วเราระบุ href (เส้นทาง url ของ xml ข้างต้น เพื่อความปลอดภัย ให้ใช้เส้นทางที่แน่นอน ซึ่งก็คือ เริ่มต้นด้วย http://) และชื่อ (นั่นคือ เส้นทางแบบสั้น ชื่อของการค้นหา) ด้วยวิธีนี้ เมื่อคุณเปิดหน้านี้ใน Explorer และ Firefox คุณจะเห็นเมนูที่เกี่ยวข้อง ดังแสดงในรูป:
การเพิ่มโดยใช้ Javascript จะยุ่งยากกว่า (บางทีสถานการณ์อาจจะดีขึ้นมากในตอนนี้) เราใช้ฟังก์ชันส่วนขยายเบราว์เซอร์เป็นหลัก มีพารามิเตอร์ window.external.AddSearchProvider ใน Explorer (เอกสารประกอบโดยละเอียด) วิธีการโทรทั่วไปมีดังนี้
window.external.AddSearchProvider('http://who.am.i/search.xml');
ลิงก์ในพารามิเตอร์คือเนื้อหาในลิงก์ด้านบน มีให้ใช้งานภายใต้ Firefox
window.sidebar.addSearchEngine(
"http://who.am.i/search.xml", /* URL ของโปรแกรม */
"favicon.ico", /* URL ไอคอน */
"ShortName", /* ชื่อเครื่องยนต์ */
"คำอธิบาย" ); /* ชื่อหมวดหมู่ */
พารามิเตอร์และตัวอย่างเป็นไปตามที่อธิบายไว้ในโค้ดตัวอย่าง (เอกสารอย่างเป็นทางการ) เป็นที่น่าสังเกตว่า Firefox2 และเวอร์ชันใหม่กว่านั้น "เข้ากันได้" กับวิธีการเรียก window.external.AddSearchProvider ของ Explorer (รายละเอียด) จากนั้นโค้ด Javascript ที่เกี่ยวข้องของเราก็สามารถเขียนได้แบบนี้ (เพื่อให้เข้ากันได้กับเวอร์ชันก่อน Firefox2 ให้เพิ่มอย่างอื่นหากเห็นว่าไม่จำเป็น ก็ไม่สามารถเพิ่มได้)
ฟังก์ชั่น addEngine(){
ถ้า (window.external || window.external.AddSearchProvider) {
window.external.AddSearchProvider('http://who.am.i/search.xml');
} อื่นถ้า (window.sidebar && window.sidebar.addSearchEngine) {
window.sidebar.addSearchEngine(
"http://who.am.i/search.xml",
"favicon.ico", /* URL ไอคอน */
"ShortName", /* ชื่อเครื่องยนต์ */
"คำอธิบาย" ); /* ชื่อหมวดหมู่ */
-
ด้วยวิธีนี้ คุณสามารถลงทะเบียนฟังก์ชันนี้กับเหตุการณ์การคลิกของลิงก์หรือปุ่มได้ และกล่องยืนยันจะปรากฏขึ้น ดังแสดงในรูป หลังจากที่ผู้ใช้คลิกการยืนยัน ระบบจะเพิ่มลงในช่องค้นหาของเบราว์เซอร์