агрегирование и поиск данных профиля от различных служб

Классы МПК:G06F17/40 сбор данных и их регистрация
Автор(ы):, , ,
Патентообладатель(и):МАЙКРОСОФТ КОРПОРЕЙШН (US)
Приоритеты:
подача заявки:
2008-06-02
публикация патента:

Изобретение относится к области обработки данных профилей, ассоциированных с сетевыми службами. Техническим результатом является обеспечение возможности пользователю одной первичной сетевой службы агрегировать и получать доступ к данным профиля от различных сетевых служб. Данные профиля от различных сетевых служб могут быть объединены и запрошены от одной сетевой службы. Первичная сетевая служба может хранить данные пользовательского профиля для одной или более вторичных сетевых служб и первичной сетевой службы. При хранении данные от нескольких сетей могут быть агрегированы или объединены. Хранящиеся данные могут включать в себя данные пользовательского профиля и данные отношений для каждой сетевой службы, с которой первичная сетевая служба имеет учетную запись профиля. Граф пользовательских контактных отношений, существующих над первичной сетевой службой и одной или более вторичными сетевыми службами, может быть построен и опрошен. 3 н. и 13 з.п. ф-лы, 12 ил. агрегирование и поиск данных профиля от различных служб, патент № 2463654

агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654 агрегирование и поиск данных профиля от различных служб, патент № 2463654

Формула изобретения

1. Компьютерно-реализуемый способ сохранения данных, содержащий этапы, на которых:

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

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

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

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

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

3. Компьютерно-реализуемый способ по п.1, в котором этап сохранения включает в себя этапы, на которых:

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

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

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

4. Компьютерно-реализуемый способ по п.1, в котором на этапе сохранения сохраняют агрегированные данные в таблице пользовательских профилей.

5. Компьютерно-реализуемый способ по п.1, в котором на этапе сохранения сохраняют информацию идентификации пользователя для первичной сетевой службы и данные отношений профиля, ассоциированные с учетной записью вторичной сетевой службы, в таблице пользовательских отношений.

6. Компьютерно-реализуемый способ по п.1, дополнительно содержащий этапы, на которых:

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

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

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

получают идентификатор пользователя для первого пользователя из первого набора данных профиля;

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

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

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

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

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

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

9. Компьютерно-реализуемый способ по п.8, в котором на этапе определения информации местоположения определяют URL на основе идентификатора пользователя.

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

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

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

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

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

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

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

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

предоставляют эти один или более соответствующих пользовательских профилей клиенту.

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

13. Машиночитаемый носитель по п.11, в котором параметр разделения отношений указывает степени разделения, разрешенные между контактом, ассоциированным с первым пользователем, и первым пользователем.

14. Машиночитаемый носитель по п.11, в котором параметр отношений указывает, что:

первое доверительное отношение существует между первым пользователем и вторым пользователем в первичной сетевой службе;

второе доверительное отношение существует между вторым пользователем и третьим пользователем во вторичной сетевой службе; и

отношение существует между первым пользователем и третьим пользователем через две степени разделения.

15. Компьютерно-реализуемый способ доступа к данным, содержащий этапы, на которых:

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

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

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

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

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

предоставляют выбранные пользовательские профили клиенту.

16. Способ по п.15, в котором этап извлечения второго набора данных профиля содержит этапы, на которых:

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

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

Описание изобретения к патенту

Область техники, к которой относится изобретение

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

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

Сущность изобретения

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

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

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

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

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

В одном варианте осуществления агрегированные данные из нескольких сетей могут быть предоставлены в ответ на запрос. Запрос для одного или более пользовательских профилей первичной сетевой службы может быть принят. Хранилище данных может затем быть опрошено для запрошенных одного или более профилей. Хранилище данных может содержать агрегированные данные профиля, построенные из данных профиля первичной сетевой службы (первые наборы данных профиля) и данных профиля вторичной сетевой службы (вторые наборы данных профиля), причем первичная сетевая служба и вторичная сетевая служба являются отдельными службами, предоставляемыми через сеть. Поднабор агрегированных данных профиля доступен на основе данных отношений, включенных в один или более первых наборов данных профиля и один или более вторых наборов данных профиля. Данные отношений в одном или более вторых наборах данных профиля включают доверительное отношение между двумя пользователями первичной сетевой службы. Доверительное отношение не указано в данных отношений одного или более первых наборов данных профиля первичной сетевой службы. Поднабор агрегированных данных профиля затем предоставляется клиенту.

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

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

Фиг.1 - блок-схема варианта осуществления системы для агрегирования и запрашивания пользовательских профилей от нескольких сетевых служб.

Фиг.2 - блок-схема данных пользовательского профиля в хранилище данных.

Фиг.3 - вариант осуществления компьютерной среды для осуществления настоящей технологии.

Фиг.4A - пример пользовательских отношений в рамках различных сетевых служб.

Фиг.4B - пример отношений среди пользователей в различных сетях.

Фиг.5 - схема варианта осуществления способа для доступа и хранения данных пользовательского профиля.

Фиг.6 - схема и вариант осуществления способа для построения информации доступа к профилю.

Фиг.7 - пример пользовательского интерфейса для ввода данных вторичной сетевой службы.

Фиг.8 - схема и вариант осуществления способа для хранения данных профиля для вторичной сетевой службы.

Фиг.9 - схема варианта осуществления способа для предоставления данных профиля в ответ на запрос.

Фиг.10 - схема варианта осуществления способа для извлечения данных профиля.

Фиг.11 - пример страницы контента, предоставляющей профилю данные отношений для его различных сетей.

Подробное описание

Данные профиля от различных сетевых служб могут объединяться и запрашиваться от одной сетевой службы. Первичная сетевая служба может хранить данные пользовательского профиля для одной или более вторичных сетевых служб и первичной сетевой службы. При хранении данные от нескольких сетей могут быть агрегированы или объединены. Хранящиеся данные вторичной сетевой службы и данные первичной сетевой службы могут включать данные пользовательского профиля и данные отношений для каждой сетевой службы, для которой у первичной сетевой службы имеется учетная запись профиля. При запросе данные профиля могут быть показаны для различных сетевых служб одновременно как агрегированный или объединенный профиль. Например, первичная сетевая служба "Windows Live Spaces", предоставленная корпорацией Microsoft, Redmond, Washington, может извлекать и хранить данные от вторичной сетевой службы. "Windows Live Spaces" может затем отображать профили для своих собственных пользователей, которые также включают какие-либо соответствующие "LinkedIn" данные профиля для тех пользователей.

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

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

Фиг.1 - блок-схема варианта осуществления системы для агрегирования и запрашивания пользовательских профилей для различных сетевых служб. Система Фиг.1 включает клиента 110, первичную сетевую службу 190, поисковый агент 150 сетевой службы, вторичную сетевую службу 192, вторичную сетевую службу 194 и сеть 180.

Клиент 110 может связываться с первичной сетевой службой 190 и вторичной сетевой службой 192 через сеть 180. Клиент 110 может быть осуществлен как мобильное устройство, настольный компьютер, рабочая станция или некоторая другая машина. Клиент 110 включает сетевой браузер 115 или браузер клиент для доступа к серверам 120 и 160 контента сети через сеть 180. В некоторых вариантах осуществления пользователь клиент 110 может получить доступ к учетной записи пользователя для первичной сетевой службы 190, как это предоставляется серверами 120-130 и хранилищем 140 данных.

Сеть 180 может быть осуществлена как Internet или другая сеть WAN, сеть LAN, интрасеть, экстрасеть, частная сеть или другая сеть или сети.

Первичная сетевая служба 190 связывается с клиентом 110 через сеть 180 и включает сервер 120 сети, сервер 130 приложений и хранилище 140 данных. Сервер 120 сети может быть осуществлен как один или более серверов и принимать и обрабатывать запросы от клиента 110. Когда сервер 180 - Internet, сервер 120 сети может быть осуществлен как веб-сервер, который предоставляет страницы контента или другой контент, включая html контент, в ответ на запрос браузера 115 сети. При обработке этих запросов сервер 120 сети может запускать одно или более приложений на сервере 130 приложений.

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

Хранилище 140 данных может быть осуществлено как одна или более баз данных, SQL серверы или некоторый другой вид устройства хранения. В некоторых вариантах осуществления хранилище 140 данных содержит пользовательские данные для профилей, электронной почты, службы мгновенного обмена сообщениями и других коммуникационных служб, предоставляемых одним или более издателем первичной сетевой службы. В некоторых вариантах осуществления профили, хранимые в хранилище 140 данных и предоставляемые первичной сетевой службой 190, являются частью сетевой службы, называемой "Windows Live Spaces," корпорации Microsoft, Redmond, Washington.

Поисковый агент 150 сетевой службы может использоваться для получения доступа к данным от вторичных сетевых служб 192 и 194 и предоставления данных, извлеченных из этих служб в хранилище 140 данных. Например, поисковый агент 150 сетевой службы может получать доступ к профилю, размещаемому на конкретном URL, предоставляемом сетевой службой 192 или 194, извлекать данные профиля и хранить извлеченные данные локально в хранилище 140 данных. В некоторых вариантах осуществления поисковый агент 150 может быть осуществлен как агент, который принимает канал RSS, получает доступ к интерфейсу прикладной программы, или получает доступ к данным профиля вторичной сетевой службы некоторым другим образом. Работа сканера 150 сетевой службы рассматривается более подробно ниже.

Вторичная сетевая служба 192 включает сервер 160 сети и базу 165 данных. Сетевая служба 192 может также включать один или более серверов приложений (не показаны на Фиг.1). Сетевая служба, предоставляемая сервером 160 сети, и база 165 данных могут позволять одному или более пользователям связываться по сети с другими пользователями, имеющими учетную запись с вторичной сетевой службой 192. Подобным образом, вторичная сетевая служба 194 включает сервер 170 сети и базу 175 данных и предоставляет сетевую службу для одного или более пользователей, имеющих учетную запись с этой сетевой службой. Как и служба 192, сетевая служба 194 может также содержать один или более серверов приложений (не показаны).

Вторичная сетевая служба может быть синдицированной, заранее определенной или неопределенной сетевой службой. Синдицированная сетевая служба может быть связана с первичной сетевой службой 190. Например, синдицированная сетевая служба может быть предоставлена тем же издателем или компанией, такой как корпорация Microsoft, как та, которая предоставляет первичную сетевую службу 190. Синдицированная сетевая служба может содержать профили, отличающиеся от профилей первичной сетевой службы 190, но данные могут быть ассоциированы с тем же пользовательским идентификатором и доступны без необходимости создания местоположения профиля, такого как URL. Например, синдицированная сетевая служба может быть приведена в действие тем же издателем первичной сетевой службы и быть совместной под несколькими марками с информацией, идентифицирующей издателя первичной службы (например, "Helicopter Pilots R Us Spaces with Windows Live").

Заранее определенная сетевая служба не предоставляется тем же издателем, как и первичная сетевая служба, но распознается первичной сетевой службой 190. Первичная сетевая служба 190 может создавать информацию местоположения (такую, как URL) пользовательского профиля для заранее определенной сетевой службы из сохраненной информации URL упомянутой службы и информации пользовательского идентификатора для упомянутого профиля, который будет принят. Неопределенная сетевая служба - служба, которая не определена первичной сетевой службой 190. Первичная сетевая служба 190 может создавать информацию местоположения профиля (такую, как URL) для неопределенной сетевой службы из информации профиля URL и информации индикатора пользовательского профиля, предоставляемой пользователем первичной сетевой службы. Каждый вид вторичной сетевой службы определяется более подробно ниже.

Фиг.2 - блок-схема хранилища 140 данных. Хранилище 140 данных включает пользовательскую таблицу 142, таблицу 144 пользовательских профилей, таблицу 146 отношений пользователей и конфигурационный файл 148.

Пользовательская таблица 142 хранит данные пользовательского профиля для первичной сетевой службы 190. Данные пользовательского профиля, хранимые в пользовательской таблице 142, могут включать имя пользователя, адрес, пол, род занятий, адрес электронной почты, предпочтения и другие пользовательские данные. Таблица 144 пользовательских профилей может включать список одного или более профилей, предоставляемых одной или более вторичными сетевыми службами для пользователя, имеющего учетную запись с первичной сетевой службой 190. Таким образом, для пользователей, имеющих учетную запись с первичной сетевой службой 190, данные для их профилей во вторичных сетевых службах 192 и 194 хранятся в таблице 144 пользовательских профилей. Данные, содержащиеся в таблице 144 пользовательских профилей, могут включать пользовательский идентификатор, предоставляемый для первичной сетевой службы, идентификацию вторичной сетевой службы, ассоциированную с пользовательским профилем в этой службе, и данные, содержащиеся в пользовательском профиле во вторичной сетевой службе, такие как пользовательский идентификатор для упомянутой службы, имя пользователя, адрес, пол, род занятий и т.д., как предоставляется в пользовательском профиле вторичной сетевой службы.

Таблица 146 отношений пользователей может содержать данные отношений между двумя пользователями для вторичной сетевой службы. Данные, содержащиеся в таблице 146 отношений пользователей, включают пользовательский идентификатор первого пользователя и второго пользователя первичной сетевой службы 190 и идентификацию вторичной сетевой службы, в которой существуют упомянутые отношения. Таблица 146 отношений пользователей может хранить данные как массив, целое или некоторое другое значение. Конфигурационный файл 148 может хранить URL и другие данные для заранее определенных сетей и синдицированных сетей. Эти данные используются для генерации информации доступа, такой как URL профиля во вторичной сетевой службе. Использование конфигурационного файла 148 данных рассматривается более подробно ниже.

Фиг.3 - вариант осуществления компьютерной среды для осуществления настоящей технологии. Компьютерная среда Фиг.3 может использоваться для осуществления клиента 110, сервера 120 сети, сервера 130 приложений, хранилища 140 данных, поискового агента 150 сетевой службы, серверов 160 и 170 сети и баз 165 и 175 данных.

Компьютерная среда 300 Фиг.3 - только один пример компьютерной среды и не имеет целью предложить какие-либо ограничения на область применения или функциональность упоминаемой здесь технологии. Не должна упоминаемая компьютерная среда 300 интерпретироваться как имеющая какую-либо зависимость или требования, относящиеся к какому-либо одному или сочетанию компонентов, показанных в примерной операционной среде 300.

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

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

Со ссылкой на Фиг.3, иллюстративная система для осуществления рассматриваемой здесь технологии включает вычислительное устройство общего назначения в форме компьютера 310. Компоненты компьютера 310 могут включать, но не ограничиваясь, блок 320 обработки, системную память 330 и системную шину 321, которая связывает различные системные компоненты, включая упомянутую системную память, с блоком 320 обработки. Упомянутая системная шина 321 может быть любого из нескольких типов структур шин типа, включая шину памяти или контроллер памяти, периферийную шину и локальную шину, используя какую-либо архитектуру из различных архитектур шин. К примеру и не ограничиваясь, такие архитектуры включают шину стандартной промышленной архитектуры (ISA), шину микроканальной архитектуры (MCA), шину расширенной архитектуры ISA (EISA), локальную шину стандарта Ассоциации по стандартам в области видеоэлектроники (VESA) и шину для соединения периферийных устройств (PCI), также известную как шину Mezzanine.

Компьютер 310 обычно включает ряд машиночитаемых носителей. Машиночитаемый носитель может быть любым доступным носителем, к которому может быть получен доступ компьютером 310, и включает как энергозависимый, так и энергонезависимый носитель, съемный и несъемный носитель. К примеру и без ограничения, машиночитаемый носитель может содержать компьютерный носитель хранения и коммуникационный носитель. Компьютерный носитель хранения включает как энергозависимый и энергонезависимый, так съемный и несъемный носитель, осуществленный в каком-либо способе или технологии для хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Компьютерный носитель хранения включает, но не ограничиваясь, RAM, ROM, EEPROM, флеш-память или другие технологии памяти, CD-ROM, универсальные цифровые диски (DVD) или другие оптические диски хранения, магнитные кассеты, магнитные ленты, магнитные диски хранения или другие магнитные устройства хранения или любые другие носители, которые могут использоваться для хранения требуемой информации и к которым может быть получен доступ через компьютер 310. Коммуникационный носитель обычно осуществляет машиночитаемые инструкции, структуры данных, программные модули или другие данные в модулированном сигнале данных, таком как несущая волна или другие транспортные агенты, и включает какую-либо среду доставки информации. Термин "модулированный сигнал данных" означает сигнал, один или более параметров которого устанавливается или меняется таким образом, чтобы кодировать информацию в упомянутом сигнале. К примеру и без ограничения, коммуникационный носитель включают проводную среду, такую как проводная сеть или прямое проводное соединение, и беспроводную среду, такую как акустическая, RF, инфракрасная и другая беспроводная среда. Сочетания чего-либо из указанного выше должны также включаться в область действия машиночитаемого носителя.

Системная память 330 включает компьютерный носитель хранения в форме энергозависимой и/или энергонезависимой памяти, такой как постоянное запоминающее устройство (ROM) 331 и оперативное запоминающее устройство (RAM) 332. Базовая система 333 ввода/вывода (BIOS), содержащая основные процедуры, которые помогают передавать информацию между элементами в компьютере 310, такие как при запуске, обычно хранятся в ROM 331. Память RAM 332 обычно содержит данные и/или программные модули, которые сразу доступны и/или в настоящее время работают на процессоре 320. К примеру и без ограничения, Фиг.3 иллюстрирует операционную систему 334, прикладные программы 335, другие программные модули 336 и данные 337 программы.

Компьютер 310 может также включать другой съемный/несъемный, энергозависимый/энергонезависимый компьютерный носитель хранения. К примеру только, Фиг.3 иллюстрирует жесткий дисковод 340, который читает с или записывает на несъемный, энергонезависимый магнитный носитель, магнитный дисковод 351, который читает с или записывает на съемный, энергонезависимый магнитный диск 352, и оптический дисковод 355, который читает с или записывает на съемный, энергонезависимый оптический диск 356, такой как CD-ROM или другой оптический носитель. Другой съемный/несъемный, энергозависимый/энергонезависимый компьютерный носитель хранения, который может быть использован в иллюстративной операционной среде, включает, но не ограничиваясь, кассеты магнитной ленты, карты флеш-памяти, универсальные цифровые диски, цифровую видеокассету, твердотельную память RAM, твердотельную память ROM и т.п. Жесткий дисковод 341 обычно соединяется с системной шиной 321 через интерфейс несъемной памяти, такой как интерфейс 340, и магнитный дисковод 351 и оптический дисковод 355 обычно соединяются с системной шиной 321 посредством интерфейса съемной памяти, такого как интерфейс 350.

Дисководы и их ассоциированный компьютерный носитель хранения, рассмотренные выше и изображенные на Фиг.3, обеспечивают хранение машиночитаемых инструкций, структур данных, программных модулей и других данных для компьютера 310. На Фиг.3, например, жесткий дисковод 341 изображен как операционная система 344 хранения, прикладные программы 345, другие программные модули 346 и данные 347 программы. Обратите внимание, что эти компоненты могут быть такими же как или отличаться от операционной системы 334, прикладных программ 335, других программных модулей 336 и данных 337 программ. Операционной системе 344, прикладным программам 345, другим программным модулям 346 и данным 347 программы здесь даны различные номера, чтобы показать, что как минимум они являются различными копиями. Пользователь может вводить команды и информацию в компьютер 310 через устройства ввода, такие как клавиатура 362 и указательное устройство 361, которое обычно называют мышью, шаровой указатель или сенсорная панель. Другие устройства ввода (не показаны) могут включать микрофон, координатную ручку, игровую панель, спутниковую антенну, сканер или т.п. Эти и другие устройства ввода часто соединены с процессором 320 через пользовательский интерфейс 360 ввода, который связан с системной шиной, но может быть соединен другими структурами интерфейса и шины, такими как параллельный порт, игровой порт или универсальная последовательная шина (USB). Монитор 391 или другие виды устройства дисплея также соединены с системной шиной 321 через интерфейс, такой как видеоинтерфейс 390. Кроме монитора компьютеры могут также включают другие периферийные устройства вывода, такие как динамики 397 и принтер 396, которые могут быть подключены через периферийный интерфейс 390 вывода.

Компьютер 310 может работать в сетевой среде, используя логические соединения с одним или более удаленными компьютерами, такими как удаленный компьютер 380. Удаленный компьютер 380 может быть персональным компьютером, сервером, маршрутизатором, сетевым персональным компьютером, совокупностью устройств или другим обычным сетевым узлом, и обычно включает многие или все элементы, описанные выше по отношению к компьютеру 310, хотя только устройство 381 памяти показано на Фиг.3. Логические соединения, изображенные на Фиг.3, включают локальную сеть (LAN) 371 и глобальную сеть (WAN) 373, но могут также включать другие сети. Такие сетевые среды обычно размещаются в офисах, компьютерных сетях масштаба предприятия, интрасетях и Интернете.

При использовании в сетевой среде LAN компьютер 310 соединяется с LAN 371 через сетевой интерфейс или адаптер 370. При использовании в сетевой среде WAN компьютер 310 обычно включает модем 372 или другие средства для установления связи через сеть WAN 373, такую как Интернет. Модем 372, который может быть внутренний или внешний, может быть соединен с системной шиной 321 через пользовательский интерфейс 360 ввода, или другой соответствующий агент. В сетевой среде программные модули, изображенные по отношению к компьютеру 310, или их части могут храниться в удаленных устройствах памяти. К примеру и без ограничения, Фиг.3 иллюстрирует удаленные прикладные программы 385 как постоянно хранящиеся в устройстве 381 памяти. Следует учитывать, что изображенные сетевые соединения являются иллюстративными, и другие средства установления линии связи между компьютерами могут использоваться.

Фиг.4A - пример отношений пользователей в различных сетевых службах. Фиг.4A иллюстрирует три сетевых отношения. Первое отношение в рамках первичной сетевой службы - между первым пользователем и вторым пользователем. Линия между первым пользователем и вторым пользователем указывает, что первый пользователь может отметить второго пользователя как "друг", таким образом имея доверительное отношение со вторым пользователем, в рамках учетной записи первого пользователя в рамках первичной сетевой службы 190. Второе отношение - для вторичной сетевой службы A, в котором второй пользователь имеет доверительное отношение с третьим пользователем. В третьей сетевой службе, вторичной сетевой службе B, первый пользователь и третий пользователь оба имеют профили в упомянутой службе, но не имеют доверительное отношение друг с другом в упомянутой службе, что представлено отсутствием линии, соединяющей пользователей на Фиг.4A.

Фиг.4B - пример отношения между пользователями через несколько сетей. В частности, показано, что первый пользователь и второй пользователь имеют доверительное отношение через первичную сетевую службу, и второй пользователь и третий пользователь имеют доверительное отношение через вторичную сетевую службу A. Таким образом, видно, что первый пользователь и третий пользователь имеют непрямое отношение с двумя степенями разделения через второго пользователя. Первый пользователь и третий пользователь не связаны напрямую через какую-либо сетевую службу, но это соединение между двумя пользователями может быть рассмотрено как вторая степень отношения через две различные сетевые службы. Настоящая технология может распознать вторую степень отношения и позволить пользователю обход и запрос в отношении второй степени отношения. Это рассматривается более подробно ниже.

Фиг.5 - схема варианта осуществления способа для доступа и хранения данных пользовательского профиля. Сначала пользовательский интерфейс предоставляется первичной сетевой службой для разрешения пользователю вводить данные профиля вторичной сетевой службы на этапе 510. Принятые данные профиля могут относиться к синдицированным, заранее определенным и неопределенным сетевым службам. Пример пользовательского интерфейса, используемого для приема данных вторичной сетевой службы, изображен и рассмотрен ниже по отношению к Фиг.7.

Ввод данных вторичной сетевой службы принимается от пользователя через пользовательский интерфейс на этапе 520. Пользователь может вводить данные, связанные с вторичными сетевыми службами, пользовательскими идентификаторами в упомянутых службах и другую информацию. Принятые данные используются для получения доступа к данным профиля в рамках каждой из вторичных сетевых служб, например, для генерации URL или других данных, из которых могут быть извлечены данные профиля. По отношению к Фиг.7, данные для синдицированной сетевой службы A могут быть приняты как выбор кнопки <testlink>, заранее определенные сетевые службы C через F могут потребовать пользовательский идентификатор, и неопределенная сетевая служба 750 может потребовать пользовательский идентификатор, профиль URL и другие данные, если требуется.

Профиль информации доступа строится из принятых пользовательских данных на этапе 530. Этот профиль информации доступа может быть построен из пользовательского идентификатора, предыдущей информации, хранимой в конфигурационном файле 148, и других данных. Создание профиля информации доступа рассматривается более подробно ниже по отношению к Фиг.6.

Далее, данные пользовательского профиля и данные отношений извлекаются из вторичной сетевой службы для выбранного пользователя поисковым агентом 150 сетевой службы на этапе 540. Данные профиля и данные отношений могут быть извлечены из профиля информации доступа URL, созданного на этапе 530 поисковым агентом 150. В некоторых вариантах осуществления упомянутый профиль и данные отношений могут быть извлечены с использованием информации доступа другого профиля, сгенерированной на этапе 530. Как только местоположение данных известно или создано, данные могут извлекаться путем вырезки из экрана, вызова службы API, чтобы перетянуть данные, вызова службы API, чтобы перетолкнуть данные на поисковый агент 150, через канал RSS или некоторым другим образом.

Извлеченные данные профиля затем сохраняются поисковым агентом 150 в таблице 144 данных пользовательского профиля хранилища 140 данных на этапе 550. В некоторых вариантах осуществления извлеченные данные профиля могут быть агрегированы или объединены с существующими данными профиля для первичной сетевой службы при хранении. В некоторых вариантах осуществления извлеченные данные профиля могут быть агрегированы или объединены с данными профиля первичной сетевой службы, когда упомянутые данные запрошены, или по запросу пользователя, ассоциированного с учетной записью первичной сетевой службы. Хранение извлеченных данных профиля рассматривается более подробно ниже по отношению к Фиг.8.

Пользовательские данные отношений сохраняются поисковым агентом 150 сетевой службы в таблицу 146 отношений пользователей на этапе 560. Хранящиеся данные отношений могут включать идентификатор для пользователя, для которого данные профиля были извлечены, контакт пользователя, как определено профилем вторичной сетевой службы, и идентификацию сетевой службы. Если контакт имеет профиль с первичной сетевой службой, то пользовательский идентификатор контакта упомянутой первичной сетевой службы сохраняется на этапе 560. Если упомянутый контакт не имеет профиль первичной сетевой службы, то во вторичном сетевом контакте используется пользовательский идентификатор. В некоторых вариантах осуществления, после сохранения отношений пользовательских данных, пользовательские данные сохраняются в кэш-памяти в сервере 130 приложений на этапе 570. Этот этап необязательный и может обеспечить более быстрый доступ к определенному профилю запросом сервером 120 сети сервера 130 приложений.

Один или более профилей затем предоставляется со связанными данными профиля запрашивающему субъекту на этапе 580. Связанные данные могут включать данные профиля для двух или более профилей и/или служб, которые сочетаются каким-либо образом, таким как через агрегирование или объединение данных. Запрос от упомянутого запрашивающего объекта может определять один или более параметров и запрашивать один или более профилей или путей между двумя или более профилями. Упомянутые параметры могут включать параметр критериев и параметр разделения отношений. Параметр критериев определяет требование, что должен встретиться профиль, соответствующий запросу, такой как пользовательский профиль, ассоциированный с определенным родом или городом проживания. Параметр разделения отношений может определять степени разделения между пользователями, такие как две степени разделения, показанные на Фиг.4A-4B между первым пользователем и третьим пользователем. Обеспечение одного или более связанных профилей рассматривается более подробно по отношению к Фиг.9.

Фиг.6 - схема варианта осуществления способа для создания профиля информации доступа. В некоторых вариантах осуществления способ Фиг.6 предоставляет больше подробностей для этапа 530 в способе Фиг.5. Ввод данных вторичной сетевой службы принимается от пользователя через пользовательский интерфейс на этапе 520. Этот этап обеспечивается для ссылочных целей и идентичен этапу 520 способа Фиг.5. Определение затем производится, предназначены ли принятые входные данные для синдицированной службы на этапе 605. Если так, то затем способ Фиг.6 продолжает этап 610. Если нет, то определение производится на этапе 607, предназначены ли принятые входные данные для заранее определенной службы. Если упомянутые входные данные предназначены для заранее определенной службы, то способ Фиг.6 продолжает этап 630. Если нет, то упомянутые входные данные предназначены для неопределенной службы и способ Фиг.6 продолжает этап 660.

Подтверждение учетной записи принимается от пользователя на этапе 610. Подтверждение учетной записи может быть принято как выбор кнопки "<test link>" для синдицированной сетевой службы в пользовательском интерфейсе Фиг.7. В других вариантах осуществления выбор подтверждения учетной записи может быть принят как выбор некоторой другой кнопки или элемента пользовательского интерфейса. После приема подтверждения учетной записи данные синдицированной сетевой службы сохраняются в кэш-памяти на этапе 620 и способ Фиг.6 завершается.

Если принятые входные данные вторичной сетевой службы предназначены для заранее определенной сетевой службы на этапе 607, то упомянутые входные данные принимаются как пользовательский идентификатор для заранее определенной службы на этапе 630. По отношению к Фиг.7 пользовательский идентификатор принимается для сетевой службы C и сетевой службы E в рамках части 740 пользовательского интерфейса Фиг.7. После приема пользовательского идентификатора URL пользовательского профиля создается из принятого пользовательского идентификатора и данных заранее определенной службы, содержащихся в конфигурационном файле 148 хранилища 140 данных. URL пользовательского профиля для вторичной сетевой службы затем сохраняется в кэш-памяти на этапе 650 и способ Фиг.6 завершается.

Если принятые входные данные вторичной сетевой службы определяются как предназначенные для неопределенной сетевой службы на этапе 607, то принятые данные включают имя вторичной сетевой службы, пользовательский идентификатор и URL профиля службы от пользователя, относящегося к неопределенной службе на этапе 660. По отношению к пользовательскому интерфейсу Фиг.7, данные неопределенной сетевой службы включают имя службы "BlogTime," пользовательский идентификатор "pmbloggr" и URL профиля www.blogtime.com/pmbloggr . В некоторых вариантах осуществления дополнительная информация может также приниматься для неопределенной сетевой службы, такая как канал URL.

Далее принимается решение о том, соответствуют ли принятые пользовательские данные заранее определенной сетевой службе на этапе 670. Если принятые пользовательские данные соответствуют заранее определенной сетевой службе, то способ Фиг.6 продолжает этап 640. Если пользовательские данные не соответствуют заранее определенной службе, то принятый URL профиля сохраняется в кэш-памяти на этапе 680. Чтобы определить, соответствуют ли пользовательские данные заранее определенной службе, принятый базовый URL и пользовательский идентификатор можно сравнить с этими элементами в конфигурационном файле 148 и таблице 144 пользовательских профилей.

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

Фиг.7 - пример пользовательского интерфейса для ввода данных вторичной сетевой службы. Пользовательский интерфейс Фиг.7 обеспечивается пользователю первичным сетевым приложением 190 во время способа Фиг.6. Фиг.7 включают меню 710 сетевой службы, кнопки 720 действия профиля, окно 760 меню профиля и окно 770 данных профиля. Меню 710 сетевой службы включает заголовки меню: запуск (start), почта (mail), профили (profiles), каналы (feeds), управление (manage) и другую информацию. Кнопки 720 профиля включают кнопки: дом (home), ваш профиль (your profile), события (events), группы (groups), фотографии (photos), блоги (blogs), списки (lists) и функции профиля (profile).

Окно 760 меню профиля включает выбираемые кнопки: вид (appearance), веб-профили (web profiles), контактная информация (contact info) и социальная (social). В настоящее время окно выбора веб-профилей (web profiles) выбрано в рамках окна 760 меню профиля. Окно 770 данных профиля включает информацию, перечисленную для нескольких вторичных сетевых служб. Упомянутые службы включают синдицированную службу A в части 730, заранее определенные службы C, D, E и F в части 740 и одну неопределенную службу в части 750. Синдицированная служба A включает тег службы "Pat Smith". Эта информация синдицированной службы может быть предварительно заполнена пользовательским идентификатором, ассоциированным с пользователем первичной сетевой службы.

Заранее определенные вторичные сетевые службы C-F включают прямоугольники, в которые пользователь может вводить пользовательский идентификатор для каждой службы. Как показано, пользователь ввел пользовательский идентификатор "psmith778" для заранее определенной службы C и пользовательский идентификатор "PattySmith" для заранее определенной службы E. Заранее определенные службы D и F имеют прямоугольники, в которых пользовательские идентификаторы не заполнены.

Часть 750 в рамках окна 770 данных профиля для неопределенной службы включает прямоугольники для имени службы (service name), пользовательского идентификатора (user identifier) и URL профиля (profile URL). Как показано, прямоугольник имени службы заполнен именем "Blog Time", прямоугольник пользовательского идентификатора заполнен идентификатором "pmbloggr" и прямоугольник URL профиля заполнен указателем http://www.blogtime.com/pmbloggr.

Фиг.8 - схема и вариант осуществления способа для хранения данных профиля для вторичной сетевой службы. В некоторых вариантах осуществления схема Фиг.8 предоставляет более подробную информацию для этапа 550 способа Фиг.5. Сначала поисковый агент 150 сетевой службы отправляет извлеченные данные профиля в хранилище данных на этапе 810. Упомянутые данные извлекаются из вторичной сетевой службы. Далее осуществляется доступ к существующим данным для пользователя в пользовательской таблице 142 на этапе 820. Извлеченные данные затем агрегируются с существующими пользовательскими данными в пользовательской таблице 142 на этапе 830. Агрегирование упомянутых данных может включать добавление извлеченных данных из вторичной сетевой службы к пользовательским данным, ассоциированным с пользовательским профилем в рамках первичной сетевой службы 190. Например, пользовательские пиктограммы фотографий как в пользовательском профиле первичной сетевой службы, так и в профиле вторичной сетевой службы могут храниться в рамках первичной сетевой службы. Другие данные, такие как номера телефонов, адреса электронной почты, адреса и другая информация для пользовательского профиля первичной сетевой службы и профиля вторичной сетевой службы, могут быть агрегированы вместе в упомянутой пользовательской таблице данных.

Альтернативно, извлеченные данные могут быть объединены с пользовательскими данными и пользовательской таблицей 142 на этапе 840. Объединение данных вместо агрегирования данных может вызывать выбор одной пользовательской кнопки, одного пользовательского адреса, одного предпочитаемого фильма, и иначе объединяя различные версии данных в один пользовательский профиль. Например, если пользовательский профиль первичной сетевой службы и профиль вторичной сетевой службы имеют тот же резидентный адрес для пользователя, то упомянутый резидентный адрес может сохраняться только один раз в пользовательской таблице данных. Когда пользовательские данные между различными профилями не соответствуют, упомянутые данные могут быть объединены в соответствии с созданными пользователями правилами, датой создания (причем последние созданные данные превосходят ранее созданные данные), или пользователю может быть предложено выбрать, какие данные включать в объединенный профиль.

Далее, данные профиля вторичной сетевой службы сохраняются как новая запись в таблице 144 пользовательских профилей хранилища 140 данных на этапе 850. Хранение данных профиля вторичной сетевой службы как новой записи включает хранение пользовательского идентификатора, сетевой службы, ассоциированной с извлеченным профилем, и данных профиля, извлеченных из вторичной сетевой службы. Дополнительные данные для хранения могут включать полномочия аутентификации и/или URL, ассоциированный с вторичной службой. Упомянутый способ Фиг.8 затем завершается на этапе 860.

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

Фиг.9 - схема варианта осуществления способа для предоставления данных профиля в ответ на запрос. Сначала, запрос принимается сервером 120 сети от клиента 110 для данных пользовательского профиля, с какими-либо параметрами на этапе 910. Упомянутый запрос может включать параметры на основе того, какой тип данных запрашивается. Упомянутые параметры могут включать параметр критериев и параметр разделения отношений. Как рассмотрено выше, параметр критериев определяет критерий профиля для включения в каждый профиль, который соответствует запросу, и параметр разделения отношений определяет степень разделения над пользовательскими отношениями. Например, запрос типа "список" ("list") может включать параметры начального пользователя S, диапазон переходов или степени разделения отношений, пользователей N и критерия F для соответствия. Запрос типа списка может быть выражен как "показать всех друзей друзей, которые живут в Сиэтле " ("show me all friends of friends that live в Seattle"). В этом случае количество N переходов будет два, упомянутый фильтр будет пользователем, имеющим резиденцию в Сиэтле, и S будет собственным пользовательским профилем.

Другим типом запроса может быть запрос "путь" ("path"). Запрос пути может иметь параметры: начальный пользователь, конечный пользователь, количество N переходов и критерий F. Например, запрос пути может быть сформулирован как "показать взаимное соответствие между Дэйвом и Майком, которые работают на Acme" ("show me the mutual matches between Dave and Mike that work at Acme"). В этом случае начальным пользователем может быть Дэйв, конечным пользователем может быть Майк, количество переходов может быть открытым и критерий может иметь рабочий адрес компании под названием "Acme".

Данные профиля, ассоциированные с принятым запросом, извлекаются сервером 120 сети из хранилища 140 данных на этапе 920. Данные могут извлекаться через сервер 130 приложений сервером 120 сети. Это рассматривается более подробно ниже по отношению к способу Фиг.10. После извлечения данных профиля, ассоциированных с упомянутым запросом, извлеченные данные профиля, содержащие один или более профилей, предоставляются клиенту 110 сервером 120 сети в ответ на принятый запрос. В одном варианте осуществления дублированные отношения между пользователями не отображаются. Таким образом, если первый пользователь и второй пользователь имеют доверительные отношения в сетевой службе A и сетевой службе B, то только одно соединение изображается между упомянутыми двумя пользователями. В некоторых вариантах осуществления сети, в которых пользователь и контакт имеют доверительные отношения, указываются в пользовательском интерфейсе. Пример страницы контента профиля, который иллюстрирует данные отношений над несколькими сетями, предоставляется на Фиг.11.

Фиг.10 - схема варианта осуществления способа для извлечения данных профиля. В одном варианте осуществления способ Фиг.10 предоставляет больше подробностей для этапа 920 способа Фиг.9. Сначала принимается решение о том, ассоциирован ли принятый запрос с запросом списка профиля, пути или индивидуальным запросом данных на этапе 1010. Если принятый запрос ассоциирован с запросом списка профиля или запросом пути, то сетевой сервер 110 передает запрос параметров на сервер 130 приложений на этапе 1015. Сервер 130 приложений принимает упомянутый запрос параметров от сервера 120 сети и передает упомянутые параметры в хранилище 140 данных на этапе 1020. Хранилище 140 данных принимает упомянутые параметры от сервера 130 приложений и запрашивает пользовательскую таблицу 142 и таблицу 146 отношений пользователей, чтобы определить соответствие упомянутого профиля и/или пути профиля на этапе 1025. Как рассмотрено выше, хранилище 140 данных может быть осуществлено как один или более SQL серверов. Как таковые упомянутые серверы могут иметь бизнес-логику, которая может быть запрошена для конкретного отношения и/или запрошенных данных профиля.

Хранилище 140 данных определяет результаты запроса, упаковывает соответствующие профили в ответ и передает упомянутый ответ на сервер 130 приложений на этапе 1030. Далее сервер 130 приложений принимает упомянутый ответ и передает упомянутый ответ на сервер 120 сети на этапе 1035. Сервер 120 сети принимает упомянутый ответ от сервера 130 приложений на этапе 1040. Упомянутый способ Фиг.10 затем завершается по отношению к запросам списка профиля и пути на этапе 1040.

Если принятый запрос ассоциируется с индивидуальной датой запроса профиля на этапе 1010, то сервер 120 сети передает запрос с I.D. профиля на сервер 130 приложений на этапе 1045. Сервер 130 приложений принимает упомянутый запрос от сервера 120 сети и передает упомянутый запрос в хранилище 140 данных на этапе 1050. Хранилище 140 данных принимает упомянутый запрос и запрашивает пользовательскую таблицу 142 и таблицу 144 пользовательских профилей для получения доступа к данным профиля, ассоциированных с запрошенным пользовательским идентификатором на этапе 1055. Хранилище 140 данных затем упаковывает данные профиля, соответствующие результатам упомянутого запроса, в ответ и передает упомянутый ответ на сервер 130 приложений на этапе 1060. Сервер 130 приложений принимает упомянутый ответ от хранилища 140 данных и передает упомянутый ответ на сервер 120 сети на этапе 1065. Сервер 120 сети принимает упомянутый ответ от сервера 130 приложений на этапе 1070.

Фиг.11 - пример страницы контента, предоставляющей профилю данные отношений для нескольких сетей. В одном варианте осуществления профиль страницы 1110 контента Фиг.11 включает данные для профиля первичной сетевой службы и данные, извлеченные из одного или более профилей вторичной сетевой службы. Как показано в верхней части страницы контента, профили ассоциированы с пользователем, называемым "Pat Smith". Страница 1110 контента включает данные профиля 1120, блог 1130, список 1150 сетевых служб и список 1140 контактов. Данные профиля 1120 включают базовую информацию профиля, такую как интересы, хобби, индивидуальные особенности и контактную информацию для электронной почты и службы мгновенного обмена сообщениями. Блог 1130 включает текущее входное сообщение блога и одно или более предыдущих входных сообщений блога для пользователя, ассоциированного с упомянутой страницей контента.

Список 1150 сетевых служб включает список вторичных сетевых служб, с которыми ассоциируется пользователь. Упомянутый список служб включает службу A, службу C, службу E и "BlogTime." Эти службы соответствуют вторичным сетевым службам, в которых пользователю предоставляется информация в пользовательском интерфейсе Фиг.7. Список 1140 контактов страницы 1110 контента включает восемь контактов. Индикация ассоциируется с каждым контактом, что касается контекста, в котором каждый контакт имеет отношение с пользователем профиля в дополнение к первичной сетевой службе, которая предоставляет упомянутые страницы контента. Например, данный пользователь данного профиля имеет отношение с контактом 2 через сетевую службу A в дополнение к первичной сетевой службе. Данный пользователь имеет отношение с контактом 4 через сетевую службу A и сетевую службу E, как указывается непосредственно под кнопкой для контакта 4. Владелец профиля только имеет соединение с контактом 1 через первичную сетевую службу, как указывается путем отсутствия перечисления дополнительных сетевых служб непосредственно под кнопкой для контакта 1. Пользователь данного профиля имеет отношение с контактом 5 через неопределенную службу "BlogTime", как указывается путем перечисления сетевой службы "BlogTime" непосредственно под контактом 5. Следует понимать, что перечисление контактов, отношений контактов и списков вторичных сетевых служб может быть осуществлено несколькими путями. Пример, изображенный на Фиг.11, и другие примеры, рассмотренные здесь, предназначены только как примеры и не предназначены для ограничения области действия отображения этой информации.

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

Класс G06F17/40 сбор данных и их регистрация

устройство обработки информации, система обработки информации, способ обработки информации и носитель информации -  патент 2525746 (20.08.2014)
устройство ввода-вывода -  патент 2524852 (10.08.2014)
унифицированная система управления информационными потоками предприятия -  патент 2522030 (10.07.2014)
система мониторинга времени отстаивания нефтепродукта по участкам резервуара хранения с учетом формы частиц загрязнения и распределения температуры нефтепродукта по высоте резервуара -  патент 2520323 (20.06.2014)
система для слежения за свойствами установки -  патент 2516209 (20.05.2014)
устройство и способ предоставления информации, терминальное устройство и способ обработки информации, и программа -  патент 2515717 (20.05.2014)
способ организации и ведения медицинского мониторинга -  патент 2515587 (10.05.2014)
связь на месте в реальном времени через интернет с диспетчером скважины для постоянной оптимизации скважины -  патент 2510971 (10.04.2014)
способы и устройство обеспечения системы прогнозирования групповой торговли -  патент 2510891 (10.04.2014)
система оптимизации времени отстаивания нефтепродуктов в резервуарах хранения в зависимости от распределения температуры нефтепродукта по высоте резервуара и формы частиц загрязнения -  патент 2509354 (10.03.2014)
Наверх