Доступ к различным типам электронных сообщений через общий интерфейс обмена сообщениями

Иллюстрации

Показать все

Изобретение относится к способам, системам и компьютерным программным продуктам для представления различных типов электронных сообщений в общем интерфейсе. Изобретение повышает удобство пользования электронными сообщениями различного типа и, в частности, увеличивает скорость поиска в электронных сообщениях. Элементы электронных сообщений хранятся в базе данных элементов вместе с другими типами элементов, такими как контакты, элементы папок, элементы документов и т.д. Элементы электронных сообщений имеют некоторые поля данных с общим определением и, возможно, другие поля данных с различным определением, которые представляют характерные для конкретного протокола и (или) предложения свойства. Компьютерные системы могут запрашивать базу данных элементов в отношении относящихся к сообщению данных (например, из полей с общим определением) и отображать ссылки на относящиеся к сообщению данные в общем интерфейсе обмена сообщениями. Ссылки на различные типы электронных сообщений (представленные характерными для конкретного протокола и (или) сообщения свойствами) могут отображаться в общем интерфейсе обмена сообщениями. 4 н. и 28 з.п. ф-лы, 6 ил., 10 табл.

Реферат

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

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

Предшествующий уровень техники

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

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

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

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

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

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

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

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

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

Краткое изложение сущности изобретения

Вышеописанные проблемы предшествующего уровня техники преодолеваются принципами настоящего изобретения, которые относятся к способам, системам, компьютерным программным продуктам и структурам данных для доступа к различным типам электронных сообщений через общий интерфейс обмена сообщениями. В общих чертах, электронные сообщения создаются в соответствии с иерархией схем электронных сообщений. Электронные сообщения могут создаваться так, что некоторые поля данных определяются общими (например, поле темы, поле участников, поле важности и т.д.) даже в различных типах электронных сообщений (например, в сообщениях электронной почты и мгновенных сообщениях). Электронные сообщения также могут создаваться так, что некоторые поля данных, например, поля данных, характерные для конкретных протоколов сообщений и/или конкретных приложений сообщений, определяются отдельно (например, PosterID для сообщений группы новостей и удаленное поле для сообщения электронной почты) и, таким образом, могут различаться в различных типах сообщений. Следовательно, электронное сообщение может иметь некоторые поля, общие с другими электронными сообщениями, и некоторые поля, которые отличаются от других электронных сообщений. Некоторые поля с общим определением и другие поля с различным определением дают возможность электронным сообщениям отображаться в общем интерфейсе обмена сообщениями и также иметь свойства, характерные для конкретного протокола и/или приложения.

Элементы электронных сообщений (имеющие некоторые поля данных с общим определением и, возможно, другие поля данных с различным определением) хранятся в базе данных элементов вместе с другими типами элементов, таких как, например, элементы контактов, элементы папок, элементы документов и т.д. Компьютерные системы могут запрашивать относящиеся к сообщениям данные в базе данных элементов и отображать результаты запроса в общем интерфейсе обмена сообщениями. Запрашивающая компьютерная система принимает критерии запроса (например, запрос всех электронных сообщений от «Пользователя А», запрос всех электронных сообщений, принятых до 27 апреля 2003 г., и т.д.) для относящегося к сообщению запроса. Критерии запроса могут приниматься в общем интерфейсе обмена сообщениями, например, в результате ввода пользователя. Запрашивающая компьютерная система представляет относящийся к сообщению запрос базе данных элементов в соответствии с критериями запроса.

Возвращающая компьютерная система принимает относящийся к сообщению запрос от запрашивающей компьютерной системы. Возвращающая компьютерная система осуществляет доступ к базе данных элементов и идентифицирует одну или несколько частей относящихся к сообщению данных, которые удовлетворяют критериям запроса. Идентификация относящихся к сообщению данных может включать в себя поиск значений полей данных с общим определением. Может производиться поиск в полях данных с общим определением даже элементов сообщений, которые также имеют ряд полей данных, характерных для других протоколов и/или приложений. Следовательно, может быть, что идентифицируется несколько различных типов электронных сообщений (представленных полями данных, характерных для конкретного протокола и/или приложения). Например, все сообщения, принятые до 21 марта 2002 г., могут включать в себя сообщения электронной почты, мгновенные сообщения, факсимильные сообщения, речевые сообщения и т.д.

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

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

Перечень фигур чертежей

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

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

фиг.2А - часть примера более подробной иерархии схем согласно принципам настоящего изобретения;

фиг.2В - часть расширения сообщений примера более подробной иерархии схем согласно принципам настоящего изобретения;

фиг.3 - первое примерное отображение на экране дисплея, генерируемое общим интерфейсом обмена сообщениями, согласно принципам настоящего изобретения;

фиг.4 - второе примерное отображение на экране дисплея, генерируемое общим интерфейсом обмена сообщениями, согласно принципам настоящего изобретения;

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

фиг.6 - подходящая операционная среда для принципов настоящего изобретения.

Подробное описание предпочтительных вариантов выполнения

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

Варианты выполнения в пределах объема настоящего изобретения включают в себя машиночитаемые носители для переноса или хранения на них машиноисполняемых инструкций или структур данных. Такие машиночитаемые носители могут быть любыми доступными носителями, к которым компьютерная система общего назначения или специального назначения может осуществлять доступ. В качестве примера и неограничения такие машиночитаемые носители могут содержать физические носители данных, такие как оперативное запоминающее устройство (ОЗУ, RAM), постоянное запоминающее устройство (ПЗУ, ROM), стираемое программируемое ПЗУ (СППЗУ, EPROM), компакт-диск (CD-ROM) или другое запоминающее устройство на оптических дисках, запоминающее устройство на магнитных дисках или другие магнитные запоминающие устройства, или любые другие носители, которые могут использоваться для переноса или хранения требуемого средства программного кода в виде машиноисполняемых инструкций, машиночитаемых инструкций или структур данных, и к которым компьютерная система общего назначения или специального назначения может осуществлять доступ.

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

В данном описании и в последующей формуле изобретения «компьютерная система» определяется как один или несколько программных модулей, один или несколько аппаратных модулей или их комбинация, которые работают совместно для выполнения операций над электронными данными. Например, определение компьютерной системы включает в себя аппаратные компоненты персонального компьютера, а также программные модули, такие как операционная система персонального компьютера. Физическое размещение модулей не является важным. Компьютерная система может включать в себя один или несколько компьютеров, соединенных через сеть. Аналогично, компьютерная система может включать в себя отдельное физическое устройство (такое как мобильный телефон или персональное цифровое информационное устройство (PDA)), где внутренние модули (такие как память и процессор) работают совместно для выполнения операций над электронными данными.

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

Схема определяется так, что она включает в себя определения типа документа (ОТД, DTD), такие как, например, файлы ОТД, заканчивающиеся расширением «.dtd». Схема также определяется так, что включает в себя XML-схемы консорциума «Всемирной паутины» (W3C), такие как, например, файлы XML-схемы, оканчивающиеся расширением «.xsd». Однако фактическое расширение файла для конкретной схемы ОТД или XML не является важным. Схема может использоваться для виртуального определения любого типа данных, включая логический, двоичный, восьмеричный, десятичный, шестнадцатеричный, целочисленный, с плавающей точкой, символьный, тип строки символов, определенные пользователем типы данных и комбинации этих типов данных, используемые для определенных структур данных. Некоторыми примерами определенных пользователем типов данных являются типы данных DateTime, представляющие данные о дате и времени, и типы данных EAddress, представляющие данные электронных адресов, такие как, например, телефонные номера, адреса электронной почты, адреса мгновенных сообщений и т.д. Схема также может быть определена для обращения или ссылки на другие схемы в иерархии схем.

Для специалиста в данной области техники понятно, что изобретение может быть применено на практике в сетевых вычислительных средах со многими типами конфигураций компьютерных систем, включая персональные компьютеры, портативные компьютеры, карманные устройства, мультипроцессорные системы, микропроцессорную или программируемую бытовую электронику, сетевые персональные компьютеры (ПК, РС), миникомпьютеры, мейнфреймы, мобильные телефоны, PDA, пейджеры и т.п. Изобретение также может быть применено на практике в средах распределенных систем, где локальные и удаленные компьютерные системы, которые соединены (или проводными линиями передачи данных, или беспроводными линиями передачи данных, или комбинацией проводных и беспроводных линий передачи данных) по сети, обе выполняют задачи. В среде распределенной системы программные модули могут располагаться как на локальных, так и на удаленных запоминающих устройствах.

На фиг.1 изображен пример сетевой архитектуры 100 и общей иерархии 150 схем, которые обеспечивают осуществление эффективного хранения и доступа к относящимся к электронному сообщению данным согласно принципам настоящего изобретения. Сетевая архитектура 100 включает в себя компьютерную систему 102, компьютерную систему 109, базу 114 данных и сеть 121. Компьютерная система 102 и компьютерная система 109 соединены соответствующим каналом 106 передачи. Компьютерная система 102 и компьютерная система 109 могут обмениваться относящимися к сообщению данными (например, сообщениями электронной почты, мгновенными сообщениями, факсимильными сообщениями, сообщениями группы новостей, речевыми сообщениями, вложениями в сообщение и т.д.) по линии 106 связи. Например, может быть, что компьютерная система 109 представляет собой сервер обмена сообщениями, который хранит электронные сообщения. Время от времени компьютерная система 102 может подключаться к компьютерной системе 109 для загрузки электронных сообщений.

Компьютерная система 109 соединена с базой 114 данных при помощи линии 123 связи. Базой 114 данных может быть база данных, которая хранит множество различных типов элементов базы данных. Например, хранилище 183 контактов может хранить элементы контактов, представляющие контакты (например, физические лица, организации, корпорации и т.д.), хранилище 183 папок может хранить элементы папок, представляющие папки, которые хранят другие типы элементов (например, которые хранят элементы сообщений), хранилище 184 сообщений может хранить элементы сообщений, представляющие электронные сообщения, хранилище 186 документов может хранить элементы документов, представляющие различные типы документов, и т.д. Элементы базы данных, хранимые в базе 114 данных, могут включать в себя поля данных, определенные в соответствии со схемами иерархии 150 схем. Группа из трех точек (троеточие) перед хранилищем 182 контактов и после хранилища 186 документов указывает, что другие хранилища (потенциально хранящие элементы базы данных других разных типов) могут быть включены в базу 114 данных.

Компьютерная система 109 соединена с сетью 121 при помощи линии 118 связи. Сетью 121 может быть локальная сеть (ЛС, LAN), глобальная сеть (ГС, WAN) или даже Интернет. Компьютерная система 109 может принимать данные и посылать данные на другие компьютерные системы, подключенные к сети 121, по линии 118 связи. Компьютерная система 102, компьютерная система 109 и, возможно, другие компьютерные системы, подключенные к сети 121, могут иметь доступ к схемам, включенным в иерархию 150 схем.

Иерархия 150 схем, в основном, представляет форматы данных для определения электронных сообщений. Элементы сообщений, представляющие электронные сообщения (а также другие типы элементов в базе 114 данных), могут быть определены в соответствии со схемой 151 базового элемента. В основном, схема базового элемента может определять форматы данных для полей данных (например, глобальный уникальный идентификатор и отображаемое имя), используемых для отличия одного элемента базы данных от другого элемента базы данных. Следовательно, элементы сообщений, хранимые в хранилище 184 сообщений (а также элементы, хранимые в хранилище 182 контактов, хранилище 183 папок и хранилище 186 документов), могут включать в себя одно или несколько полей данных, определенных в соответствии со схемой 151 базового элемента.

Схема 152 сообщения определяет форматы данных для одного или нескольких полей данных (например, тема сообщения, размер сообщения и т.д.), которые являются общими для множества различных типов электронных сообщений (например, сообщений электронной почты, мгновенных сообщений, сообщений группы новостей, записей в блоге, факсимильных сообщений, сообщений речевой почты и т.д.). Схема 152 сообщения может определять общий формат, такой как, например, текстовый формат или формат языка разметки гипертекста (HTML). Следовательно, элементы сообщений, хранимые в хранилище 184 сообщений, могут включать в себя одно или несколько полей данных, определенных в соответствии со схемой 152 сообщения. Схема 152 сообщения может определять поля данных, которые ссылаются на поля данных, определенные в соответствии с другими схемами в иерархии 150 схем, или связаны с этими полями.

Например, схема 152 сообщения может определять одно или несколько полей данных, которые ссылаются на относящуюся к контакту информацию (имеющую поля данных, определенные в соответствии со схемой 153 контакта) в хранилище 182 контактов или связаны с этой информацией. Следовательно, элемент сообщения, определенный в соответствии со схемой 152 сообщения, может ссылаться на относящуюся к контакту информацию в хранилище 182 или быть связан с ней. Связь или ссылка на относящуюся к контакту информацию может указывать, что сущность, соответствующая относящейся к контакту информации, ассоциирована с элементом сообщения. Аналогично, схема 152 сообщения может определять одно или несколько полей данных, которые ссылаются на относящуюся к папке информацию (имеющую поля данных, определенные в соответствии со схемой 153 контакта) в хранилище 183 папок или связаны с ней. Следовательно, элемент сообщения, определенный в соответствии со схемой 152 сообщения, также может ссылаться на относящуюся к папке информацию в хранилище 183 папок или быть связан с этой информацией. Связь или ссылка на относящуюся к папке информацию может указывать, что элемент сообщения хранится в папке, соответствующей относящимся к папке данным.

Аналогично, схема 152 сообщения может определять одно или несколько полей данных, которые ссылаются на относящуюся к документу информацию, или связаны с ней. Следовательно, элемент сообщения, определенный в соответствии со схемой 152, может включать в себя одно или несколько вложений (имеющих поля данных, определенные в соответствии со схемой 157 вложения), которые ссылаются на относящиеся к файлу данные в хранилище 186 документов, или связаны с ними. Связь или ссылка на относящиеся к документу данные могут указывать, что документ, соответствующий относящимся к документу данным, представляет собой вложение в элемент сообщения. Далее, элемент сообщения, определенный в соответствии со схемой 152 сообщения, может ссылаться на относящиеся к учетной записи данные, определенные в соответствии со схемой 158 учетной записи, или быть связан с ними. Содержимое элемента сообщения (например, тело сообщения или вложение в сообщение) может включать в себя поля данных, определенные в соответствии со схемой 156 содержимого.

Элемент сообщения, определенный в соответствии со схемой 152, также может включать в себя поля данных, определенные в соответствии с одной или несколькими схемами расширения сообщений. Некоторыми схемами расширения сообщений могут быть расширения протокола, которые могут обеспечивать совместимости с заданными протоколами сообщений. Схемы 161 расширения протокола сообщений могут содержать одну или несколько схем расширения протокола сообщений, определяющих поля данных, которые являются характерными для конкретных протоколов сообщений. Например, схема 162 расширения протокола может определять форматы данных для одного или нескольких полей данных, характерных для первого протокола сообщений (например, протокола передачи новостей по сети (NNTP), и схема 163 расширения протокола может определять форматы данных для одного или нескольких полей данных, характерных для второго протокола сообщений (например, почтового протокола (POP). Схемы расширения протокола могут быть упорядочены иерархически. Например, схема 164 расширения протокола может определять форматы данных для дополнительных полей данных, характерных для конкретной реализации первого протокола сообщений (имеющего поля данных, определенные в соответствии со схемой 162 расширения протокола).

Другими расширениями сообщений могут быть расширения приложения, которые обеспечивают совместимость с заданными приложениями сообщений. Схемы 166 расширения приложения сообщений могут содержать одну или несколько схем расширения приложения сообщений, определяющих поля данных, которые являются характерными для конкретных приложений сообщений. Например, схема 167 расширения приложения может определять форматы данных для одного или нескольких полей данных, характерных для первого приложения сообщений (например, приложения электронной почты), и схема 168 протокола расширения приложения может определять форматы данных для одного или нескольких полей данных, характерных для второго приложения сообщений (например, приложения факсимильной связи). Схемы расширения приложения могут быть упорядочены иерархически. Например, схема 169 расширения приложения может определять форматы данных для дополнительных полей данных, характерных для конкретной версии второго приложения сообщений (имеющего поля данных, определенные в соответствии со схемой 168 расширения приложения).

Таким образом, элемент сообщения, имеющий поля данных, определенные в соответствии со схемой 152 сообщения, также может иметь дополнительные поля данных, определенные в соответствии с любой из схем расширения в схемах 161 расширения протокола сообщений и схемах 166 расширения приложения сообщений. Поля данных, соответствующие расширениям сообщений, могут «охватываться» элементами сообщений и удаляться из них соответствующим образом, чтобы способствовать совместимости с существующими протоколами сообщений и приложениями сообщений. Следовательно, конфигурация полей данных, содержащихся в элементе сообщения, может изменяться во времени.

Приложение, такое как, например, приложение 111 сообщений (интерфейсный модуль базы данных), может запросить, чтобы поля данных схемы расширения конкретного протокола или схемы расширения конкретного приложения были охвачены элементом сообщения или удалены из него перед доступом к элементу сообщения. Таким образом, может быть, что элемент сообщения преобразуется для совместимости с конкретным протоколом сообщений или конкретным приложением сообщений. Например, приложение 111 сообщений может запросить, чтобы поля схемы расширения протокола NNTP были охвачены элементом 116 сообщения. Следовательно, приложение 111 сообщения может извлечь элемент 116 сообщения и преобразовать элемент 116 сообщения так, чтобы он включал в себя поля данных (например, определенные в соответствии со схемой 162 расширения протокола), которые обеспечивают совместимость с протоколом NNTP. Преобразованный элемент 116 сообщения затем может быть передан на компьютерную систему 102 или повторно сохранен в базе 114 данных.

На фиг.2А и 2В изображен пример более подробной иерархии 200 схем согласно принципам настоящего изобретения. Изображенная на фиг.2А иерархия 200 схем включает в себя схему 210 базового элемента. Схема 210 базового элемента включает в себя взаимосвязанные поля 211, которые определяют форматы данных для представления данных базового элемента. Более конкретно, взаимосвязанные поля 211 могут определять форматы данных, как описано в таблице 1.

Таблица 1
Имя поля Тип данных поля Описание поля
ItemID GUID Определяет формат для представления глобального уникального идентификатора для элемента базы данных.
Created DateTime Определяет формат для указания даты и времени, когда был создан элемент базы данных, имеющий глобальный уникальный идентификатор, определенный в соответствии с полем ItemID.
DisplayName String Определяет формат для указания описательного имени для элемента базы данных, имеющего глобальный уникальный идентификатор, определенный в соответствии с ItemID.

Изображенная на фиг.2А иерархия 200 схем включает в себя схему 212 сообщения. Схема 212 сообщения является производной от схемы 210 базового элемента и также включает в себя взаимосвязанные поля 213, которые определяют форматы данных для представления элемента сообщения. Поля схемы 212 сообщения могут применяться к базовому элементу, имеющему глобальный уникальный идентификатор (определенный в схеме 210 базового элемента), чтобы базовый элемент проявлял свойства элемента сообщения. Более конкретно, взаимосвязанные поля 213 могут определять форматы данных, как описано в таблице 2.

Таблица 2
Имя поля Тип данных поля Описание поля
ContentLocation String Определяет формат для представления содержимого, на которое сделана ссылка из заголовка Content-Location сообщения. Это поле может использоваться вместе с базовым Content-Location. Некоторые вложения будут иметь относительные Content-Location для этого Content-Loca