Schema hierarchy for electronic messages
First Claim
1. In a computer system that is network connectable along with one or more other computer systems to a network, a method for creating an electronic message that can be stored and accessed with increased efficiency, the method comprising:
- an act of creating a message item representing the electronic message in accordance with a message schema, the message item having one or more general properties that may be common to a plurality of different types of message protocols and message applications;
an act of assigning a primary type to the created message item, the primary type indicating a primary behavior of one or more content portions linked to the created message item;
an act of assigning one or more protocol extensions to the created message item, each assigned protocol extension adding one or more protocol specific properties to the created message item so as to promote compatibility between the one or more linked content portions and a specified message protocol; and
an act of assigning one or more application extensions to the created message item, each assigned application extension adding one or more application specific properties to the created message item so as to promote compatibility between the one or more linked content portions and a specified message application.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention extends to methods, systems, computer program products, and data structures for efficiently storing and accessing electronic messages. Generally, electronic messages are created and transformed in accordance with an electronic message schema hierarchy. Electronic messages can be created according to a general message schema that defines a format for data fields that are common to all types of electronic messages (e.g. electronic mail, instant message, fax message). Electronic messages can also be extended according to message extension schemas that define formats for adding protocol specific and/or or application specific data fields to an electronic message. Data fields added in accordance with message extension schemas can differ between electronic messages types. Having some commonly defined fields and other differently defined fields promotes efficient storage and access of electronic messages, while also facilitating message compatibility with existing message protocols and message applications.
163 Citations
47 Claims
-
1. In a computer system that is network connectable along with one or more other computer systems to a network, a method for creating an electronic message that can be stored and accessed with increased efficiency, the method comprising:
-
an act of creating a message item representing the electronic message in accordance with a message schema, the message item having one or more general properties that may be common to a plurality of different types of message protocols and message applications;
an act of assigning a primary type to the created message item, the primary type indicating a primary behavior of one or more content portions linked to the created message item;
an act of assigning one or more protocol extensions to the created message item, each assigned protocol extension adding one or more protocol specific properties to the created message item so as to promote compatibility between the one or more linked content portions and a specified message protocol; and
an act of assigning one or more application extensions to the created message item, each assigned application extension adding one or more application specific properties to the created message item so as to promote compatibility between the one or more linked content portions and a specified message application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. In a computer system that is network connectable along with one or more other computer systems to a network, a method for transforming an electronic message, which was created in accordance with a message schema, for compatibility with a message extension, the method comprising:
-
an act of accessing a message item representing the electronic message, the message item having the one or more general properties that may be common to a plurality of different types of message protocols and a plurality of different types of message applications, the message item also having one or more currently assigned specific properties, the currently assigned specific properties being specific to at least one currently assigned message extension;
an act of assigning a new message extension to the message item, the new message extension having one or more new specific properties that are to be associated with the message item;
an act of retrieving at least one value from the one or more currently assigned specific properties; and
an act of assigning the retrieved at least one value to at least one of the new specific properties to promote compatibility with the new message extension. - View Dependent Claims (13, 14, 15, 16)
-
-
17. In a computer system that is network connectable along with one or more other computer systems to a network, a method for transforming an electronic message, which was created in accordance with a message schema, for compatibility with a message extension, the method comprising:
-
an act of accessing a message item representing the electronic message, the message item having the one or more general properties that may be common to a plurality of different types of message protocols and a plurality of different types of message applications, the message item also having one or more currently assigned specific properties, the currently assigned specific properties being specific to at least one currently assigned message extension; and
a step for using values of currently assigned extension specific fields to translate the electronic message for compatibility with a new message extension.
-
-
18. One or more computer-readable media having stored thereon a data structure representing an electronic message, the data structure comprising:
-
a general properties field representing common electronic message properties that are common to a plurality of different types of message protocols and a plurality of different types of message applications; and
at least one protocol specific property field, the at least one protocol specific property field representing one or more protocol specific message properties that correspond to a specific message protocol, the specific message protocol being selecting from among the plurality of different types of message protocols that have the common electronic message properties represented in the general properties field in common. - View Dependent Claims (19, 20)
-
-
21. One or more computer-readable media having stored thereon a data structure representing an electronic message, the data structure comprising:
-
a general properties field representing common electronic message properties that are common to a plurality of different types of message protocols and a plurality of different types of message applications; and
at least one application specific property field, the at least one application specific property field representing one or more application specific electronic message properties that correspond to a specific message application, the specific message application being selecting from among the plurality of different types of message applications that have the common electronic message properties represented in the general properties field in common. - View Dependent Claims (22)
-
-
23. One or more computer-readable media having stored thereon a data structure for representing an electronic message, the data structure comprising:
-
an ID field representing an identifier that identifies the electronic message within an message database;
a primary type field representing a primary message type of the electronic message identified by the identifier represented in the ID field, the primary message type implying a behavior of the electronic message;
at least one MessageParticipant relationship field representing links to one or more message participants associated with the electronic message identified by the identifier represented in the ID field;
at least one MessageContents relationship field representing links to one or more portions of message content corresponding to the electronic message electronic message identified by the identifier represented in the ID field;
at least one sent message folder relationship field representing links to one or more message folders the electronic message identified by the identifier represented in the ID field is to be moved to after being submitted for delivery; and
a download state field representing a download state of the electronic message identified by the identifier represented in the ID field. - View Dependent Claims (24, 25)
-
-
26. One or more computer-readable media having stored thereon a data structure representing a portion of message content, the data structure comprising:
-
an electronic message relationship field representing a link to an electronic message, the link indicating that the portion of message content is associated with an electronic message;
a content type field representing a content type corresponding to the portion of message content;
an order field representing an order value, the order value indicating how the portion of message content is to be ordered with respect to other portions of message content that are also associated with the electronic message; and
a content properties field representing additional properties of the content type represented in the content type field. - View Dependent Claims (27, 28)
-
-
29. One or more computer-readable media having stored thereon a data structure for representing a message attachment, the data structure comprising:
-
an electronic message relationship field representing a link to a message item, the link indicating that the message attachment is associated with the message item;
a type field representing a message type of the electronic message linked to by the link represented in the electronic message link field, the message type implying a behavior of the electronic message;
an IsPinned field representing the deletion status of the message attachment with respect to the electronic message linked to by the link represented in the electronic message link field;
an IsTrusted field representing trust information related to the message attachment; and
an attachment state field representing the type and behavior of the message attachment. - View Dependent Claims (30, 31)
-
-
32. One or more computer-readable media having stored thereon a data structure representing a community news folder, the data structure comprising:
-
a community range field representing a collection of article ID ranges from a news group community that have been synchronized with community header properties;
a communities last refresh field representing the last time the community dynamic properties of the news group community including the collection of synchronized article IDs represented in the community range field was refreshed;
a low article ID field representing a low article ID included the a collection of synchronized article ID ranges represented in the community range field; and
a high article ID field representing a high article ID included the a collection of synchronized article ID ranges represented in the community range field.
-
-
33. One or more computer-readable media having stored thereon a data structure representing a message schema, the data structure comprising:
-
a general properties field defining a format for representing electronic message properties that may be common to a plurality of different types of message protocols and a plurality of different types of message applications;
at least one protocol specific property field, the at least one protocol specific property field defining a format for representing protocol specific electronic message properties that correspond to a specific message protocol from among the different types of message protocols, the message schema including or referring to a protocol extension schema that defines the format for representing at least one protocol specific property field; and
at least one application specific property field, the at least one application specific property field defining a format for representing application specific electronic message properties that correspond to a specific message application from among the different types of message applications, the message schema including or referring to an application extension schema that defines the format for representing at least one application specific property field.
-
-
34. One or more computer-readable media having stored thereon a data structure representing a message schema, the data structure comprising:
-
a primary type field defining a format for representing a primary message type corresponding to an electronic message, the primary message type implying a behavior of the electronic message;
a participants relationship field defining a format for representing links to message participants, the message participants being associated with the electronic message having a primary message type defined in accordance with the primary message type format in the primary type field;
a contents relationship field defining a format for representing links to one or more portions of message content, the one or more portions of content corresponding to the electronic message having a primary message type defined in accordance with the primary message type format in the primary type field;
a sent message folder relationship field defining a format for representing links to one or more message folders that the electronic message, having a primary message type defined in accordance with the primary message type format in the primary type field, should be moved to after being submitted for delivery; and
a download state field defining a format for representing download states corresponding to the electronic message having a primary message type defined in accordance with the primary message type format in the primary type field. - View Dependent Claims (35, 36)
-
-
37. One or more computer-readable media having stored thereon a data structure representing a message content schema, the data structure comprising:
-
a content type field defining a format for representing the content type of a portion of content included in an electronic message;
an order field defining a format for representing the order of the portion of content included in the electronic message having a content type defined in accordance with the content type format in the content type field; and
a content type metadata field representing content metadata corresponding to the portion of content included in the electronic message having a content type defined in accordance with the content type format in the content type field, the message content schema including or referring to a content properties schema that defines the format for representing the content metadata corresponding to the portion of content. - View Dependent Claims (38, 39)
-
-
40. One or more computer-readable media having stored thereon a data structure representing an attachment schema, the data structure comprising:
-
a type field defining a format for representing a message type corresponding to an electronic message, the message type implying a behavior of the electronic message;
an IsPinned field defining a format for representing the deletion status of a corresponding message attachment with respect to the electronic message;
an IsTrusted field defining a format for representing trust information related to the corresponding message attachment; and
an attachment state field defining a format for representing the type and behavior of the corresponding attachment;
- View Dependent Claims (41, 42)
-
-
43. One or more computer-readable media having stored thereon a data structure representing a community news folder schema, the data structure comprising:
-
a community range field defining a format for representing a collection of article ID ranges from a news group community that have been synchronized with community header properties;
a communities last refresh field defining a format for representing the last time the community dynamic properties of the news group community was refreshed;
a low article ID field representing a format for representing a low article ID included the a collection of synchronized article ID ranges defined in accordance with the community range field format in the community range field; and
a high article ID field representing a format for representing a high article ID included the a collection of synchronized article ID ranges defined in accordance with the community range field format in the community range field.
-
-
44. A computer program product for use in a computer system that is network connectable along with one or more other computer systems to a network, the computer program product for implementing a method for creating an electronic message that can be stored and accessed with increased efficiency, the computer program product comprising one or more computer-readable media having stored thereon computer executable instructions that, when executed by a processor, cause the computer system to perform the following:
-
create a message item representing the electronic message in accordance with a message schema, the message item having one or more general properties that are common to a plurality of different types of message protocols and message applications;
assign a primary type to the created message item, the primary type indicating a primary behavior of one or more content portions linked to the created message item;
assign one or more protocol extensions to the created message item, each assigned protocol extension adding one or more protocol specific properties to the created message item so as to promote compatibility between the one or more linked content portions and a specified message protocol; and
assign one or more application extensions to the created message item, each assigned application extension adding one or more application specific properties to the created message item so as to promote compatibility between the one or more linked content portions and a specified message application.
-
-
45. A computer program product for use in a computer system that is network connectable along with one or more other computer systems to a network, the computer program product for implementing a method for transforming an electronic message, which was created in accordance with a message schema, for compatibility with a message extension, the computer program product comprising one or more computer-readable media having stored thereon computer executable instructions that, when executed by a processor, cause the computer system to perform the following:
-
access a message item representing the electronic message, the message item having the one or more general properties that are common to a plurality of different types of message protocols and a plurality of different types of message applications, the message item also having one or more currently assigned specific properties, the currently assigned specific properties being specific to at least one currently assigned message extension;
an act of assigning a new message extension to the message item, the new message extension having one or more new specific properties that are to be associated with the message item;
an act of retrieving at least one value from the one or more currently assigned specific properties; and
an act of assigning the retrieved at least one value to at least one of the new specific properties to promote compatibility with the new message extension.
-
-
46. In a computer system that is network connectable along with one or more other computer systems to a network, a method for processing an electronic message attachment, the method comprising:
-
an act of receiving an electronic message that includes a schematized attachment, one or more fields of the schematized attachment storing values that indicate how the attachment is to be processed;
an act of query at least one field of the schematized attachment to access a stored value; and
an act of processing the schematized attachment according to the accessed value.
-
-
47. In a computer system that is network connectable along with one or more other computer systems to a network, a method for creating an electronic message that can be stored and accessed with increased efficiency, the method comprising:
-
an act of creating a message item representing the electronic message in accordance with a message schema, the message item having one or more general properties that may be common to a plurality of different types of message protocols and message applications;
an act of assigning a primary type to the created message item, the primary type indicating a primary behavior of one or more content portions linked to the created message item; and
a step for customizing the message according to one or more message extensions so as to cause the message item to be compatible with components that process data formatted in accordance with the one or more message extensions.
-
Specification