Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

OpenSearch description document discovery and Chrome

I'm trying to figure out how to advertise my web application's search endpoint using OpenSearch (see http://www.opensearch.org/Specifications/OpenSearch/1.1#OpenSearch_description_document), but even my simplest example does not work. I have index.html with:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
    <head profile="http://a9.com/-/spec/opensearch/1.1/">
        <link title="Search" rel="search" type="application/opensearchdescription+xml" href="osdd.xml"/>
    </head>
    <body>
        hello
    </body>
</html>

And osdd.xml containing:

<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/">
    <ShortName>test</ShortName>
    <Description>test</Description>
    <Url type="text/html" template="http://example.com?q={searchTerms}"/>
</OpenSearchDescription>

But nothing appears to work. Chrome's "tab to search" behavior does not show up, and using the developer tools Chrome does not seem to be loading osdd.xml at all.

Any clues?

like image 568
Landon Kuhn Avatar asked Dec 27 '11 23:12

Landon Kuhn


2 Answers

Loading of the osdd.xml does not show up on the Developer Tools > Network tab.

http://code.google.com/p/chromium/issues/detail?id=58801#c3 (comment 3) mentions that you need to search at least once to add the search engine.

I also discovered that you need to delete existing search engines from the Settings > Manage Search Engines and restart the browser to see effects of changes to the osdd file.

like image 177
Lord Loh. Avatar answered Nov 15 '22 21:11

Lord Loh.


Sorry for digging up this thread but I had a similar issue and managed to resolve it, so I leave my findings here if anyone finds it.

In my case, the XML file wasn't on UTF-8 thus not being correctly loaded by Chrome. Please ensure your file is on UTF-8.

Cheers!

like image 38
jpsfs Avatar answered Nov 15 '22 23:11

jpsfs