Федеративный поиск в Windows 7
Федеративный поиск позволяет пользователям искать информацию на удаленных источниках данных прямо из окна Windows Explorer. Это означает, что прямо из Windows Explorer вы можете искать информацию на тех веб-сайтах, лентах и иных удаленных структурированных источниках, которые предоставляют такую возможность через простой интерфейс. Вы можете использовать окно поиска в Windows Explorer таким же образом, как и для поиска локального контента. Результаты поиска отображаются аналогичным образом, включая окрашивание и даже предварительный просмотр файла. Результаты ведут себя так же, как и иные элементы в Windows Explorer:
Преимущества интеграции вашего источника данных в Windows Explorer состоит в том, что пользователи могут получить информацию через знакомый пользовательский интерфейс Windows Explorer. Пользователи смогут видеть файлы из вашего удаленного источника данных так, будто они размещены докально, включая значки приложений и контекстные меню. У них есть возможность предварительно просмотреть документы или веб-страницы, видеть эскизы изображений, перетаскивать файлы непосредственно на рабочий стол или в электронную почту. Обратите внимание на вышеприведенное изображение: файлы с www.flickr.com отображаются с указанием размера, названия, тэга, даты создания и так далее.
В этой статье, основанной на
Как это работает?
Windows 7 поддерживает подключение внешних источников данных к клиентской версии Windows через протокол OpenSearch. Стандарт OpenSearch v1.1 определяет простые форматы файла, которые могут быть использованы для описания запросов к веб-службе и формата, в котором веб-служба должна сформировать результаты, которые будут возвращены клиенту. По существу это означает, что вы можете указать Windows Explorer на внешний источник данных. Используя стандартный протокол OpenSearch, Windows Explorer направляет поисковый запрос, а удаленный источник данных возвращает грамотно сформированную структуру данных, которая может быть обработана и представлена пользователю.
Чтобы добавить нового поставщика OpenSearch, вы должны установить файл Search Connector Description (файл с расширением .osdx). Внутренний формат файла для .osdx - это OpenSearch Description XML. Вот содержимое .osdx-файла для поиска по Flickr:
<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"
xmlns:ms-ose="http://schemas.microsoft.com/opensearchext/2009/">
<ShortName>Flickr Search</ShortName>
<Description>OpenSearch for Flickr via Windows 7 Search Federation.</Description>
<Url type="text/html"
template="http://www.flickr.com/search/?w=all&q={searchTerms}&m=text"/>
</OpenSearchDescription>
Обратите внимание, насколько прост файл. Он включает URL к поиску Flickr, который определяет условия поиска. За дополнительной информацией обращайтесь к спецификации
У конечных пользователей есть несколько вариантов установки нового удаленного источника данных с федеративным поиском Windows: они могут открыть .osdx-файл, нажимая на одну из ссылок на веб-сайте, открыть один из предоставленных кем-то в совместно используемый ресурс или через почтовое вложение. После этого в папке " Searches" в Windows (%userprofile %/Searches) создается файл .searchconnector-ms, при этом ярлык на него помещается в папку "Links" (%userprofile %/Links). Этот ярлык отображается в разделе избранного навигационной панели Windows Explorer.
Коммуникация между Windows Explorer и веб-службой OpenSearch осуществляется через уровень данных Windows, который может взаимодействовать с различными типами источников данных через так называемые поставщики хранилища Windows (в оригинале Windows Store Providers). Каждый поставщик специализируется на коммуникации с источниками данных, которые поддерживают определенный протокол и имеют специфические возможности. Поставщик OpenSearch взаимодействует с хранилищами данных с веб-службой, поддерживающей стандарт OpenSearch.
Приступаем к практике. Загрузите
Обратите внимание, что в навигационную панель Windows Explorer в раздел избранного добавлен новый ярлык под названием Flickr Search. Нажмите на этот ярлык и введите в окне поиска Windows Explorer запрос "Seattle". Подождите несколько секунд, поскольку результаты передаются с веб-сайта Flickr.
По мере ввода поискового запроса в поле для поиска вверху Windows Explorer запрос передается к поставщику OpenSearch (описанному в файле .searchconnector-ms), который затем пересылает запрос удаленному хранилищу данных (URL, в котором содержатся условия поиска в .osdx-файле). Удаленная веб-служба отвечает на запрос с результатами в XML-файле либо через RSS, либо черкз Atom. Провайдер OpenSearch преобразует элементы XML-файла в элементы, которые, в конечном счете, возвращаются в Windows Explorer, где они отображаются пользователю. Нижеследующее изображение иллюстрирует поток данных:
Для подключения хранилища данных вашей веб-службы к Windows 7 требуется всего три шага:
1. Разрешить поиск в хранилище данных прямо из Windows, используя OpenSearch с выводом в виде Atom или RSS.
2. Создать .osdx-файлы, описывающие процедуру подключения к веб-службе и то, как рахмечать любые выбранные элементы в RSS или Atom XML.
3. Установить поисковые коннекторы на клиентских машинах с Windows с помощью .osdx-файлов.
Протокол OpenSearch обеспечивает массу способов для настройки вывода результатов поиска в Windows Explorer. Например, вы можете:
- Создать шаблон для начальных запросов
- Установить максимальное число результатов и создать страницы
- Настроить отображение результатов
- Привязать свойства к системе свойств Windows Explorer
- Генерировать подсказки
На самом деле, есть многое, что следует знать о создании собственных поставщиков поиска OpenSearch. Если вам интересна эта тема, ознакомьтесь с
Источник:
Перевод: evgeniya.zwezdina
По теме
- Программируем панель задач Windows 7: панель миниатюр
- Использование сенсоров в приложении: реализация в managed-коде (ч.1)
- Использование сенсоров в приложении: реализация в native-коде (ч.1)
- Я тебя чувствую: использование платформы Sensor в Windows 7
- Доступны записи с Windows 7 PDC Boot Camp
- Fishbowl для Facebook с использованием новой панели задач Windows 7
- Программируем для Windows 7 в Visual Studio 2010
- Новая версия Windows API Code Pack
- Программирование служб Windows 7 с триггерами (ч.2)
- Программирование служб Windows 7 с триггерами (ч.1)