Patent Document ID: 9037601
Application ID: 13220671

Base Claim:
1. A method comprising: at a server having one or more processors and memory storing one or more programs for execution by the one or more processors so as to perform the method: storing a plurality of messages organized as a plurality of conversations, each conversation including a respective representative message, and at least one of the conversations including multiple messages, wherein a respective representative message of a conversation that includes multiple messages is associated with one or more message terms and one or more conversation terms, the message terms comprising terms that occur in the respective representative message, and the conversation terms comprising terms from the conversation that do not occur in the respective representative message; receiving a message search query from a client and responding to the message search query by: identifying, in the plurality of messages, one or more matching messages that are associated with message terms matching the message search query; and returning message search results including representations of at least a subset of the matching messages for display at the client from which the message search query was received; and receiving a conversation search query from a client and responding to the conversation search query by: identifying, in the plurality of messages, one or more matching representative messages that are associated with a combination of message and conversation terms matching the conversation search query, the combination comprising one or more conversation terms associated with the representative message and zero or more message terms associated with the representative message; selecting one or more conversations including a matching representative message as matching conversations, wherein the message terms in the representative message of at least one of the matching conversations do not match at least one term of the conversation search query; and returning conversation search results including representations of at least a subset of the matching conversations for display at the client from which the conversation search query was received.

---

Claim 11:
11. The method of claim 1 , further comprising, storing a plurality of index entries in an index, a respective index entry corresponding to a respective term and having a plurality of index components, a respective index component of the respective index entry identifying a message that is associated with the respective term, wherein: the index includes, for the representative message of a respective conversation, a plurality of conversation index components that each include an identifier of the conversation, including: one or more index components indicative of the message terms associated with the representative message; and one or more index components indicative of the conversation terms associated with the representative message, the one or more conversation terms comprising one or more terms that are not in the representative message; and for representative message of the respective conversation, the index components indicative of the plurality of message terms are distinguished from the index components indicative of the conversation terms by partitioning an address space for the representative message, the address space having a respective address for each message term associated with the representative message and for each conversation term associated with the representative message, wherein the respective address for a respective conversation term in the conversation is indicative of a mapped location of the respective conversation term within the address space for the representative message.