СПОСОБ, СЕРВЕР И ЭЛЕКТРОННОЕ УСТРОЙСТВО СОЗДАНИЯ ПРЕДЛОЖЕНИЙ ДЛЯ ПОИСКОВОГО ЗАПРОСА Российский патент 2017 года по МПК G06F17/00 

Описание патента на изобретение RU2632269C2

Область техники

[01] Настоящее техническое решение относится к представлению предложений для поискового запроса в окне браузера.

Уровень техники

[02] Браузерные приложения, например, Mozilla Firefox™, Google Chrome™, Yandex™ и так далее, могут быть использованы для доступа к информации через разнообразные типы глобальных или локальных сетей передачи данных (Интернет, Всемирная Паутина, локальные сети и подобные им). Доступная информация включает в себя множество типов контента, например, фото, видео и так далее, и относится к широкому спектру тем, например, среди прочего, новости, погода, развлечения, финансы и так далее. Доступ к информации осуществляется с использованием широкого спектра электронных устройств, например, стационарных компьютеров, ноутбуков, смартфонов, планшетов и так далее.

[03] Пользователи могут получить доступ к конкретному ресурсу напрямую, введя адрес ресурса (обычно URL или единый указатель ресурса, например, www.webpage.com), или же выбрав ссылку в электронном сообщении или на другом веб-ресурсе. Браузерные приложения обычно имеют функцию поиска, которая позволяет пользователю найти местоположение веб-ресурсов, адрес или ссылка на который пользователю неизвестны. При осуществлении поиска пользователь обычно желает найти наиболее релевантные результаты и желает получить эти результаты относительно быстро. Иногда, однако, пользователь может не знать, какой именно поисковый запрос предоставит ему или ей информацию, которую он(а) искал(а), и может поэтому возникнуть необходимость вводить множество вариантов поискового запроса для получения желаемого поискового результата. Чтобы по меньшей мере частично решить эти проблемы, браузерные приложения также имеют функцию предложений для поисковых запросов, которые предоставляют пользователю предложения для поисковых запросов. Например, в ответ на то, что пользователь печатает «Молли» в поисковой системе Google™, пользователь получает список предложений в выпадающем меню, а именно «Молли Рингуолд», «Молли Мэйд» и так далее. Основная задача этих предложений - предоставлять более удобный для пользователя поиск и помогать пользователю более результативно изучать объект интереса. Предложения для поискового запроса могут, таким образом, быть полезны для ориентирования пользователя при осуществлении поиска.

Раскрытие

[04] Задачей предлагаемого технического решения является устранение по меньшей мере некоторых недостатков, присущих известному уровню техники.

[05] Варианты осуществления настоящего технического решения были разработаны на основе предположений ее изобретателей о том, что существует по меньшей мере одна проблема или сфера, для которых возможны улучшения, связанные с решениями, представленными в известном уровне техники.

[06] Первым объектом настоящего технического решения является способ создания предложений для поискового запроса, полученного от пользователя в поисковом приложении. Способ выполняется процессором, который функционально связан с поисковым приложением. Способ включает в себя получение поискового запроса, причем поисковый запрос является полученным поисковым запросом и включает в себя по меньшей мере один полученный термин поискового запроса. Также осуществляется получение указания текущего положения курсора по отношению к полученному поисковому запросу. В ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, для определения предложенного поискового запроса выполняется один из множества алгоритмов предложений, соответствующий одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора. Каждое из множества предварительно определенных положений курсора связано, следовательно, по меньшей мере с одним из множества предварительно определенных предложенных действий. Каждое из множества предварительно определенных предложенных действий соответствует одному из множества алгоритмов предложений.

[07] В некоторых вариантах осуществления настоящего технического решения множество предварительно определенных предложенных действий включает в себя предложенное действие вставки для вставки предложенного поискового термина в полученный поисковый запрос. Предложенное действие вставки связано с алгоритмом предложенной вставки. Предложенное действие удаления для удаления указанного курсором поискового термина в полученном поисковом запросе связано с алгоритмом предложенного удаления. Предложенное действие замещения для замещения указанного курсором поискового термина в полученном поисковом запросе связано с алгоритмом предложенного замещения.

[08] В некоторых вариантах осуществления настоящего технического решения множество предварительно определенных положений курсора включает в себя положение курсора в начале поискового запроса, положение курсора в конце поискового запроса, положение курсора в начале поискового термина, положение курсора в конце поискового термина и положение курсора внутри поискового термина.

[09] В некоторых вариантах осуществления настоящего технического решения множество предварительно определенных предложенных действий включает в себя предложенное действие вставки для вставки предложенного слова в полученный поисковый запрос. Предложенное действие вставки связано с алгоритмом предложенной вставки. Действие предложенного удаления для удаления указанного курсором поискового термина по меньшей мере из одного полученного поискового термина в полученном поисковом запросе связано с алгоритмом предложенного удаления. Действие предложенного замещения для замещения указанного курсором поискового термина связано с алгоритмом предложенного замещения. Положение курсора в начале поискового запроса связано с действием предложенной вставки. Положение курсора в конце поискового запроса связано с действием предложенной вставки и действием предложенного удаления. Положение курсора в начале поискового термина связано с действием предложенной вставки. Положение курсора в конце поискового термина связано с действием предложенного замещения и действием предложенного удаления. Положение курсора внутри поискового термина связано с действием предложенного замещения и действием предложенного удаления.

[10] В некоторых вариантах осуществления настоящего технического решения и алгоритм предложенной вставки, соответствующий действию предложенной вставки, и алгоритм предложенного удаления, соответствующий действию предложенного удаления, выполняются в ответ на то, что текущее положение курсора является положением курсора в конце поискового запроса.

[11] В некоторых вариантах осуществления настоящего технического решения и алгоритм предложенного замещения, соответствующий действию предложенного замещения, и алгоритм предложенного удаления, соответствующий действию предложенного удаления, выполняются в ответ на то, что текущее положение курсора является положением курсора в конце поискового термина.

[12] В некоторых вариантах осуществления настоящего технического решения и алгоритм предложенного замещения, соответствующий действию предложенного замещения, и алгоритм предложенного удаления, соответствующий действию предложенного удаления, выполняются в ответ на то, что текущее положение курсора является положением курсора внутри поискового термина.

[13] В некоторых вариантах осуществления настоящего технического решения выполнение алгоритма предложенной вставки включает в себя выбор предложенного поискового запроса из множества предыдущих поисковых запросов. Каждый из множества предыдущих поисковых результатов включает в себя все по меньшей мере из одного полученного поискового термина из полученного поискового запроса, и по меньшей мере один поисковой термин в дополнение к каждому по меньшей мере из одного полученного поискового термина.

[14] В некоторых вариантах осуществления настоящего технического решения выполнение алгоритма предложенной замены включает в себя определение поискового термина, указанного курсором, в полученном поисковом запросе, причем первая часть полученного поискового термина, находится перед поисковым термином, указанным курсором, в полученном поисковом запросе, а вторая часть полученного поискового запроса, находится после поискового термина, указанного курсором, в полученном поисковом запросе. Предложенный поисковый запрос выбирается из множества предыдущих поисковых запросов. Каждый из множества предыдущих поисковых запросов включает в себя первую часть полученного поискового запроса, вторую часть полученного поискового запроса, находящуюся после первой части полученного поискового запроса, и по меньшей мере один поисковый термин, который отличается от указанного курсором поискового термина, и находится между первой частью полученного поискового запроса и второй частью полученного поискового запроса.

[15] В некоторых вариантах осуществления настоящего технического решения выполнение алгоритма предложенного удаления включает в себя определение указанного курсором поискового термина в полученном поисковом запросе, причем первая часть полученного поискового термина находится перед указанным курсором поисковым термином в полученном поисковом запросе, а вторая часть полученного поискового запроса находится после указанного курсором поискового термина в полученном поисковом запросе. Указанный курсором поисковый термин удаляется в полученном поисковом запросе для определения предложенного поискового запроса в ответ на то, что по меньшей мере один из множества предыдущих поисковых запросов обладает первой частью полученного поискового запроса, за которой непосредственно следует вторая часть полученного поискового запроса без указанного курсором термина, находящегося между первой частью полученного поискового запроса и второй частью полученного поискового запроса.

[16] В некоторых вариантах осуществления настоящего технического решения предложенный поисковый запрос определяется с использованием предыдущих поисковых запросов.

[17] В некоторых вариантах осуществления настоящего технического решения определение предложенного поискового запроса включает в себя определение множества предложенных поисковых запросов посредством выполнения одного из множества алгоритмов предложений, соответствующих одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора.

[18] В некоторых вариантах осуществления настоящего технического решения по меньшей мере одно из множества предварительно определенных положений курсора связано с множеством предварительно определенных предложенных действий.

[19] В некоторых вариантах осуществления настоящего технического решения каждый из множества алгоритмов предложений соответствующий каждому из множества предварительно определенных предложенных действий, связанных с текущим положением курсора, выполняется в ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора.

[20] В некоторых вариантах осуществления настоящего технического решения одно из предварительно определенных предложенных действий, связанное с текущим положением курсора, является первым предложенным действием, связанным с текущим положением курсора. Один из множества алгоритмов предложений является первым алгоритмом предложений, соответствующим первому предложенному действию. Предложенный поисковый запрос является первым предложенным поисковым запросом, определенным с использованием первого алгоритма предложения, соответствующего первому предложенному действию. Кроме того, текущее положение курсора связано со вторым предложенным действием из множества предложенных действий, а второй алгоритм предложения соответствует второму предложенному действию. Способ также включает в себя определение второго предложенного поискового запроса посредством выполнения второго алгоритма предложения, соответствующего второму предложенному действию, связанному с текущим положением курсора.

[21] В некоторых вариантах осуществления настоящего технического решения предложенный поисковый запрос предоставляется как выбираемый пользователем элемент в окне поискового приложения, причем окно поискового приложения включает в себя полученный поисковый запрос.

[22] В некоторых вариантах осуществления настоящего технического решения представление предложенного поискового запроса предоставляется как выбираемый пользователем элемент в окне поискового приложения, причем окно поискового приложения включает в себя полученный поисковый запрос.

[23] В некоторых вариантах осуществления настоящего технического решения представление предложенного поискового запроса включает в себя одно из: полный предложенный поисковый запрос, часть предложенного поискового запроса, и удаление части полученного поискового запроса.

[24] Вторым предметом настоящего технического решения является сервер, включающий в себя процессор и интерфейс сетевого обмена данными, функционально подключенный к процессору для обмена данными с электронным устройством, выполняющим поисковое приложение, по сети передачи данных. Процессор выполнен с возможностью получать поисковый запрос от электронного устройства, причем поисковый запрос является полученным поисковым запросом и включает в себя по меньшей мере один полученный термин поискового запроса. Также осуществляется получение от электронного устройства указания текущего положения курсора по отношению к полученному поисковому запросу. В ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, для определения предложения для поискового запроса выполняется один из множества алгоритмов предложений, соответствующий одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора. Каждое из множества предварительно определенных положений курсора связано, следовательно, по меньшей мере с одним из множества предварительно определенных предложенных действий. Каждое из множества предварительно определенных предложенных действий соответствует одному из множества алгоритмов предложений.

[25] В некоторых вариантах осуществления настоящего технического решения сервер также выполнен с возможностью предоставлять определенный предложенный поисковый запрос электронному устройству для представления пользователю электронного устройства.

[26] Вторым объектом настоящего технического решения является электронное устройство, включающее в себя процессор, пользовательское устройство вывода, функционально подключенное к процессору и настроенное для отображения окна поискового приложения, пользовательское устройство ввода, функционально подключенное к процессору и настроенное на предоставление пользователю возможности вводить поисковый запрос в окно поискового приложения. Указательное устройство функционально подключено к пользовательскому устройству вывода и процессору. Указательное устройство настроено на предоставление пользователю возможности устанавливать положение курсора в поисковом запросе в окне поискового приложения. Интерфейс сетевого обмена данными функционально подключен к процессору и настроен на обмен данными с сервером через сеть передачи данных. Процессор выполнен с возможностью получать поисковый запрос, причем поисковый запрос является полученным поисковым запросом и включает в себя по меньшей мере один полученный термин поискового запроса. Также осуществляется получение указания текущего положения курсора по отношению к полученному поисковому запросу. В ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, для определения предложенного поискового запроса выполняется один из множества алгоритмов предложений, соответствующий одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора. Каждое из множества предварительно определенных положений курсора связано, следовательно, по меньшей мере с одним из множества предварительно определенных предложенных действий. Каждое из множества предварительно определенных предложенных действий соответствует одному из множества алгоритмов предложений. Представление определенного предложения для поискового запроса предоставляется в окне поискового приложения в пользовательском устройстве вывода.

[27] В контексте настоящего описания «сервер» подразумевает под собой компьютерную программу, работающую на соответствующем оборудовании, которая способна получать запросы (например, от клиентских устройств) по сети и выполнять эти запросы или инициировать выполнение этих запросов. Оборудование может представлять собой один физический компьютер или одну физическую компьютерную систему, но ни то, ни другое не является обязательным для настоящего технического решения. В контексте настоящего технического решения использование выражения «сервер» не означает, что каждая задача (например, полученные команды или запросы) или какая-либо конкретная задача будет получена, выполнена или инициирована к выполнению одним и тем же сервером (то есть одним и тем же программным обеспечением и/или аппаратным обеспечением); это означает, что любое количество элементов программного обеспечения или аппаратных устройств может быть вовлечено в прием/передачу, выполнение или инициирование выполнения любого запроса или последствия любого запроса, связанного с клиентским устройством, и все это программное и аппаратное обеспечение может быть одним сервером или несколькими серверами; оба варианта включены в выражение «по меньшей мере один сервер».

[28] В контексте настоящего описания «веб-ресурс» подразумевает под собой любые данные или набор данных, которые могут предоставлены издателем через сеть, и которые связаны с адресом веб-ресурса. Не ограничивающими примерами веб-ресурсов являются HTML страницы, документы, изображения, видеозаписи, ленты новостей, или же множества вышеприведенных файлов. Веб-ресурсы могут включать в себя контент, такой, например, как слова, фразы, изображения и т.д., и/или встроенную информацию, например, мета-данные, гиперссылки и/или встроенные инструкции (например, сценарии JavaScript).

[29] В контексте настоящего описания «клиентское устройство» или «электронное устройство» подразумевает под собой аппаратное устройство, способное работать с программным обеспечением, подходящим к решению соответствующей задачи. Таким образом, примерами клиентских устройств (среди прочего) могут служить персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.п.) смартфоны, планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Следует иметь в виду, что устройство, ведущее себя как клиентское устройство в настоящем контексте, может вести себя как сервер по отношению к другим клиентским устройствам. Использование выражения «клиентское устройство» не исключает возможности использования множества клиентских устройств для получения/отправки, выполнения или инициирования выполнения любой задачи или запроса, или же последствий любой задачи или запроса, или же этапов любого вышеописанного способа.

[30] В контексте настоящего описания «информация» включает в себя информацию любого рода или типа, которая может храниться в базе данных. Таким образом, информация включает в себя, среди прочего, аудиовизуальные произведения (изображения, видео, звукозаписи, презентации и т.д.), данные (данные о местоположении, цифровые данные и т.д.), текст (мнения, комментарии, вопросы, сообщения и т.д.), документы, таблицы и т.д.

[31] Каждый вариант осуществления настоящего технического решения преследует по меньшей мере одну из вышеупомянутых целей и/или объектов. Следует иметь в виду, что некоторые объекты настоящего технического решения, полученные в результате попыток достичь вышеупомянутой цели, могут удовлетворять и другим целям, отдельно не указанным здесь.

[32] Дополнительные и/или альтернативные характеристики, аспекты и преимущества вариантов осуществления настоящего технического решения станут очевидными из последующего описания, прилагаемых чертежей и прилагаемой формулы изобретения.

Краткое описание чертежей

[33] Для лучшего понимания настоящего технического решения, а также других его аспектов и характерных черт сделана ссылка на следующее описание, которое должно использоваться в сочетании с прилагаемыми чертежами, где:

[34] На Фиг. 1 схематически представлена система, выполненная в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[35] На Фиг. 2 схематически представлена блок-схема электронного устройства, изображенного на Фиг. 1, выполненная в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[36] На Фиг. 3 схематически представлена часть первого окна поискового приложения с поисковым запросом, введенным в интерфейс поисковых запросов в этом окне, и курсор, расположенный в интерфейсе поисковых запросов в начале поискового запроса, и показан интерфейс предложенных поисковых запросов в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[37] На Фиг. 4 схематически представлено окно поискового приложения, изображенное на Фиг. 3, прежде чем поисковый запрос был полностью введен в интерфейс поисковых запросов в этом окне, и курсор, расположенный в интерфейсе поисковых запросов в конце поискового запроса, и показан соответствующий интерфейс предложенных поисковых запросов в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[38] На Фиг. 5 схематически представлено окно поискового приложения, изображенное на Фиг. 3, и курсор, расположенный в интерфейсе поисковых запросов в начале поискового термина, и показан соответствующий интерфейс предложенных поисковых запросов в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[39] На Фиг. 6 схематически представлен другой вариант осуществления окна поискового приложения, и курсор, расположенный в интерфейсе поисковых запросов внутри поискового термина, и показан соответствующий интерфейс предложенных поисковых запросов и интерфейс поисковых результатов в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[40] На Фиг. 7 схематически представлено окно поискового приложения, изображенное на Фиг. 3, и курсор, расположенный в интерфейсе поисковых запросов в конце поискового термина, и показан соответствующий интерфейс предложенных поисковых запросов и интерфейс поисковых результатов в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[41] На Фиг. 8 схематически представлено окно поискового приложения, изображенное на Фиг. 7, после выбора предложенного поискового запроса в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[42] На Фиг. 9 схематически представлено окно поискового приложения, изображенное на Фиг. 3, после выбора предложенного поискового запроса в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[43] На Фиг. 10 схематически представлено окно поискового приложения, изображенное на Фиг. 9, перед завершением выбора предложенного поискового запроса в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[44] На Фиг. 11 схематически представлены некоторые этапы алгоритма создания предложенных поисковых запросов, как показано на Фиг. 4 в соответствии с неограничивающим вариантом осуществления настоящего технического решения;

[45] На Фиг. 12 схематически представлены некоторые этапы другого алгоритма создания предложенных поисковых запросов, как показано на Фиг. 6 в соответствии с неограничивающим вариантом осуществления настоящего технического решения; и

[46] На Фиг. 13 представлена блок-схема способа создания предложенных поисковых запросов в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем.

Осуществление изобретения

[47] На Фиг. 1 представлена принципиальная схема системы 100, которую возможно использовать с некоторыми вариантами осуществления настоящего технического решения, не ограничивающими его объем. Важно иметь в виду, что нижеследующее описание системы 100 представляет собой описание показательных вариантов осуществления настоящего технического решения. Таким образом, все последующее описание системы 100 представлено только как описание показательного примера настоящего технического решения. Это описание не предназначено для определения объема или установления границ настоящего технического решения.

[48] Некоторые полезные примеры модификаций системы 100 также могут быть охвачены нижеследующим описанием. Целью этого является также исключительно помощь в понимании, а не определение объема и границ настоящего технического решения. Эти модификации не представляют собой исчерпывающий список, и специалистам в данной области техники будет понятно, что возможны и другие модификации. Кроме того, это не должно интерпретироваться так, что там, где не были изложены примеры модификаций, никакие модификации невозможны, и/или что то, что описано, является единственным вариантом осуществления этого элемента настоящего технического решения. Как будет понятно специалисту в данной области техники, это, скорее всего, не так. Кроме того, следует иметь в виду, что система 100 представляет собой в некоторых конкретных проявлениях достаточно простой вариант осуществления настоящего технического решения, и в подобных случаях представлен здесь с целью облегчения понимания. Как будет понятно специалисту в данной области техники, многие варианты осуществления настоящего технического решения будут обладать гораздо большей сложностью.

[49] В общем случае система 100 выполнена с возможностью получать поисковые запросы и проводить веб-поиски (например, обычные и вертикальные поиски) в ответ на эти запросы, а также обрабатывать поисковые запросы в соответствии с вариантами осуществления настоящего технического решения, не ограничивающими его объем. Поэтому любой вариант системы, выполненный с возможностью обрабатывать поисковый запрос пользователя, может быть адаптирован специалистом к выполнению вариантов осуществления настоящего технического решения после того, как специалистом было прочитано настоящее описание.

[50] Система 100 включает в себя электронное устройство 110, сервер 120 и сеть 130 передачи данных. Электронное устройство 110 обменивается данными с сервером 120 через сеть 130 передачи данных. Несмотря на то, что в настоящем описании в системе 100 есть одно электронное устройство 110 и один сервер 120, следует понимать, что система 100 может включать в себя более одного электронного устройства 110 и более одного сервера 120.

[51] Электронное устройство 110 обычно связано с пользователем (не показан) и, таким образом, иногда упоминается как «клиентское устройство». В приведенном примере электронное устройство 110 является ноутбуком. Однако варианты осуществления электронного устройства 110 не ограничиваются ноутбуком 110. В качестве примера, электронное устройство 110 может быть реализовано как персональный компьютер (настольный компьютер, ноутбук, нетбук и т.п.), беспроводное электронное устройство (мобильный телефон, смартфон, планшет и т.п.), а также сетевое оборудование (маршрутизатор, коммутатор или шлюз). Общий вариант осуществления электронного устройства 110 известен в области техники, и поэтому не будет здесь подробно описан.

[52] На Фиг. 2 электронное устройство 110 включает в себя пользовательское устройство 210 ввода (например, клавиатуру, мышь, сенсорную панель, сенсорный экран, микрофон и так далее) для получения пользовательских вводов. Электронное устройство 110 включает в себя пользовательское устройство 220 вывода в виде экрана (дисплея). Электронное устройство 110 также включает в себя другие формы пользовательских устройств 220 вывода, например, динамик, принтер и так далее для предоставления других типов визуального, слухового или тактильного вывода пользователю, но эти формы пользовательских устройств 220 вывода не будут описаны здесь. Для упрощения пользовательское устройство 220 вывода будет обозначаться здесь как экран 220. Электронное устройство 110 включает в себя указательное устройство 225 для размещения курсора 310 (Фиг. 3) на экране. Как будет очевидно для специалиста в данной области техники, расположение курсора 310 определяет положение последующего пользовательского взаимодействия. Указательное устройство 225 может быть реализовано в виде мыши, сенсорной панели, шарового указателя (трекбола), джойстика, элемента отслеживания пальца, пера или стилуса, встроенного в сенсорную панель, и так далее. В некоторых вариантах осуществления электронного устройства 110 указательное устройство 225 может быть интегрировано с пользовательским устройством 210 ввода и/или пользовательским устройством 220 вывода, например, в планшетном компьютерном устройстве, где сенсорная панель функционирует как пользовательское устройство 210 ввода, пользовательское устройство 220 вывода, а также указательное устройство 225. Электронное устройство 110 включает в себя интерфейс 230 сетевой передачи данных (например, модем, сетевую карту и так далее) для двустороннего обмена данными по сети 130 передачи данных. Электронное устройство 110 также включает в себя процессор 240, соединенный с пользовательским устройством 210 ввода, пользовательским устройством 220 вывода, указательным устройством 225 и интерфейсом 230 сетевой передачи данных. Процессор 240 выполнен с возможностью исполнять различные способы, включая те, что будут описаны ниже. Для этой цели у процессора 240 есть память 245 (в виде оперативной памяти (ОЗУ), флэш-памяти и так далее) или он функционально соединен с памятью 245, которая хранит машиночитаемые инструкции, инициирующие, при их исполнении, выполнение процессором 240 разнообразных описанных здесь способов. Электронное устройство 110 включает в себя аппаратное и/или прикладное программное, и/или системное программное обеспечение, как известно в данной области техники, чтобы выполнять разнообразные приложения, например, поисковое приложение 250 (Фиг. 3), связанное с поисковой системой. В общем случае, целью поискового приложения 250 является предоставление возможности пользователю (не показан) выполнять поиск, например, сетевой поиск с помощью вышеупомянутой поисковой системы.

[53] Со ссылкой на Фиг. 1, в приведенном примере осуществления настоящего технического решения сеть 130 передачи данных представляет собой Интернет. В других вариантах осуществления настоящего технического решения сеть 130 передачи данных может быть реализована иначе - в виде глобальной сети передачи данных, локальной сети передачи данных, частной сети передачи данных и т.п. В сети 130 передачи данных обмен данными происходит по линиям передачи данных разного типа, например, по беспроводным линиям (например, беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п) так и проводной (соединение на основе универсальной последовательной шины (USB) или соединение на основе сети Ethernet).

[54] С сетью 130 передачи данных также соединен сервер 120. Сервер 120 соединен с электронным устройством 110 по сети 130 передачи данных. Сервер 120 также иногда упоминается как «удаленный сервер» 120, поскольку он помещен отдельно от электронного устройства 110 и соединен с ним по сети 130 передачи данных. Сервер 120 может быть соединен с множеством электронных устройств 110. Сервер 120 может быть также соединен с другими серверами 120, например, среди прочего, с серверами сетевого ресурса, серверами приложений, серверами сетевой конфигурации по сети 130 передачи данных.

[55] Сервер 120 может представлять собой обычный компьютерный сервер. В примере варианта осуществления настоящего технического решения сервер 120 может представлять собой сервер Dell™ PowerEdge™, на котором используется операционная система Microsoft™ Windows Server™. Сервер 120 может быть также реализован в виде сетевого оборудования других типов, например, среди прочего, как маршрутизатор, коммутатор, шлюз, базовая станция и так далее. Сервер 120 может быть реализован на любом подходящем аппаратном и/или прикладном программном, и/или системном программном обеспечении или их комбинации. В представленном варианте осуществления настоящего технического решения, не ограничивающем его объем, сервер 120 является одиночным сервером. В других вариантах осуществления настоящего технического решения, не ограничивающих его объем, функциональность сервера 120 может быть разделена и может выполняться с помощью нескольких серверов. Вариант осуществления сервера 120 хорошо известен. Однако, если привести краткое описание, сервер 120 включает в себя интерфейс сетевой передачи данных, аналогичный интерфейсу 230 сетевой передачи данных электронного устройства 110, который настроен и выполнен с возможностью обмениваться данными с электронным устройством 110 и другими устройствами, соединенными с сетью 130 передачи данных. Сервер 120 также включает в себя по меньшей мере один компьютерный процессор, аналогичный процессору 240 электронного устройства 110, функционально соединенный с памятью, аналогичной памяти 245 электронного устройства 110, и с интерфейсом 130 сетевой передачи данных. Процессор 240 сервера 120 настроен и реализован с возможностью выполнять различные описанные здесь способы.

[56] В приведенном примере варианта осуществления настоящего технического решения сервер 120 является сервером поисковой системы, связанным с поисковым приложением 250, упомянутым выше. Сервер 120 выполнен с возможностью: (i) проводить поиски; (ii) проводить анализ результатов поиска и ранжирование результатов поиска; (iii) группировать результаты и компилировать страницы результатов поиска (SERP) для вывода на электронное устройство 110. Сервер 120 поисковой системы функционально соединен с поисковым кластером 122 (или иным образом имеет к нему доступ). В соответствии с некоторыми вариантами осуществления настоящего технического решения поисковый кластер 122 выполняет веб-поиски (например, общие и/или вертикальные поиски) в ответ на поисковый запрос 350 (Фиг. 3), введенный пользователем, который осуществляет доступ к поисковому приложению 250 на электронном устройстве 110, и выводит поисковые результаты для представления пользователю на странице результатов поиска (SERP). В рамках этих вариантов осуществления настоящего технического решения, не ограничивающих его объем, поисковый кластер 122 включает в себя базу данных 124 (или имеет к ней доступ). Как известно специалистам в данной области техники, база данных 124 хранит информацию, связанную со множеством ресурсов, потенциально доступных через сеть передачи данных (например, эти ресурсы доступны по интернету). Процесс заполнения и ведения базы данных 124 общеизвестен как «сбор данных» («кроулинг» от англ. "crawling"). Важно иметь в виду, что для упрощения нижеследующего описания конфигурация поискового кластера 122 была сильно упрощена. Считается, что специалисты в данной области техники смогут понять подробности реализации поискового кластера 122 и его компонентов.

[57] В соответствии с неограничивающими вариантами осуществления настоящего технического решения сервер 120 также выполнен с возможностью создавать предложенные поисковые результаты 360 (предложения 360 для поисковых результатов (Фиг. 7), относящиеся к поисковому результату 350, полученному от пользователя поискового приложения 250. Поэтому сервер 120 включает в себя модуль 126 предложений (или имеет к нему доступ). В приведенном пример неограничивающем варианте осуществления настоящего технического решения модуль 126 предложений включает в себя одну или несколько баз данных 128 для доступа к информации, относящейся к предыдущим поискам, проведенным пользователями поискового приложения 250, или же имеет к ней (к ним) доступ. В некоторых вариантах осуществления настоящего технического решения, не ограничивающих его объем, модуль 126 предложений реализован как часть поискового кластера 122.

[58] В представленном варианте осуществления настоящего технического решения, не ограничивающем его объем, модуль 126 предложений является одиночным модулем предложений. Кроме того, модуль 126 предложений включает в себя одну или несколько баз данных 128, или имеет к ней (к ним) доступ. В альтернативных воплощениях настоящего технического решения, не ограничивающих его объем, сервер 120 может быть функционально соединен со множеством модулей 126 предложений (или каким-либо иным образом может иметь к ним доступ). В некоторых вариантах осуществления настоящего технического решения данный модуль 126 предложений отвечает за создание предложенных поисковых запросов 360 конкретного типа. Например, исключительно с целью иллюстрации, конкретный модуль 126 предложений может быть выполнен с возможностью создавать предложенные поисковые запросы 360 для поисковых запросов 350, связанных с медицинскими средствами. В вариантах осуществления настоящего технического решения с множеством модулей 126 предложений, предусматривается, что каждый модуль 126 предложений может быть выполнен с возможностью создавать конкретный тип предложенных поисковых запросов 360, например, для поисковых запросов, связанных с людьми, спортом, наукой. В этих альтернативных вариантах осуществления настоящего технического решения, не ограничивающих его объем, в которых присутствует множество модулей 126 предложений, следует иметь в виду, что один из множества модулей 126 может включать в себя одну или несколько баз данных 128 или иметь к ним доступ. Эти одна или несколько баз данных 128 хранят данные, связанные с конкретным типом предложений для запроса, с возможностью создавать которые выполнен модуль 126 предложений. Следует иметь в виду, что число модулей 126 предложений или их функции не должны ограничиваться.

Поисковое приложение

[59] Осуществление поискового приложения 250 никак конкретно не ограничено. Одним из примеров выполнения поискового приложения 250 является доступ пользователем на веб-сайт, соответствующий поисковой системе, для получения доступа к поисковому приложению 250. Например, поисковое приложение может быть вызвано путем ввода URL www.yandex.ru, связанного с поисковой системой Yandex™. Важно иметь в виду, что поисковое приложение 250 может быть вызвано с помощью любой другой коммерчески доступной или собственной поисковой системы.

[60] В других вариантах осуществления настоящего технического решения, не ограничивающих его объем, поисковое приложение 250 может представлять собой браузерное приложение на портативном устройстве (например, беспроводном устройстве связи). Для тех случаев (но не только), когда электронное устройство 110 является портативным устройством, таким как, например, Samsung™ Galaxy™ SHI, электронное устройство 110 может использовать приложение Яндекс-браузер. Важно иметь в виду, что любое другое коммерчески доступное или собственное браузерное приложение может быть использовано для реализации вариантов осуществления настоящего технического решения, не ограничивающих его объем.

[61] На Фиг. 7 изображена часть 252 окна поискового приложения, представленная поисковым приложением в соответствии с вариантами осуществления настоящего технического решения. Окно 250 поискового приложения обладает интерфейсом 256 поисковых запросов, интерфейсом 258 поисковых результатов, интерфейсом 260 предложенных поисковых запросов и курсором 310.

[62] Общей задачей интерфейса 256 поисковых запросов является предоставление пользователю возможности вводить поисковый запрос 350, для которого пользователь ищет поисковые результаты. Пользователь вводит поисковый запрос 350 в интерфейс 256 поисковых запросов, используя пользовательское устройство 210 ввода электронного устройства, например, клавиатуру.

[63] Общей задачей интерфейса 256 поисковых результатов является предоставление пользователю поисковых результатов, которые получены с помощью обработки поискового запроса 350. Обработка поискового результата 350 для создания поисковых результатов не будет описана здесь подробно.

[64] На Фиг. 7 изображено, что пользователь ввел пример поискового запроса 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") в интерфейс 256 поисковых запросов. Пример поискового запроса 350, введенный пользователем, «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") включает в себя три термина 352 поискового запроса: «ПЕРСИДСКИЙ» ("PERSIAN"), «КОТ» ("CAT") И «ФОТО» ("PHOTO").

[65] В ответ на поисковый запрос 350, введенный пользователем, в интерфейсе 258 поисковых результатов отображается пример страницы результатов поиска (SERP), включающий поисковые результаты www.persiancats.com и различные изображения персидских котов. В приведенном примере интерфейс 256 поисковых запросов располагается в верхней части окна 252 поискового приложения, а интерфейс 258 поисковых результатов отображается в нижней части окна 252 поискового приложения. Однако следует иметь в виду, что расположение и интерфейса 256 поисковых запросов, и/или интерфейса 258 поисковых результатов может отличаться от указанного здесь.

[66] Интерфейс 260 предложенных поисковых запросов используется для отображения пользователю представлений одного или нескольких предложенных поисковых запросов 360, относящихся к поисковому запросу 350, введенному пользователем. Предложенные поисковые запросы 360 создаются для помощи и в качестве руководства для проведения поисков пользователем. Как будет подробнее описано ниже, один или несколько предложенных поисковых запросов 360 создаются обработкой поискового запроса 350 на основе положения курсора 310. Способ 400 создания предложенных поисковых запросов 360 будет описан ниже подробнее. В приведенном на Фиг. 7 примере четыре предложенных поисковых запроса 360, а именно «ПЕРСИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO"), «ПЕРСИДСКАЯ СИРЕНЬ ФОТО» ("PERSIAN LILAC PHOTO"), «ПЕРСИДСКАЯ АРХИТЕКТУРА ФОТО» ("PERSIAN ARCHITECTURE PHOTO") И «ПЕРСИДСКИЕ ФОТО» ("PERSIAN PHOTO") представлены пользователю в интерфейсе 260 предложенных поисковых запросов в виде выпадающего вниз от нижнего края интерфейса 256 поисковых запросов списка, и расположены они над поисковыми результатами. Список предложенных поисковых результатов 360 может альтернативно быть представлен как выпадающий вбок или вверх из нижнего края интерфейса 256 поисковых запросов список.

[67] В некоторых вариантах осуществления настоящего технического решения, например, на Фиг. 3-5 и 7, интерфейс 260 поисковых запросов располагается в верхней части окна 252 поискового приложения, под интерфейсом 256 поисковых запросов и над интерфейсом 258 поисковых результатов. В некоторых вариантах осуществления настоящего технического решения, например, на Фиг. 6, интерфейс 260 поисковых запросов располагается в нижней части окна 252 поискового приложения, под интерфейсом 256 поисковых запросов и интерфейсом 258 поисковых результатов. Предполагается, что интерфейс 260 предложенных поисковых запросов может быть выполнен иначе, чем описано здесь. Например, предложенные поисковые запросы 360 могут быть перемешаны с поисковыми результатами, отображенными в окне 252 поискового приложения, таким образом создавая множество интерфейсов 260 предложенных поисковых запросов.

[68] Как было упомянуто выше, курсор 310 управляется с помощью указательного устройства 225, например, мышью, или пальцами пользователя на сенсорном экране. Курсор 310 может быть расположен в интерфейсе 256 поисковых запросов для ввода поискового запроса 350 или для модификации введенного поискового запроса 350. В данном варианте осуществления настоящего технического решения предложенные поисковые запросы 360, представленные пользователю, определяются на основе текущего положения курсора 310 в интерфейсе 256, как будет описано ниже. Курсор 310 может быть расположен в интерфейсе 258 поисковых результатов или в интерфейсе 260 предложенных поисковых запросов для просмотра и/или выбора одного из элементов (например, поисковых результатов или предложенных поисковых запросов 360), представленных в них.

[69] На Фиг. 4 изображено, что, пока пользователь печатает поисковый запрос 350 в интерфейсе 256 поисковых запросов, курсор 310 располагается в конце поискового запроса 350, или в положении «в конце поискового запроса». На Фиг. 7 показан курсор 310, расположенный внутри поискового запроса 350. В приведенном на Фиг. 7 примере после ввода поискового запроса 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") пользователь передвигает курсор 310 внутрь поискового запроса 350, например, намереваясь модифицировать введенный поисковый результат. В любом случае предложенные поисковые запросы 360, представленные пользователю, создаются на основе поискового запроса 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") и текущего положения курсора 310, как будет подробно описано ниже.

[70] Конкретный запрос из предложенных поисковых запросов 360 может быть выбран с помощью размещения курсора 310 на предложенном поисковом запросе 360 и щелчка мышью по нему для завершения выбора предложенного поискового запроса 360. На Фиг. 8, когда пользователь выбирает один из предложенных поисковых запросов 360, например, «ПЕРСИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO"), введенный пользователем поисковый запрос 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") замещается выбранным поисковым запросом 360 «ПЕРСИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO") в интерфейсе 256 поисковых запросов, и интерфейс 258 поисковых результатов обновляется для отображения результатов, связанных с выбранным предложенным поисковым запросом 360.

Представление предложенных поисковых результатов

[71] На Фиг. 7 каждый предложенный поисковый запрос 360 включает в себя один или несколько предложенных поисковых слов или терминов 362. Таким образом, предложенный поисковый запрос 360 «ПЕРСИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO") включает в себя три предложенных поисковых слова, а именно «ПЕРСИДСКАЯ» ("PERSIAN"), «ШИНШИЛЛА» ("CHINCHILLA") и «ФОТО» ("PHOTO").

[72] Как показано на Фиг. 7, каждый предложенный поисковый запрос 360 тесно связан по структуре с поисковым запросом 350, на текущий момент находящимся в интерфейсе 256 поисковых запросов. Каждый предложенный поисковый запрос 360 создан с помощью осуществления предложенного действия (описаны ниже) с поисковым запросом 350. В общем случае, предложенный поисковый запрос 360 может быть описан как модификация соответствующего поискового запроса 350. Например, предложенный поисковый запрос 360 может быть описан как поисковый запрос 350 с одним или несколькими дополнительными предложенными поисковыми словами 362, вставленными в него. В другом примере предложенный поисковый запрос 360 может быть описан как поисковый запрос 350 с поисковым термином 352, замененным на предложенный поисковый термин 362. В другом примере предложенный поисковый запрос 360 может быть описан как поисковый запрос 350 с удаленным из него поисковым термином 352. Таким образом, предложенный поисковый запрос 360 в общем случае имеет по меньшей мере один предложенный поисковый термин 362, который совпадает с соответствующим поисковым термином 352 полученного поискового запроса 350. Например, на Фиг. 7 предложенный поисковый запрос 360 «ПЕРСИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO") и связанный поисковый запрос 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") имеют общие поисковые слова 352, 362 «ПЕРСИДСКИЙ» ("PERSIAN") и «ФОТО» ("PHOTO").

[73] В примере, представленном на Фиг. 7 и 8, каждый из предложенных поисковых запросов 360, представленных пользователю в интерфейсе 260 поисковых запросов, представлен полностью, включая в себя все предложенные поисковые слова 362, вне зависимости от того, представлен ли уже конкретный предложенный поисковый термин 362 в поисковом запросе 350, введенном пользователем, или нет. В общем случае интерфейс 260 предложенных поисковых запросов отображает представления каждого предложенного поискового запроса 360. Представление предложенного поискового запроса 360 может являться полным предложенным поисковым запросом 360 (Фиг. 7), одним или несколькими предложенными поисковыми словами 362 (Фиг. 3-6), или удалением 366 (Фиг. 5 и 6), как будет описано ниже.

[74] В некоторых вариантах осуществления настоящего технического решения, например, на Фиг. 3-6, предложенный поисковый запрос 360 представлен пользователю в виде одного или нескольких предложенных поисковых термином 362, которые представляют предложенный поисковый запрос 360 и соответствующие модификации связанного поискового запроса 350, на текущий момент находящегося в интерфейсе 256 поисковых запросов.

[75] В нескольких вариантах осуществления, предложенный поисковый термин 362 представляет предложенный поисковый запрос 360, который соответствует модификации поискового запроса 350, созданной вставкой отображенного предложенного поискового термина 362 в поисковый запрос 350, выполненной на месте курсора 310. На Фиг. 3 показано окно 252 поискового приложения, в котором пользователь ввел поисковый запрос 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") в интерфейс 256 поисковых запросов, и затем передвинул курсор 310 так, что он расположился перед поисковым термином 352 «ПЕРСИДСКИЙ» ("PERSIAN"). В результате предложенные поисковые слова 362 «НЕНАСТОЯЩИЙ» ("FAKE"), «НАСТОЯЩИЙ» ("REAL"), «МИЛЫЙ» ("CUTE") и «ЗЛОЙ» ("ANGRY") отображаются в интерфейсе 260 поисковых запросов. Как показано на Фиг. 9, когда пользователь выбирает один из предложенных поисковых слов 362, например, «НАСТОЯЩИЙ» ("REAL"), и поисковый запрос 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") заменяется соответствующим предложенным запросом «НАСТОЯЩИЙ ПЕРСИДСКИЙ КОТ ФОТО» ("REAL PERSIAN CAT PHOTO"). Таким образом, в данном варианте осуществления настоящего технического решения предложенный поисковый термин 362 «НАСТОЯЩИЙ» ("REAL") представляет предложенный поисковый запрос 360 «НАСТОЯЩИЙ ПЕРСИДСКИЙ КОТ ФОТО» ("REAL PERSIAN CAT PHOTO"), который является модификацией поискового запроса 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO"), выполненной с помощью вставки в него выбранного поискового термина 362 «НАСТОЯЩИЙ» ("REAL") на месте последнего нахождения курсора 310 (перед тем, как курсор 310 был передвинут в интерфейс 260 предложенных поисковых запросов для осуществления выбора поискового термина 362 «НАСТОЯЩИЙ» ("REAL")).

[76] Аналогично, в примере, приведенном на Фиг. 4 и 5 предложенные поисковые запросы 360 представлены в виде одного или нескольких поисковых слов 362. Хотя это и не показано на Фиг. 5, если пользователь выбирает представление одного из предложенных поисковых запросов 360, например, предложенный поисковый термин 362 «КОРОТКОШЕРСТНЫЙ» ("SHORT-HAIRED"), введенный пользователем поисковый запрос 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") в интерфейсе 256 поисковых запросов будет заменен предложенным поисковым запросом 360 «ПЕРИДСКИЙ КОРОТКОШЕРСТНЫЙ КОТ ФОТО» ("PERSIAN SHORT-HAIRED CAT PHOTO"), соответствующим выбранному поисковому термину 362 и конкретному положению курсора 310.

[77] Представление предложенного поискового термина 362 вместо полного предложенного поискового запроса 360 экономит пространство, занимаемое интерфейсом 260 поисковых запросов в окне 252 поискового приложения, что является особенно желательным при использовании поискового приложения 252 на портативных электронных устройствах 110 с относительно малым экраном 220, в то же время предоставляя удобства, предлагаемые пользователю функциональностью предложенных запросов. Предполагается, что пользователь понимает, что конкретный предложенный поисковый термин 362 представляет соответствующий предложенный поисковый запрос 360, и соответствующую модификацию поискового запроса 350. Таким образом, в приведенном на Фиг. 3 примере предполагается, что пользователь понимает, что предложенный поисковый термин 362, показанный в интерфейсе 260 предложенных поисковых запросов, будет вставлен в поисковый запрос 350 в интерфейсе 256 поисковых запросов в месте положения курсора 310. Однако, как показано на Фиг. 10, в некоторых вариантах осуществления настоящего технического решения, для облегчения понимания пользователя, когда пользователь размещает курсор 310 на предложенном поисковом термине 362 «НАСТОЯЩИЙ» ("REAL"), находящемся в интерфейсе 260 поисковых запросов, не щелкая на него мышкой, чтобы завершить выбор этого предложенного поискового термина 362 («НАСТОЯЩИЙ» ("REAL")), в интерфейсе 260 поисковых запросов отображается полный предложенный поисковый запрос 360 «НАСТОЯЩИЙ ПЕРСИДСКИЙ КОТ ФОТО» ("REAL PERSIAN CAT PHOTO").

[78] На Фиг. 6 показано окно 252 поискового приложения, в котором пользователь ввел поисковый запрос 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") в интерфейс 256 поисковых запросов, и затем передвинул курсор 310 так, что он расположился внутри поискового термина 352 «КОТ» ("CAT"). В результате предложенные поисковые слова 362 «ШИНШИЛЛА» ("CHINCHILLA"), «СИРЕНЬ» ("LILAC") и «АРХИТЕКТУРА» ("ARCHITECTURE") отображаются в интерфейсе 260 поисковых запросов. Каждое из этих предложенных поисковых слов 362 представляет соответствующий предложенный поисковый запрос 360, который формируется из поискового запроса 350 посредством замены поискового термина 352, в котором находится курсор, на предложенный поисковый термин 362. Таким образом, хотя это и не показано на Фиг. 6, если пользователь выбирает один из предложенных поисковых слов 362, например, предложенный «ШИНШИЛЛА» ("CHINCHILLA"), поисковый запрос 352 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") заменяется предложенным поисковым запросом 360 «ПЕРИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO"), соответствующим выбранному предложенному поисковому термину 362 «ШИНШИЛЛА» ("CHINCHILLA") и положению курсора внутри поискового термина. В данном варианте осуществления настоящего технического решения предложенный поисковый термин 362 «ШИНШИЛЛА» ("CHINCHILLA") представляет предложенный поисковый запрос 360 «ПЕРСИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO"), где поисковый термин 352 «КОТ» ("CAT"), в котором находился курсор 310, замещен предложенным поисковым термином 362 «ШИНШИЛЛА» ("CHINCHILLA"). Предполагается, что пользователь понимает, что, когда курсор 310 расположен внутри поискового термина 352 в интерфейсе 256 поисковых терминов, выбор предложенного поискового термина 362, показанного в интерфейсе 260 предложенных поисковых терминов, заменит поисковый термин 352, в котором располагается курсор 310. Однако, как описано выше, в некоторых вариантах осуществления настоящего технического решения, для облегчения понимания пользователя, когда пользователь размещает курсор 310 на предложенном поисковом термине 362 «ШИНШИЛЛА» ("CHINCHILLA"), находящемся в интерфейсе 260 поисковых запросов, не щелкая на него мышкой, чтобы завершить выбор этого предложенного поискового термина 362 («ШИНШИЛЛА» ("CHINCHILLA")), в интерфейсе 260 поисковых запросов отображается полный предложенный поисковый запрос 360 «ПЕРСИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO").

[79] На Фиг. 6, где курсор 310 расположен в конце поискового термина 352 «КОТ» ("CAT") в интерфейсе 256 поисковых запросов, одним из представлений предложенного поискового термина 360 в интерфейсе 260 предложенных поисковых терминов является удаление 366 поискового термина 352 «КОТ» ("CAT"). Удаление 366 «КОТ» ("GAT-") представляет предложенный поисковый запрос 360 «ПЕРСИДСКИЕ ФОТО» ("PERSIAN PHOTO"), который формируется из поискового запроса 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") удалением поискового термина 352 «КОТ» ("CAT"). Следует понимать, что удаление 366 «КОТ» ("CAT"), показано здесь как пример, и оно может быть указано другими способами, например, двойным подчеркиванием, конкретным шрифтом или цветом, и т.п.

[80] Таким образом, предложенный поисковый запрос 360 может быть представлен пользователю полностью, или как часть, включающая одно или несколько поисковых слов 362, или как удаление 366. В приведенном примере варианта осуществления настоящего технического решения, каждый предложенный поисковый запрос 360, представленный полностью (как на Фиг. 7), или частично (как на Фиг. 3-6), представлен как выбираемый пользователем элемент, таким образом, что если пользователь заинтересуется одним из предложенных поисковых запросов 360, пользователь может просмотреть SERP, связанную с предложенным поисковым запросом 360, просто выбрав представление соответствующего предложенного поискового запроса 360 вместо того, чтобы набирать предложенный поисковый запрос 360 полностью или частично в интерфейсе 256 поисковых запросов.

[81] В приведенных примерах вариантов осуществления настоящего технического решения представления предложенных поисковых запросов 360 предоставляются пользователю сразу, как только пользователь начинает печатать пользовательский запрос 350 в интерфейсе 256 поисковых запросов, и динамически обновляются по мере того, как пользователь продолжает печатать поисковый запрос 350. В приведенных здесь примерах вариантов осуществления настоящего технического решения предложенные поисковые запросы 360 появляются автоматически, в том смысле, что это не требует от пользователя никаких подтверждающих действий. Предполагается, что поисковое приложение 250 может предоставить функцию предложенных поисковых запросов, которая может быть включена или выключена пользователем. В этом случае представления предложенных поисковых запросов 360 будут представлены пользователю в ответ на то, что пользователь явно указывает свое намерение использовать конкретную функциональность предложенных поисковых запросов, предоставляемую поисковым приложением 250.

Способ

[82] Способ 400 в соответствии с вариантом осуществления настоящего технического решения создания предложенных поисковых запросов 360 будет описан ниже с учетом Фиг. 1-13.

[83] С учетом Фиг. 1, 2 и 13, способ 400 выполняется процессором 240 сервера 120, который функционально связан с поисковым приложением 250 электронного устройства 110. Предполагается, что некоторые этапы способа 400, описанные ниже, могут быть выполнены частично или полностью процессором 240 электронного устройства 110, на котором выполняется поисковое приложение 250.

[84] Способ 400 для создания предложенных поисковых запросов 360 начинается на этапе 410, когда пользователь электронного устройства 110 запускает поисковое приложение 250 и начинает вводить поисковый запрос 350 в интерфейс 256 поисковых запросов.

[85] На этапе 420 процессор 240 получает поисковый запрос 350, введенный пользователем. Этот поисковый запрос 350 иногда упоминается как полученный поисковый запрос 350, а поисковые термины 352 иногда упоминаются как полученные поисковые термины 352. В приведенных примерах вариантов осуществления настоящего технического решения отправка поискового запроса 350 процессору 240 инициируется пользовательской активностью в интерфейсе 256 поисковых запросов, например, вводом в него знака или передвижением на него курсора 310. Таким образом, пока пользователь вводит поисковый запрос 350, частично завершенный поисковый запрос 350 оправляется процессору 240 после ввода каждого знака пользователем. Как только пользователь прекращает ввод пользовательского запроса 350, поисковый запрос 350 отправляется процессору 240, когда меняется положение 310. Предполагается, что поисковый запрос 350 отправляется процессору 240 периодически, или же отправка инициируется различными событиями.

[86] На этапе 430 процессор 240 получает указание на текущее положение курсора 310 по отношению к полученному поисковому запросу 350. Очевидно, что, пока поисковый запрос 350 вводится пользователем, курсор 310 располагается в конце поискового запроса 350, как показано на Фиг. 4. Однако, в некоторых случаях, пользователь может использовать указательное устройство 225 для передвижения курсора 310 в другое положение в интерфейсе 256 поисковых запросов, возможно, намереваясь модифицировать поисковый запрос 350, который уже был введен. Положение курсора 310 в поисковом запросе 350 указывает на желаемую модификацию поискового запроса 350, уже введенного в интерфейс 256 поисковых запросов. В приведенных примерах вариантов осуществления настоящего технического решения текущее положение курсора по отношению к поисковому запросу 350 отправляется процессору 240 вместе с поисковым запросом 350. Таким образом, в приведенных примерах вариантов осуществления настоящего технического решения этапы 420 и 430 происходят одновременно, но предполагается, что этап 430 может происходить после этапа 420 и/или отдельно от него.

[87] Следует понимать, что курсор 310 может быть передвинут в другие места окна 252 поискового приложения, находящиеся вне интерфейса 256 поисковых запросов. Однако, способ 400 создания предложенных поисковых запросов 360, описанный здесь, основывается на положении курсора 310 в интерфейсе 256 поисковых запросов. Таким образом, текущее положение курсора определяется по отношению к положению курсора 310 в интерфейсе 256 поисковых запросов и по отношению к введенному в него поисковому запросу 350. Если курсор 310 передвигается за пределы интерфейса 256 поисковых запросов, например, к одному из поисковых результатов, текущее положение курсора для способа 400 остается конечным положением курсора 310 в интерфейсе 256 поисковых запросов. Соответственно, если курсор 310 передвигается за пределы интерфейса 256 поисковых запросов, предложенные поисковые запросы 360, отображаемые в окне 252 поискового приложения, являются предложенными поисковыми запросами 360, созданными для конечного положения курсора в пределах интерфейса 256 поисковых запросов.

[88] На этапе 440, в ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, для определения предложенного поискового запроса 360 процессор 240 выполняет один из множества алгоритмов предложений, соответствующий одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора.

[89] Как было упомянуто выше, положение курсора 310 по отношению к поисковому запросу 350, введенному в интерфейс 256 поисковых запросов, может указывать на модификации поискового запроса 350, которые желает осуществить пользователь. Следовательно, предложенные поисковые запросы 360, созданные с помощью применения способа 400, основаны на положении курсора 310. Способ 400 создает предложенные поисковые запросы 360, если текущее положение курсора является одним из множества предварительно определенных положений курсора. В приведенных примерах вариантов осуществления настоящего технического решения предварительно определенные положения курсора включают в себя: положение курсора в начале поискового запроса (Фиг. 3), положение курсора в конце поискового запроса (Фиг. 4), положение курсора в начале поискового термина (Фиг. 3 и 5), положение курсора в конце поискового термина (Фиг. 4 и 7), положение курсора внутри поискового термина (Фиг. 6)

[90] Каждое из предварительно определенных положений курсора связано с предварительно определенным предложенным действием, которое относится к типу модификации, примененной к полученному поисковому запросу 350 для создания предложенного поискового запроса 360. Таким образом, способ 400 предполагает множество предварительно определенных предложенных действий, которые используются для создания предложенных поисковых запросов 360 из полученного поискового запроса 350. В приведенных примерах вариантов осуществления способа 400 предварительно определенные предложенные действия включают в себя: предложенное действие вставки для вставки предложенного поискового термина 362 в полученный поисковый запрос 350, предложенное действие удаления для удаления указанного курсором термина 370 по меньшей мере из одного полученного поискового термина 352 в полученном поисковом запросе 350, и предложенное действие замещения, для замещения указанного курсором термина 370 в полученном поисковом запросе 350.

[91] Каждое из множества предварительно определенных положений курсора связано по меньшей мере с одним из множества предварительно определенных предложенных действий, например, когда текущее положение курсора является одним из предварительно определенных положений курсора, предложенный поисковый запрос 360 создается осуществлением одного из предложенных действий, связанных с конкретным предварительно определенным положением курсора, с полученным поисковым запросом 350. Каждое предварительно определенное положение курсора может быть связано с единственным предложенным действием.

[92] В приведенных примерах вариантов осуществления настоящего технического решения, положение курсора в начале поискового запроса связано с действием предложенной вставки. В приведенных примерах вариантов осуществления настоящего технического решения, положение курсора в конце поискового запроса связано с действием предложенной вставки и действием предложенного удаления. В приведенных примерах вариантов осуществления настоящего технического решения, положение курсора в начале поискового термина связано с действием предложенной вставки. В приведенных примерах вариантов осуществления настоящего технического решения, положение курсора в конце поискового термина связано с действием предложенного замещения и действием предложенного удаления. В приведенных примерах вариантов осуществления настоящего технического решения, положение курсора внутри поискового термина связано с действием предложенного замещения и действием предложенного удаления.

[93] Таким образом, в приведенных примерах вариантов осуществления настоящего технического решения каждое предварительно определенное предложенное действие связано с одним или несколькими предварительно определенными положениями курсора. Предполагается, что в некоторых вариантах осуществления настоящего технического решения каждое предварительно определенное положение курсора может быть связано с предложенным действием, которое отличается от предложенного действия, связанного с другим предварительно определенным положением курсора. Таким образом, в этом варианте осуществления настоящего технического решения каждое предварительно определенное предложенное действие будет связано с единственным предварительно определенным положением курсора.

[94] Каждое из предварительно определенных предложенных действий имеет соответствующий алгоритм предложения, который выполняется способом 400 для создания предложенного поискового запроса 360 на основе модификаций, применяемых к полученному поисковому запросу 350. Таким образом, в приведенном примере вариантов осуществления способа 400, предложенное действие вставки имеет соответствующий алгоритм предложенной вставки, предложенное действие удаления имеет соответствующий алгоритм предложенного удаления, и предложенное действие замещения имеет соответствующий алгоритм предложенного замещения. Детали осуществления конкретных алгоритмов предложения будут подробнее описаны ниже.

[95] Когда курсор 310 находится в одном из предварительно определенных положений курсора, способ 400 выполняет предложенный алгоритм, соответствующий предложенному действию, связанному с этим предварительно определенным положением курсора. В примере, приведенном на Фиг. 3, текущее положение курсора является положением в начале поискового запроса, связанным с предложенным действием вставки, и, следовательно, в ответ на то, что курсор расположен так, как показано на Фиг. 3, выполняется алгоритм предложенной вставки.

[96] В некоторых вариантах осуществления настоящего технического решения текущее положение курсора может соответствовать двум различным предварительно определенным положениям курсора. Например, положение курсора, показанное на Фиг. 3, соответствует положению курсора в начале поискового запроса и положению курсора в начале поискового термина. В данном случае оба предварительно определенных положения курсора (положение курсора в начале поискового запроса и положение курсора в начале поискового термина) связаны с тем же самым предложенным действием (действием предложенной вставки). Таким образом, когда курсор 310 расположен в положении, показанном на Фиг. 3, способ 400 выполняет алгоритм предложенной вставки, соответствующий действию предложенной вставки.

[97] В некоторых вариантах осуществления настоящего технического решения текущее положение курсора может соответствовать двум различным предварительно определенным положениям курсора, но каждое из предварительно определенных положений курсора соответствует различным предложенным действиям, отличающимся от тех, что соответствуют другому предварительно определенному положению курсора. Например, положение курсора, показанное на Фиг. 4, соответствует положению курсора в конце поискового запроса (связанному с действием предложенной вставки и действием предложенного удаления), и положению курсора в конце поискового термина (связанному с действием предложенного замещения и действием предложенного удаления).

[98] В некоторых вариантах осуществления способа 400, когда текущее положение курсора соответствует двум различным предварительно определенным положениям курсора, выполняется каждое из предложенных действий, связанное с каждым предварительно определенным положением курсора, соответствующим текущему положению курсора. Таким образом, в этом примере, приведенном на Фиг. 4, способ 400 выполнит алгоритм предложенной вставки, алгоритм предложенного удаления, а также алгоритм предложенного замещения, если курсор будет располагаться так, как он расположен на Фиг. 4.

[99] В некоторых вариантах осуществления способа 400, когда текущее положение курсора соответствует двум различным предварительно определенным положениям курсора, выполняются предложенное(ые) действие(я), которые являются общими для предварительно определенных положений курсора, соответствующих текущему положению курсора. Таким образом, в этом примере, приведенном на Фиг. 4, способ 400 выполнит алгоритм предложенного удаления, если курсор будет располагаться так, как он расположен на Фиг. 4.

[100] В некоторых вариантах осуществления способа 400, когда текущее положение курсора соответствует двум различным предварительно определенным положениям курсора, выполняется по меньшей мере одно из предложенных действий, связанное с одним или обоими предварительно определенными положениями курсора, соответствующими текущему положению курсора. Таким образом, в этом примере, приведенном на Фиг. 4, способ 400 выполнит по меньшей мере один из алгоритмов: или алгоритм предложенной вставки, или алгоритм предложенного удаления, или алгоритм предложенного замещения, если курсор будет располагаться так, как он расположен на Фиг. 4.

[101] В некоторых вариантах осуществления способа 400 предварительно определенные положения курсора определяются таким образом, что каждое положение курсора соответствует только одному из предварительно определенных положений курсора. Например, положение в начале поискового запроса и положение в начале поискового термина может быть определено таким образом, что положение курсора может быть только одним положением из положения в начале поискового запроса и положения в начале поискового термина, но не обоими. Таким образом, положение курсора 310 на Фиг. 3 является положением в начале поискового запроса, но не положением в начале поискового термина.

[102] В общем случае, если конкретное предварительно определенное положение курсора связано более чем с одним предложенным действием, способ 400 осуществляет по меньшей мере одно из связанных предварительно определенных действий по отношению к полученному поисковому запросу 350, т.е. способ 400 выполняет предложенный алгоритм, соответствующий по меньшей мере одному из связанных предварительно определенных действий. В примере вариантов осуществления настоящего технического решения, приведенном на Фиг. 3-7, если конкретное предварительно определенное положение курсора связано более чем с одним предложенным действием, способ 400 осуществляет каждое из связанных предварительно определенных действий по отношению к полученному поисковому запросу 350, т.е. способ 400 выполняет каждый предложенный алгоритм, соответствующий каждому из связанных предварительно определенных действий. Таким образом, в приведенном примере вариантов осуществления способа 400, когда текущее положение курсора является положением курсора в конце поискового запроса (как на Фиг. 4), процессором 240 выполняются и алгоритм предложенной вставки, соответствующий действию предложенной вставки, и алгоритм предложенного удаления, соответствующий действию предложенного удаления. В этом примере, приведенном на Фиг. 4, в ответ на пример поискового запроса 350 «ПЕРСИДСКИЙ КОТ» ("PERSIAN CAT") и положение курсора в конце поискового запроса выполнение алгоритма предложенной вставки создает предложенные поисковые запросы 360 «ПЕРИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO"), «ПЕРСИДСКИЙ КОТ ЦЕНА» ("PERSIAN CAT PRICE"), «ПЕРИДСКИЙ КОТ ХАРАКТЕР» ("PERSIAN CAT PERSONALITY"), «ПЕРСИДСКИЙ КОТ ВИКИ» ("PERSIAN CAT WIKI") и «ПЕРИДСКИЙ КОТ ОТЗЫВЫ» ("PERSIAN CAT REVIEW"), а выполнение алгоритма предложенного удаления создает предложенный поисковый запрос «ПЕРСИДСКИЙ» ("PERSIAN"). Однако предусматривается, что в некоторых вариантах осуществления способа 400, один из алгоритмов или оба алгоритма (алгоритм предложенной вставки и алгоритм предложенного удаления) могут быть выполнены, если текущее положение курсора является положением курсора в конце поискового запроса. Например, если текущее положение курсора связано с множеством предложенных действий, связанным алгоритмам предложений могут быть назначены предварительно определенные ранги таким образом, что перворанговое предложенное действие выполняется самым первым, а предложенные действия, ранжированные ниже, выполняются только тогда, когда выполнение переорангового предложенного действия создает число предложенных запросов 360 меньше порогового.

[103] Аналогично, в приведенном примере вариантов осуществления способа 400, когда текущее положение курсора является положением курсора в конце поискового термина (как на Фиг. 7), процессором 240 выполняются и алгоритм предложенного замещения, соответствующий действию предложенного замещения, и алгоритм предложенного удаления, соответствующий действию предложенного удаления. В этом примере, приведенном на Фиг. 7, в ответ на пример поискового запроса 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") и положение курсора в конце поискового термина выполнение алгоритма предложенной замены создает предложенные поисковые запросы 360 «ПЕРИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO"), «ПЕРСИДСКАЯ СИРЕНЬ ФОТО» ("PERSIAN LILAC PHOTO"), и «ПЕРИДСКАЯ АРХИТЕКТУРА ФОТО» ("PERSIAN ARCHITECTURE PHOTO"), а выполнение алгоритма предложенного удаления создает предложенный поисковый запрос «ПЕРСИДСКИЕ ФОТО» ("PERSIAN PHOTO"). Однако предусматривается, что в некоторых вариантах осуществления настоящего технического решения один из алгоритмов или оба алгоритма (алгоритм предложенного замещения и алгоритм предложенного удаления) могут быть выполнены, если текущее положение курсора является положением курсора в конце поискового термина.

[104] Аналогично, в приведенном примере вариантов осуществления способа 400, когда текущее положение курсора является положением курсора внутри поискового термина (как на Фиг. 6), процессором 240 выполняются и алгоритм предложенного замещения, соответствующий действию предложенного замещения, и алгоритм предложенного удаления, соответствующий действию предложенного удаления. В этом примере, приведенном на Фиг. 6, в ответ на пример поискового запроса 350 «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") и положение курсора внутри поискового термина выполнение алгоритма предложенной замены создает предложенные поисковые запросы 360 «ПЕРИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO"), «ПЕРСИДСКАЯ СИРЕНЬ ФОТО» ("PERSIAN LILAC PHOTO"), и «ПЕРИДСКАЯ АРХИТЕКТУРА ФОТО» ("PERSIAN ARCHITECTURE PHOTO"), а выполнение алгоритма предложенного удаления создает предложенный поисковый запрос «ПЕРСИДСКИЙ ФОТО» ("PERSIAN PHOTO"). Однако также предусматривается, что в некоторых вариантах осуществления настоящего технического решения, один из алгоритмов или оба алгоритма (алгоритм предложенного замещения и алгоритм предложенного удаления) могут быть выполнены, если текущее положение курсора является положением курсора внутри поискового термина.

[105] В приведенном примере вариантов осуществления способа 400 предложенные поисковые запросы 360 определяются с использованием предыдущих поисковых запросов 390, полученных из баз данных предыдущих поисковых запросов, например, из базы данных 128. Предыдущие поисковые запросы 390 могут быть поисковыми запросами 350, полученными от конкретного электронного устройства 110, конкретного пользователя, конкретного веб-ресурса, конкретного хоста веб-ресурса, конкретной географической области и так далее. Процессор 240, соответственно, получает доступ к одной или нескольким базам данных 128, во время выполнения алгоритма предложений для получения предыдущих поисковых запросов 350 и определения предложенных поисковых запросов 360 на их основании.

[106] В общем случае, один или несколько предложенных поисковых запросов 360 могут быть определены в результате выполнения каждого алгоритма предложения. Также предусматривается, что выполнение конкретного алгоритма предложения по отношению к конкретному полученному поисковому запросу 350 не приводит к определению каких-либо предложенных поисковых запросов 360. Так или иначе, любые предложенные поисковые запросы успешно определяются в результате выполнения одного или нескольких алгоритмов предложения, если текущее положение курсора является одним из предварительно определенных положений курсора, и процессор 240 выполняет по меньшей мере один алгоритм предложения, соответствующий предложенному действию, связанному с текущим положением курсора.

[107] Когда один и несколько предложенных поисковых запросов 360 успешно определены процессором 240 посредством выполнения одного или нескольких алгоритмов, способ 400 инициирует представление одного или нескольких предложенных поисковых запросов 360 в окне 252 поискового приложения, как было описано выше. Таким образом, в приведенном в пример варианте осуществления способа 400, определенные один или несколько предложенных поисковых запросов 360 отправляются с сервера 120, выполняющего алгоритмы предложений, на электронное устройство 110, выполняющее поисковое приложение, для представления пользователю.

Алгоритмы предложений

[108] Алгоритмы предложений будут описаны ниже более подробно с учетом Фиг. 3-13.

Алгоритм предложенной вставки

[109] С учетом Фиг. 3, 4 и 5, действие предложенной вставки связано с некоторыми предварительно определенными положениями курсора, куда, на место текущего положения курсора в полученный поисковый запрос 350, вставляется предложенное поисковое слово 362 для создания предложенного поискового запроса 360.

[110] С учетом Фиг. 11, в некоторых вариантах осуществления настоящего технического решения, выполнение алгоритма предложенной вставки включает в себя сравнение полученного поискового результата 350 с предыдущими полученными поисковыми результатами 390 из базы данных 128 предыдущих поисковых результатов для идентификации подгруппы 380 предыдущих поисковых запросов 390. В подгруппе 380 предыдущих поисковых запросов 390 каждый из полученных поисковых запросов 390 имеет все полученные поисковые термины 352, расположенные в том же порядке, в котором они появляются в полученном поисковом запросе 350, и по меньшей мере один другой предложенный поисковый термин 362, находящийся в положении, соответствующем текущему положению курсора. Полученный поисковый запрос 350 сравнивается с предыдущим поисковыми запросами 390, полученными из базы данных 128. В примере, приведенном на Фиг. 4, в котором полученный поисковый запрос 350 - «ПЕРСИДСКИЙ КОТ» ("PERSIAN CAT"), а текущее положение курсора является положением курсора в конце поискового запроса, алгоритм вставки осуществляется с помощью идентификации в базе данных 124 подгруппы 380 предыдущих поисковых запросов 390, включающей в себя слова «ПЕРСИДСКИЙ» ("PERSIAN") и «КОТ» ("CAT") и по меньшей мере один другой термин 362, расположенный в конце поискового запроса. Например, как показано на Фиг. 11, подгруппа 380 предыдущих поисковых запросов 390 может включать в себя поисковые запросы «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO"), «ПЕРСИДСКИЙ КОТ КАРТИНА» ("PERSIAN CAT PAINTING"), «ПЕРСДСКИЙ КОТ КОВЕР» ("PERSIAN CAT CARPET"), «ПЕРСИДСКИЙ КОТ ХАРАКТЕР» ("PERSIAN CAT PERSONALITY), «ПЕРСИДСКИЙ КОТ ВИКИ» ("PERSIAN CAT WIKI"), «ПЕРИДСКИЙ КОТ ОТЗЫВЫ» ("PERSIAN CAT REVIEW"), «ПЕРСДСКИЙ КОТ СИМФОНИЯ» ("PERSIAN CAT SYMPHONY") и «ПЕРСИДСКИЙ КОТ ЛЕДОВАЯ СКУЛЬПТУРА» ("PERSIAN CAT ICE SCULPTURE").

[111] Один или несколько поисковых запросов 390 могут быть выбраны из идентифицированного набора 380 для представления пользователю в качестве предложенного(ых) поискового(ых) запроса(ов) 360. Выбор предложенных запросов 360 из подгруппы 380 предыдущих поисковых запросов 390 может быть основан на одном или нескольких факторах, например, на поисковой истории конкретного пользователя, поисковой истории конкретной поисковой сессии, конкретного географического региона, в котором осуществляется поиск, семантическом или контекстуальном сходстве с полученным поисковым запросом 350 и так далее. Может быть использован любой другой подходящий алгоритм ранжирования и выбора. Таким образом, в примере, приведенном на Фиг. 4, предыдущий поисковой запрос «ПЕРСИДСКИЙ КОТ ФОТО» ("PERSIAN CAT PHOTO") выбирается как предложенный поисковый запрос 360 на основе того, что пользовательская история поиска включает в себя поисковые запросы 350 «пума фото» и «ягуар фото». В примере, приведенном на Фиг. 4, предыдущий поисковый запрос «ПЕРСИДСКИЙ КОТ ЛЕДОВАЯ СКУЛЬПТУРА» ("PERSIAN CAT ICE SCULPTURE") не выбран как предложенный поисковый запрос 360 на основе того, что текущий поиск осуществляется в географической области, которая отличается от той географической области, где был осуществлен поиск «ПЕРСИДСКИЙ КОТ ЛЕДОВАЯ СКУЛЬПТУРА» ("PERSIAN CAT ICE SCULPTURE").

Алгоритм предложенного замещения

[112] С учетом Фиг. 6 и 7, действие предложенного замещения связано с некоторыми предварительно определенными положениями курсора, в которых полученный поисковый термин 352 замещается на предложенный поисковый термин 362 для создания предложенного поискового запроса 360. Полученный поисковый термин 352 на замену определяется на основе текущего положения курсора и упоминается здесь как указанный курсором поисковый термин 370.

[113] В общем случае указанный курсором поисковый термин 370 является поисковым термином 352, следующим сразу после курсора 310, находящимся сразу перед курсором 310, или поисковым термином 352, внутри которого находится курсор 310.

[114] В приведенном в пример варианте осуществления настоящего технического решения, когда текущее положение курсора является положением в начале поискового запроса или в начале поискового термина, как на Фиг. 3 и 5 (т.е. курсор 310 расположен сразу перед поисковым термином 352), указанный курсором поисковый термин 370 является поисковым термином 352, следующим сразу после курсора 310. Например, на Фиг. 3, указанный курсором поисковый термин 370 - «ПЕРСИДСКИЙ» ("PERSIAN"), и он следует сразу после курсора 310.

[115] В приведенном в пример варианте осуществления настоящего технического решения, когда текущее положение курсора является положением внутри поискового термина, как на Фиг. 6 (т.е. курсор 310 расположен в поисковом термине 352), указанный курсором поисковый термин 370 является поисковым термином 352, в котором находится курсор 310. Например, на Фиг. 6, указанный курсором поисковый термин 370 - «КОТ» ("CAT"), и в нем находится курсор 310. Аналогично, если курсор 310 используется для выбора всего поискового термина 352 целиком (так же упоминается в этой области техники как выделение полученного поискового термина 352), указанный курсором поисковый термин 370 является поисковым термином 352, который выбран (или выделен).

[116] В приведенном в пример варианте осуществления настоящего технического решения, когда текущее положение курсора является положением в конце поискового запроса или в конце поискового термина, как на Фиг. 4 или 7 (т.е. курсор 310 расположен сразу после поискового термина 352), указанный курсором поисковый термин 370 является поисковым термином 352, следующим сразу перед курсором 310. Например, на Фиг. 7, указанный курсором поисковый термин 370 - «КОТ» ("CAT"), и он следует сразу перед курсором 310.

[117] С учетом Фиг. 6, 7 и 11, в алгоритме предложенного замещения полученный поисковый алгоритм 350 обрабатывается для определения указанного курсором поискового термина 370 на основе текущего положения курсора 310. Первая часть 372 полученного поискового запроса определяется как часть полученного поискового запроса 350, идущая перед указанным курсором поисковым термином 370 в полученном поисковом запросе 350. Вторая часть 374 полученного поискового запроса определяется как часть полученного поискового запроса 350, идущая после указанного курсором поискового термина 370 в полученном поисковом запросе 350. В примере, приведенном на Фиг. 6, первая часть 372 полученного поискового запроса - «ПЕРСИДСКИЙ» ("PERSIAN"), вторая часть 374 полученного поискового запроса -«ФОТО» ("PHOTO"), а указанный курсором поисковой термин 370 - «КОТ» ("CAT").

[118] Предыдущие поисковые запросы 390, полученные из базы данных 128 затем сравниваются с полученными поисковыми запросами 350 для того, чтобы найти подгруппу 380 предыдущих поисковых запросов 390, где каждый предыдущий поисковый запрос 390 включает в себя первую часть 372 полученного поискового запроса, вторую часть 374 полученного поискового запроса и по меньшей мере один поисковый термин между первой и второй частями полученного поискового запроса (372, 374), который не является указанным курсором поисковым термином 370. В примере на Фиг. 6, каждый предыдущий поисковый запрос 390 в подгруппе 380 предыдущих поисковых запросов 390 включает в себя слова «ПЕРСИДСКИЙ» ("PERSIAN") и «ФОТО» ("PHOTO"), и по меньшей мере один другой поисковый термин, отличающийся от слова «КОТ» ("CAT"), расположенного между «ПЕРСИДСКИЙ» ("PERSIAN") и «ФОТО» ("PHOTO"). Например, подгруппа 380 предыдущих поисковых запросов 390 включает в себя «ПЕРСИДСКАЯ СИРЕНЬ ФОТО» ("PERSIAN LILAC PHOTO"), «ПЕРСИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO"), «ПРИМЕРЫ ПЕРСИДСКОЙ АРХИТЕКТУРЫ ФОТО» ("EXAMPLES OF PERSIAN ARCHITECTURE PHOTO"), «ПЕРСИДСКАЯ ПИЩА ФОТО» ("PERSIAN FOOD PHOTO") и «ПЕРСИДСКИЕ ДЕТИ ТРЕНИРУЮТСЯ ФОТО» (PERSIAN CHILDREN EXERCISING PHOTO").

[119] Как упомянуто выше для алгоритма вставки, как только подгруппа 380 предыдущих поисковых запросов 390 определена с помощью выполнения алгоритма замещения, один или несколько предыдущих поисковых запросов 390 в подгруппе 380 выбираются как предложенные поисковые запросы 360 для представления пользователю на основе таких факторов как (без введения ограничений): история поиска для конкретного пользователя, для конкретной поисковой сессии, конкретной географической области, в которой осуществляется поиск, семантическое или контекстуальное сходство с полученным поисковым запросом 350, и т.д. Может быть использован любой другой подходящий алгоритм ранжирования и выбора.

[120] В некоторых вариантах осуществления настоящего технического решения предыдущие поисковые запросы 390 могут также быть обработаны перед представлением пользователю предложенного поискового запроса 360. Например, предыдущий поисковый запрос «ПРИМЕРЫ ПЕРСИДСКОЙ АРХИТЕКТУРЫ ФОТО» ("EXAMPLES OF PERSIAN ARCHITECTURE PHOTO") может быть обработан для удаления слова «ПРИМЕРЫ» ("EXAMPLES OF"), чтобы, таким образом, предложенный поисковый запрос 360 обладал той же структурой, что и полученный поисковый запрос 350, т.е. предложенный поисковый запрос 360 отличается от полученного поискового запроса 350 только указанным курсором поисковым термином 370 («КОТ» ("CAT") в этом примере).

[121] Предложенные поисковые запросы могут быть представлены пользователю в форме списка предложенных поисковых слов 362, которые замещают указанный курсором поисковый термин 370 (например, «ШИНШИЛЛА» ("CHINCHILLA") и «СИРЕНЬ» ("LILAC")), или в форме списка предложенных поисковых запросов 360 («ПЕРСИДСКАЯ ШИНШИЛЛА ФОТО» ("PERSIAN CHINCHILLA PHOTO") и «ПЕРСИДСКАЯ СИРЕНЬ ФОТО» ("PERSIAN LILAC PHOTO".))

Алгоритм предложенного удаления

[122] При выполнении алгоритма предложенного удаления полученный поисковый запрос 350 обрабатывается для определения указанного курсором поискового термина 370, первой части 372 полученного поискового запроса и второй части 374 полученного поискового запроса.

[123] Затем предыдущие поисковые запросы 390, полученные из базы данных 128, сравниваются с полученным поисковым запросом для того, чтобы найти предыдущий поисковый запрос 390, в котором первая часть 372 полученного поискового запроса следует сразу после второй части 374 полученного поискового запроса без указанного курсором поискового термина 370, находящегося между первой частью 372 полученного поискового запроса и второй частью 374 полученного поискового запроса. Если обнаружен такой поисковый запрос, то предложенный поисковый термин 360 определяется удалением указанного курсором поискового термина 370 в полученном поисковом запросе 350. В примере, приведенном на Фиг. 6, где первая часть 372 полученного поискового запроса - «ПЕРСИДСКИЙ» ("PERSIAN"), вторая часть 374 полученного поискового запроса - «ФОТО» ("PHOTO"), а указанный курсором поисковой термин 370 - «КОТ» ("CAT"), «ПЕРСИДСКИЕ ФОТО» ("PERSIAN PHOTO") определяется как предложенный поисковый термин 360, когда он обнаруживается в базе данных 128 предыдущих поисковых терминов.

[124] Следует также иметь в виду, что, как только пользователь выбирает конкретный предложенный поисковый термин 360, и предложенный поисковый термин 360 отображается в интерфейсе 256 поисковых запросов, причем интерфейс 258 поисковых результатов отображает поисковые результаты, относящиеся к этому конкретному поисковому запросу 360, какие-либо последующие действия пользователя по перемещению курсора 310 в различные положения в интерфейсе 256 поисковых запросов с расположенным в нем выбранным поисковым запросом 360 приведут к созданию дополнительных предложенных поисковых запросов 360 посредством обработки выбранных предложенных поисковых запросов 360 с использованием способа 400, описанного выше, для обработки поисковых запросов 350. Таким образом, ранее выбранный поисковый запрос 360 будет отправлен процессору 240 как поисковый запрос 350 с целью создания дополнительных предложенных поисковых запросов 360.

[125] Кроме того, следует понимать, что, в общем случае, полученный поисковый запрос 350 также обрабатывается другими способами, в дополнение к алгоритмам предложений, описанным выше. Поисковый запрос 350, полученный от пользователя, включает в себя последовательность буквенно-цифровых и символьных знаков, которые обрабатываются для определения поисковых слов 352, включенных в этот запрос. Как будет понятно специалисту в данной области техники, последовательность знаков в поисковом запросе 350 обрабатывается с использованием одной или нескольких техник, включающих в себя (но не ограничивающихся): разбор и анализ (парсинг, от англ. "parsing"), семантический анализ, контекстуальный анализ, сравнение шаблонов и так далее. Например, в общем случае, последовательные поисковые слова 352 разделяются одним пробелом, но в некоторых случаях, поисковые запросы 350, введенные пользователем, могут не содержать пробелы, или могут содержать более двух пробелов, разделяющих последовательные поисковые слова 352. Знаки поискового запроса 350 обрабатываются для того, чтобы разделить поисковые слова 352, учитывая возможность таких различий в шаблоне знаков. В примере поискового запроса 350, приведенном на Фиг. 3-7, каждый поисковый термин 352 включает в себя единственное слово и, таким образом, в поисковом запросе 350 присутствует три поисковых слова. В приведенном выше описании слова «поисковый термин» и «поисковое слово» используются взаимозаменяемо, но следует понимать, что поисковый термин 352 может быть определен как отличающийся от поискового слова в некоторых случаях. Например, поисковый термин 352 может включать в себя более одного слова. Например, поисковый запрос «НЬЮ-ЙОРК ТАЙМС СКВЕР ФОТО» ("NEW YORK TIMES SQUARE PHOTO") включает в себя поисковые слова «НЬЮ», «ЙОРК», «ТАЙМС», «СКВЕР» и «ФОТО» ("NEW, "YORK", "TIMES", "SQUARE", и "PHOTO"), и поисковые термины «НЬЮ-ЙОРК», «ТАЙМС-СКВЕР» и «ФОТО». Аналогично, предложенный поисковый термин 362 может также включать в себя одно или несколько слов.

[126] Настоящее техническое решение, описанное здесь, дает пользователю возможность проводить поиск более эффективно, и получать желаемые результаты посредством меньшего количества этапов поиска, одновременно улучшая пользовательский опыт при проведении поисков. Повышенная эффективность поиска, являющаяся следствием преимуществ настоящего технического решения, дает возможность сократить потребление ресурсов, например, трафика и энергии, при использовании настоящего технического решения. Настоящее техническое решение может быть использовано на устройствах, обладающих более низкими показателями обработки данных и энергонакапливания, чем некоторые другие известные на текущем уровне техники технологии веб-поиска, таким образом, электронные устройства, на которых применяется настоящее техническое решение, могут быть меньше по своим физическим размерам.

[127] Важно иметь в виду, что варианты осуществления настоящего технического решения могут быть реализованы с проявлением и других технических результатов.

[128] [Пункт 1] Способ (400) создания предложений для поискового запроса (350), полученного в поисковом приложении (250) от пользователя, причем способ (400) выполняется процессором (240), который функционально связан с поисковым приложением (250), способ (400) включает в себя:

получение (420) поискового запроса (350), причем поисковый запрос (350) является полученным поисковым запросом (350) и включает в себя по меньшей мере один полученный термин (352) поискового запроса;

получение (430) указания текущего положения курсора по отношению к полученному поисковому запросу (350); и

в ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, выполнение (440) одного из множества алгоритмов предложений, соответствующего одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора, для определения предложенного поискового запроса (360);

каждое из множества предварительно определенных положений курсора связано, по меньшей мере с одним из множества предварительно определенных предложенных действий, и каждое из множества предварительно определенных предложенных действий соответствует одному из множества алгоритмов предложений.

[129] [Пункт 2] Способ (400) по п. 1, в котором множество предварительно определенных предложенных действий включает в себя:

предложенное действие вставки для вставки предложенного поискового термина в полученный поисковый запрос (350), предложенное действие вставки связано с алгоритмом предложенной вставки;

предложенное действие удаления для удаления указанного курсором поискового термина (370) в полученном поисковом запросе (350), предложенное действие удаления связано с алгоритмом предложенного удаления; и

предложенное действие замещения для замещения указанного курсором поискового термина (370) в полученном поисковом запросе (350), предложенное действие замещения связано с алгоритмом предложенного замещения.

[130] [Пункт 3] Способ (400) по п. 1, в котором множество предварительно определенных положений курсора включает в себя:

положение курсора в начале поискового запроса;

положение курсора в конце поискового запроса;

положение курсора в начале поискового термина;

положение курсора в конце поискового термина; и

положение курсора внутри поискового термина.

[131] [Пункт 4] Способ (400) по п. 3, в котором множество предварительно определенных предложенных действий включает в себя:

предложенное действие вставки для вставки предложенного поискового термина в полученный поисковый запрос (350), предложенное действие вставки связано с алгоритмом предложенной вставки;

предложенное действие удаления для удаления указанного курсором поискового термина (370) по меньшей мере из одного полученного поискового термина (352) в полученном поисковом запросе (350), предложенное действие удаления связано с алгоритмом предложенного удаления; и

предложенное действие замещения для замещения указанного курсором поискового термина (370) в полученном поисковом запросе (350), предложенное действие замещения связано с алгоритмом предложенного замещения, и

где:

положение курсора в начале поискового запроса связано с действием предложенной вставки;

положение курсора в конце поискового запроса связано с действием предложенной вставки и действием предложенного удаления;

положение курсора в начале поискового термина связано с действием предложенной вставки;

положение курсора в конце поискового термина связано с действием предложенного замещения и действием предложенного удаления; и

положение курсора внутри поискового термина связано с действием предложенного замещения и действием предложенного удаления.

[132] [Пункт 5] Способ (400) по п. 4, в котором:

и алгоритм предложенной вставки, соответствующий действию предложенной вставки, и алгоритм предложенного удаления, соответствующий действию предложенного удаления, выполняются в ответ на то, что текущее положение курсора является положением курсора в конце поискового запроса.

[133] [Пункт 6] Способ (400) по п. 4 или 5, в котором:

и алгоритм предложенного замещения, соответствующий действию предложенного замещения, и алгоритм предложенного удаления, соответствующий действию предложенного удаления, выполняются в ответ на то, что текущее положение курсора является положением курсора в конце поискового термина.

[134] [Пункт 7] Способ по любому из пп. 4-6, в котором:

и алгоритм предложенного замещения, соответствующий действию предложенного замещения, и алгоритм предложенного удаления, соответствующий действию предложенного удаления, выполняются в ответ на то, что текущее положение курсора является положением курсора внутри поискового термина.

[135] [Пункт 8] Способ по любому из пп. 4-7, в котором выполнение алгоритма предложенной вставки включает в себя:

выбор предложенного поискового запроса (360) из множества предыдущих поисковых запросов, причем каждый из множества предыдущих поисковых результатов (390) включает в себя все термины по меньшей мере из одного полученного поискового термина (352) полученного поискового запроса (350), и по меньшей мере один поисковой термин в дополнение к каждому по меньшей мере из одного полученного поискового термина (352).

[136] [Пункт 9] Способ (400) по любому из пп. 4-8, в котором выполнение алгоритма предложенного замещения включает в себя:

определение поискового термина, указанного курсором, в полученном поисковом запросе (350), причем первая часть (372) полученного поискового термина, находится перед указанным курсором поисковым термином (370) в полученном поисковом запросе (350), а вторая часть (374) полученного поискового запроса находится после указанного курсором поискового термина (370), в полученном поисковом запросе (350); и

выбор предложенного поискового запроса (360) из множества предыдущих поисковых запросов (390), причем каждый из множества предыдущих поисковых результатов (390) включает в себя:

первую часть (372) полученного поискового термина;

вторую часть (374) полученного поискового термина, следующую после первой части (372) полученного поискового термина; и

по меньшей мере один поисковый термин, который отличается от указанного курсором поискового термина, находящийся между первой частью (372) полученного поискового запроса и второй частью (374) полученного поискового запроса.

[137] [Пункт 10] Способ (400) по любому из пп. 4-9, в котором выполнение алгоритма предложенного удаления включает в себя:

определение поискового термина, указанного курсором (370), в полученном поисковом запросе (350), причем первая часть (372) полученного поискового термина, находится перед указанным курсором поисковым термином (370) в полученном поисковом запросе (350), а вторая часть (374) полученного поискового запроса находится после указанного курсором поискового термина (370), в полученном поисковом запросе (350); и

удаление указанного курсором поискового термина (370) в полученном поисковом запросе (350) для определения предложенного поискового термина (360) в ответ на:

по меньшей мере один из множества предыдущих поисковых запросов (390) обладает первой частью (372) полученного поискового запроса, за которой непосредственно следует вторая часть (374) полученного поискового запроса без указанного курсором термина (370), находящегося между первой частью (372) полученного поискового запроса и второй частью (374) полученного поискового запроса.

[138] [Пункт 11] Способ (400) по любому из пп. 1-7, в котором предложенный поисковый запрос (360) определяется с использованием предыдущих поисковых запросов (390).

[139] [Пункт 12] Способ (400) по любому из пп. 1-11, в котором определение предложенного поискового запроса (360) включает в себя определение множества предложенных поисковых запросов (360) посредством выполнения одного из множества алгоритмов предложений, соответствующих одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора.

[140] [Пункт 13] Способ (400) по любому из пп. 1-11, в котором по меньшей мере одно из множества предварительно определенных положений курсора связано с множеством предварительно определенных предложенных действий.

[141] [Пункт 14] Способ (400) по п. 13, в котором:

каждый из множества алгоритмов предложений, соответствующий каждому из множества предварительно определенных предложенных действий, связанных с текущим положением курсора, выполняется в ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора.

[142] [Пункт 15] Способ по любому из пп. 1-15, в котором:

одно из предварительно определенных предложенных действий, связанное с текущим положением курсора, является первым предложенным действием, связанным с текущим положением курсора;

один из множества алгоритмов предложений является первым алгоритмом предложений, соответствующим первому предложенному действию;

предложенный поисковый запрос (360) является первым предложенным поисковым запросом, определенным с использованием первого алгоритма предложения, соответствующего первому предложенному действию; и

текущее положение курсора связано со вторым предложенным действием из множества предложенных действий, а второй алгоритм предложения соответствует второму предложенному действию; и

способ (400) дополнительно включает в себя:

определение второго предложенного поискового запроса (360) посредством выполнения второго алгоритма предложения, соответствующего второму предложенному действию, связанному с текущим положением курсора.

[143] [Пункт 16] Способ (400) по любому из пп. 1-14, дополнительно включающий в себя:

представление предложенного поискового запроса (360) как выбираемого пользователем элемента в окне поискового приложения, причем окно поискового приложения включает в себя полученный поисковый запрос (350).

[144] [Пункт 17] Способ (400) по любому из пп. 1-14, дополнительно включающий в себя:

предоставление представления предложенного поискового запроса (360) как выбираемого пользователем элемента в окне (252) поискового приложения (250), причем окно (252) поискового приложения включает в себя полученный поисковый запрос (350).

[145] [Пункт 18] Способ (400) по п. 17, в котором представление предложенного поискового запроса (360) включает в себя одно из:

полный предложенный поисковый запрос (360);

часть (362) предложенного поискового запроса (360); и

удаление (366) части (352) полученного поискового запроса (350).

[146] [Пункт 19] Способ (400) по п. 2, в котором множество предварительно определенных положений курсора включает в себя:

положение курсора в начале поискового запроса;

положение курсора в конце поискового запроса;

положение курсора в начале поискового термина;

положение курсора в конце поискового термина; и

положение курсора внутри поискового термина.

[147] [Пункт 20] Сервер (120), включающий в себя:

процессор (240); и

интерфейс (230) сетевого обмена данными, функционально подключенный к процессору (240) для обмена данными через сеть (130) передачи данных с электронным устройством (110), выполняющим поисковое приложение,

процессор (240) выполнен с возможностью осуществлять:

получение (420) от электронного устройства (110) поискового запроса (350), причем поисковый запрос (350) является полученным поисковым запросом (350) и включает в себя по меньшей мере один полученный термин (352) поискового запроса;

получение (430) от электронного устройства (110) указания текущего положения курсора по отношению к полученному поисковому запросу (350); и

в ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, выполнение (440) одного из множества алгоритмов предложений, соответствующего одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора, для определения предложенного поискового запроса (360),

каждое из множества предварительно определенных положений курсора связано по меньшей мере с одним из множества предварительно определенных предложенных действий,

каждое из множества предварительно определенных предложенных действий соответствует одному из множества алгоритмов предложений.

[148] [Пункт 21] Сервер по п. 20, выполненный с дополнительной возможностью осуществлять:

предоставление определенного предложенного поискового запроса (360) на электронное устройство (110) для представления его пользователю электронного устройства (110).

[149] [Пункт 22] Электронное устройство (110), включающее в себя: процессор (240);

пользовательское устройство (220) вывода, функционально подключенное к процессору (240) и настроенное для отображения окна (252) пользовательского приложения;

пользовательское устройство (210) ввода, функционально подключенное к процессору (240) и настроенное для предоставления пользователю возможности вводить поисковый запрос (350) в окно (252) поискового приложения;

указательное устройство (225), функционально подключенное к пользовательскому устройству (220) вывода и процессору (240), причем указательное устройство (225) настроено на предоставление пользователю возможности устанавливать положение курсора (310) в поисковом запросе (350) в окне (252) поискового приложения; и

интерфейс (230) сетевого обмена данными, функционально подключенный к процессору (240) и настроенный на обмен данными с сервером (120) через сеть (130) передачи данных;

процессор (240) выполнен с возможностью осуществлять:

получение (420) поискового запроса (350), причем поисковый запрос (350) является полученным поисковым запросом (350) и включает в себя по меньшей мере один полученный термин (352) поискового запроса;

получение (430) указания текущего положения курсора по отношению к полученному поисковому запросу;

в ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, выполнение (440) одного из множества алгоритмов предложений, соответствующего одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора, для определения предложенного поискового запроса (360),

каждое из множества предварительно определенных положений курсора связано, следовательно, по меньшей мере с одним из множества предварительно определенных предложенных действий,

каждое из множества предварительно определенных предложенных действий соответствует одному из множества алгоритмов предложений; и

предоставление определенного предложения для поискового запроса (360) в окне (252) поискового приложения в пользовательском устройстве (220) вывода.

[150] Специалисты в данной области техники поймут, что в настоящем описании выражение «получение данных» от пользователя подразумевает получение электронным устройством 110 данных от пользователя в виде электронного (или другого) сигнала. Кроме того, специалисты в данной области техники поймут, что отображение данных пользователю через графический интерфейс пользователя (например, экран 220 электронного устройства 110 и тому подобное) может включать в себя передачу сигнала графическому интерфейсу пользователя, этот сигнал включает в себя данные, которые могут быть обработаны, и по меньшей мере часть этих данных может отображаться пользователю через графический интерфейс пользователя.

[151] Некоторые из этих этапов, а также передача-получение сигнала хорошо известны в данной области техники и поэтому для упрощения были опущены в конкретных частях данного описания. Сигналы могут быть переданы-получены с помощью оптических средств (например, оптоволоконного соединения), электронных средств (например, проводного или беспроводного соединения) и механических средств (например, на основе давления, температуры или другого подходящего параметра).

[152] Модификации и улучшения вышеописанных вариантов осуществления настоящего технического решения будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не несет никаких ограничений. Таким образом, объем настоящего технического решения ограничен только объемом прилагаемой формулы изобретения.

Похожие патенты RU2632269C2

название год авторы номер документа
СПОСОБ И СЕРВЕР ДЛЯ КЛАСТЕРИЗАЦИИ ПРЕДЛОЖЕНИЙ ДЛЯ ПОИСКОВЫХ ЗАПРОСОВ 2015
  • Шорина Светлана Юрьевна
  • Плахов Андрей Григорьевич
  • Яников Иван Георгиевич
RU2632140C2
Способ и система предоставления контекстуальной информации 2016
  • Сапожников Андрей Вениаминович
  • Чеканин Антон Игоревич
  • Антонов Егор Сергеевич
RU2632126C1
ПАНЕЛЬ УПРАВЛЕНИЯ ПОИСКОВЫМ МЕХАНИЗМОМ 2007
  • Раппапорт Ален Т.
  • Адамсон Дэн
  • Ших Лео
  • Чое Тимоти Б.
RU2442213C2
ЭФФЕКТИВНОЕ ХРАНЕНИЕ ДАННЫХ РЕГИСТРАЦИИ С ПОДДЕРЖКОЙ ЗАПРОСА, СПОСОБСТВУЮЩЕЕ БЕЗОПАСНОСТИ КОМПЬЮТЕРНЫХ СЕТЕЙ 2007
  • Хуан Вэй
  • Тан Вэньтин
  • Беедген Кристиан Ф.
RU2424568C2
СПОСОБ ОБРАБОТКИ ЗАПРОСА ПОЛЬЗОВАТЕЛЯ НА ДОСТУП К ВЕБ-РЕСУРСУ И СЕРВЕР 2014
  • Сапунова Нина Викторовна
  • Сметанин Никита Алексеевич
  • Рубцова Екатерина Владимировна
  • Матвеев Григорий Александрович
  • Ерошин Евгений Валерьевич
  • Вознин Максим Павлович
RU2583764C1
СПОСОБ И СИСТЕМА ПОИСКА ИЗОБРАЖЕНИЙ В РЕЖИМЕ ИНТЕРАКТИВНЫХ ПОКУПОК 2011
  • Кунду Рини
RU2586028C2
РЕГИСТРАЦИЯ ДЛЯ ПОИСКОВОГО ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ СИСТЕМНОГО УРОВНЯ 2011
  • Вайдианатхан Прия
  • Упхофф Брайан Е.
  • Паддок Брендон Х.
  • Монк Стефани М.
  • Саркар Дона
  • Чэнь Вэньтао
  • Эверетт Эдвард Бойл
  • Мишра Манав
  • Гебхард Дерек С.
  • Уайт Ричард Джейкоб
  • Лю Инь
RU2581840C2
СИСТЕМА, СПОСОБ И ИНТЕРФЕЙС ДЛЯ ОБЕСПЕЧЕНИЯ ПЕРСОНАЛИЗИРОВАННОГО ПОИСКА И ДОСТУПА К ИНФОРМАЦИИ 2005
  • Хорвиц Эрик Дж.
  • Тиван Джейм Брукс
  • Дюмэ Сузан Т.
RU2419858C2
ОБЕСПЕЧЕНИЕ ВОЗМОЖНОСТИ РЕКЛАМОДАТЕЛЯМ ПРЕДЛАГАТЬ ЦЕНУ НА АБСТРАКТНЫЕ ОБЪЕКТЫ 2011
  • Рубинштейн Бенджамин
  • Чандра Ашок
  • Дабровски Оливер
  • Джеммелл Дэвид Джеймс
  • Ли Мин-Джон
RU2589872C2
ИНТЕЛЛЕКТУАЛЬНОЕ УТОЧНЕНИЕ ПОИСКА 2014
  • Солхейм Хельге Г.
  • Иверсен Йорген В.
  • Попе Александр Й.
  • Тенное Сверре К.
  • Тэйлор Майкл Джеймс
RU2665302C2

Иллюстрации к изобретению RU 2 632 269 C2

Реферат патента 2017 года СПОСОБ, СЕРВЕР И ЭЛЕКТРОННОЕ УСТРОЙСТВО СОЗДАНИЯ ПРЕДЛОЖЕНИЙ ДЛЯ ПОИСКОВОГО ЗАПРОСА

Настоящее техническое решение относится к представлению предложений для поискового запроса в окне браузера. Способ создания предложений для поискового запроса, полученного в поисковом приложении. Способ выполняется процессором, который функционально связан с поисковым приложением. Способ включает в себя получение поискового запроса и указания на соответствующее ему текущее положение курсора. Поисковый запрос является полученным поисковым запросом и включает в себя по меньшей мере один полученный термин поискового запроса. В ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, для определения предложения для поискового запроса выполняется один из множества алгоритмов предложений, соответствующий одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора. Каждое из множества предварительно определенных положений курсора связано по меньшей мере с одним из множества предварительно определенных предложенных действий. Каждое из множества предварительно определенных предложенных действий соответствует одному из множества алгоритмов предложений. Технический результат заключается в повышении скорости взаимодействия пользователя с поисковой машиной. 3 н. и 18 з.п. ф-лы, 13 ил.

Формула изобретения RU 2 632 269 C2

1. Способ создания предложений для поискового запроса, полученного от пользователя поискового приложения, причем способ выполняется процессором, который функционально связан с поисковым приложением, способ включает в себя:

получение поискового запроса, причем поисковый запрос является полученным поисковым запросом и включает в себя по меньшей мере один полученный термин поискового запроса;

получение указания текущего положения курсора по отношению к полученному поисковому запросу; и

в ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, для определения предложения для поискового запроса выполнение одного из множества алгоритмов предложений, соответствующего одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора,

каждое из множества предварительно определенных положений курсора связано, следовательно, по меньшей мере с одним из множества предварительно определенных предложенных действий, и каждое из множества предварительно определенных предложенных действий соответствует одному из множества алгоритмов предложений.

2. Способ по п. 1, в котором множество предварительно определенных предложенных действий включает в себя:

предложенное действие вставки для вставки предложенного поискового термина в полученный поисковый запрос, предложенное действие вставки связано с алгоритмом предложенной вставки;

предложенное действие удаления для удаления указанного курсором поискового термина в полученном поисковом запросе, предложенное действие удаления связано с алгоритмом предложенного удаления; и

предложенное действие замещения для замещения указанного курсором поискового термина в полученном поисковом запросе, предложенное действие замещения связано с алгоритмом предложенного замещения.

3. Способ по п. 1, в котором множество предварительно определенных положений курсора включает в себя:

положение курсора в начале поискового запроса;

положение курсора в конце поискового запроса;

положение курсора в начале поискового термина;

положение курсора в конце поискового термина; и

положение курсора внутри поискового термина.

4. Способ по п. 3, в котором множество предварительно определенных предложенных действий включает в себя:

предложенное действие вставки для вставки предложенного поискового термина в полученный поисковый запрос, предложенное действие вставки связано с алгоритмом предложенной вставки;

предложенное действие удаления для удаления указанного курсором поискового термина по меньшей мере из одного полученного поискового термина в полученном поисковом запросе, предложенное действие удаления связано с алгоритмом предложенного удаления; и

предложенное действие замещения для замещения указанного курсором поискового термина, предложенное действие замещения связано с алгоритмом предложенного замещения, и

где:

положение курсора в начале поискового запроса связано с действием предложенной вставки;

положение курсора в конце поискового запроса связано с действием предложенной вставки и действием предложенного удаления;

положение курсора в начале поискового термина связано с действием предложенной вставки;

положение курсора в конце поискового термина связано с действием предложенного замещения и действием предложенного удаления; и

положение курсора внутри поискового термина связано с действием предложенного замещения и действием предложенного удаления.

5. Способ по п. 4, в котором:

и алгоритм предложенной вставки, соответствующий действию предложенной вставки, и алгоритм предложенного удаления, соответствующий действию предложенного удаления, выполняют в ответ на то, что текущее положение курсора является положением курсора в конце поискового запроса.

6. Способ по п. 4, в котором:

и алгоритм предложенного замещения, соответствующий действию предложенного замещения, и алгоритм предложенного удаления, соответствующий действию предложенного удаления, выполняют в ответ на то, что текущее положение курсора является положением курсора в конце поискового термина.

7. Способ по п. 4, в котором:

и алгоритм предложенного замещения, соответствующий действию предложенного замещения, и алгоритм предложенного удаления, соответствующий действию предложенного удаления, выполняют в ответ на то, что текущее положение курсора является положением курсора внутри поискового термина.

8. Способ по п. 4, в котором при выполнении алгоритма предложенной вставки выполняют:

выбор предложенного поискового запроса из множества предыдущих поисковых запросов;

каждый из множества предыдущих поисковых результатов, включающий в себя все термины по меньшей мере из одного полученного поискового термина полученного поискового запроса, и по меньшей мере один поисковый термин в дополнение к каждому по меньшей мере из одного полученного поискового термина.

9. Способ по п. 4, в котором при выполнении алгоритма предложенного замещения выполняют:

определение поискового термина, указанного курсором, в полученном поисковом запросе, причем первая часть полученного поискового термина находится перед указанным курсором поисковым термином в полученном поисковом запросе, а вторая часть полученного поискового запроса находится после указанного курсором поискового термина, в полученном поисковом запросе; и

выбор предложенного поискового запроса из множества предыдущих поисковых запросов, причем каждый из множества предыдущих поисковых результатов включает в себя:

первую часть полученного поискового термина;

вторую часть полученного поискового термина, следующую после первой части полученного поискового термина; и

по меньшей мере один поисковый термин, который отличается от указанного курсором поискового термина, находящийся между первой частью полученного поискового запроса и второй частью полученного поискового запроса.

10. Способ по п. 4, в котором при выполнении алгоритма предложенного удаления выполняют:

определение поискового термина, указанного курсором, в полученном поисковом запросе, причем первая часть полученного поискового термина находится перед указанным курсором поисковым термином в полученном поисковом запросе, а вторая часть полученного поискового запроса находится после указанного курсором поискового термина, в полученном поисковом запросе; и

удаление указанного курсором поискового термина в полученном поисковом запросе для определения предложенного поискового термина в ответ на то, что:

по меньшей мере один из множества предыдущих поисковых запросов обладает первой частью полученного поискового запроса, за которой непосредственно следует вторая часть полученного поискового запроса без указанного курсором термина, находящегося между первой частью полученного поискового запроса и второй частью полученного поискового запроса.

11. Способ по п. 1, в котором предложенный поисковый запрос определяют с использованием предыдущих поисковых запросов.

12. Способ по п. 1, в котором при определении предложенного поискового запроса выполняют определение множества предложенных поисковых запросов посредством выполнения одного из множества алгоритмов предложений, соответствующих одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора.

13. Способ по п. 1, в котором по меньшей мере одно из множества предварительно определенных положений курсора связано, таким образом, с множеством предварительно определенных предложенных действий.

14. Способ по п. 13, в котором:

каждый из множества алгоритмов предложений, соответствующий каждому из множества предварительно определенных предложенных действий, связанных с текущим положением курсора, выполняют в ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора.

15. Способ по п. 1, в котором:

одно из предварительно определенных предложенных действий, связанное с текущим положением курсора, является первым предложенным действием, связанным с текущим положением курсора;

один из множества алгоритмов предложений является первым алгоритмом предложений, соответствующим первому предложенному действию; предложенный поисковый запрос является первым предложенным поисковым запросом, определенным с использованием первого алгоритма предложения, соответствующего первому предложенному действию; и

текущее положение курсора связано со вторым предложенным действием из множества предложенных действий, а второй алгоритм предложения соответствует второму предложенному действию; и

способ, в котором дополнительно выполняют:

определение второго предложенного поискового запроса посредством выполнения второго алгоритма предложения, соответствующего второму предложенному действию, связанному с текущим положением курсора.

16. Способ по п. 1, в котором дополнительно выполняют:

предоставление предложенного поискового запроса как выбираемого пользователем элемента в окне поискового приложения, причем окно поискового приложения включает в себя полученный поисковый запрос.

17. Способ по п. 1, в котором дополнительно выполняют:

предоставление представления предложенного поискового запроса как выбираемого пользователем элемента в окне поискового приложения, причем окно поискового приложения включает в себя полученный поисковый запрос.

18. Способ по п. 17, в котором представление предложенного поискового запроса включает в себя одно из:

полный предложенный поисковый запрос;

часть предложенного поискового запроса; и

удаление части полученного поискового запроса.

19. Сервер создания предложений для поискового запроса, полученного от пользователя поискового приложения, включающий в себя:

процессор; и

интерфейс сетевого обмена данными, функционально подключенный к процессору для обмена данными через сеть передачи данных с электронным устройством, выполняющим поисковое приложение,

процессор выполнен с возможностью осуществлять:

получение поискового запроса от электронного устройства, причем поисковый запрос является полученным поисковым запросом и включает в себя по меньшей мере один полученный термин поискового запроса;

получение от электронного устройства указания текущего положения курсора по отношению к полученному поисковому запросу; и

в ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, для определения предложения для поискового запроса выполнение одного из множества алгоритмов предложений, соответствующего одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора,

каждое из множества предварительно определенных положений курсора связано по меньшей мере с одним из множества предварительно определенных предложенных действий,

каждое из множества предварительно определенных предложенных действий соответствует одному из множества алгоритмов предложений.

20. Сервер по п. 19, в котором процессор выполнен с дополнительной возможностью осуществлять:

предоставление определенного предложенного поискового запроса на электронное устройство для представления его пользователю электронного устройства.

21. Электронное устройство создания предложений для поискового запроса, содержащее:

процессор;

пользовательское устройство вывода, функционально подключенное к процессору и настроенное для отображения окна поискового приложения;

пользовательское устройство ввода, функционально подключенное к процессору и настроенное для предоставления пользователю возможности вводить поисковый запрос в окно поискового приложения; и

указательное устройство, функционально подключенное к пользовательскому устройству вывода и процессору, причем указательное устройство настроено на предоставление пользователю возможности устанавливать положение курсора в поисковом запросе в окне поискового приложения;

интерфейс сетевого обмена данными, функционально подключенный к процессору и настроенный на обмен данными с сервером через сеть передачи данных;

процессор выполнен с возможностью осуществлять:

получение поискового запроса, причем поисковый запрос является полученным поисковым запросом и включает в себя по меньшей мере один полученный термин поискового запроса;

получение указания текущего положения курсора по отношению к полученному поисковому запросу; и

в ответ на то, что текущее положение курсора является одним из множества предварительно определенных положений курсора, для определения предложения для поискового запроса выполнение одного из множества алгоритмов предложений, соответствующего одному из множества предварительно определенных предложенных действий, связанных с текущим положением курсора,

каждое из множества предварительно определенных положений курсора связано по меньшей мере с одним из множества предварительно определенных предложенных действий,

каждое из множества предварительно определенных предложенных действий соответствует одному из множества алгоритмов предложений; и

предоставлять представление определенного предложения для поискового запроса представлено в окне поискового приложения в пользовательском устройстве вывода.

Документы, цитированные в отчете о поиске Патент 2017 года RU2632269C2

US 8577913 B1, 05.11.2013
US 8706750 B2, 22.04.2014
US 8700653 B2, 15.04.2014
US 8275759 B2, 25.09.2012.

RU 2 632 269 C2

Авторы

Козлов Дмитрий Владимирович

Кураленок Игорь Евгеньевич

Балян Максим Андреевич

Даты

2017-10-03Публикация

2015-09-24Подача