IP Library Granted Patent US 7,174,330
Granted Patent B2
US 7,174,330 · App. 10/840,853 · Granted Feb 6, 2007

Efficiently storing indented threads in a threaded discussion application

Assignee: BEA Systems, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,174,330
App. No.
10/840,853
Granted
Feb 6, 2007
Kind
B2
Abstract

A method, apparatus, and computer-readable media for retrieving records in a hierarchical set of the records having a plurality of hierarchical levels and a plurality of hierarchical depths, each of the records having a tag that is unique within the hierarchical set of the records, comprises identifying one of the records in the hierarchical set of the records; modifying the tag, thereby producing a key; indexing the hierarchical set of the records only once, thereby selecting one or more of the records within the hierarchical set of the records, wherein indexing the hierarchical set of the records only once comprises applying the key to the hierarchical set of the records; and retrieving the selected records.

Claims (48)

1. A method for adding a new record to a hierarchical set of records having a plurality of hierarchical levels and a plurality of hierarchical depths, each of the records in the hierarchical set of records having a tag that is unique within the hierarchical set of records, the method comprising:

identifying one of the records in the hierarchical set of records as the parent of the new record;

modifying the tag, thereby producing a key;

adding the key to the new record;

indexing the hierarchical set of records only once, thereby adding the new record to the hierarchical set of records, wherein indexing the hierarchical set of records only once comprises applying the key to the hierarchical set of records; and

retrieving the added record with the key which comprises a second tag uniquely identifying the added record, and

wherein each tag comprises a number including multiple digits indicating a depth and a level within the hierarchical set of records;

wherein the modifying comprises selecting a digit and changing a value of the digit, thereby changing the level or the depth, or both, of said one of the records;

wherein identifying one of the records comprises receiving a selection of the one of the records from a user; and

wherein applying comprises selecting those of the records in the hierarchical set of the records having a tag that matches the key.

2. The method of claim 1 , wherein: each tag is a number having a plurality of digits; the position of each of the digits represents one of the hierarchical depths; the value of each of the digits represents one of the hierarchical levels; the identified record represents a message; identifying one of the records further comprises receiving a command from the user that requests replying to the message; and modifying the tag comprises: selecting the digit corresponding to the hierarchical depth immediately below the hierarchical depth of the identified record; and incrementing the value of the selected digit.

3. The method of claim 1 , wherein: each tag includes a plurality of digits; the position of each of the digits represents one of the hierarchical depths; and the value of each of the digits represents one of the hierarchical levels.

4. At least one computer programmed to execute a process for adding a new record to a hierarchical set of records having a plurality of hierarchical levels and a plurality of hierarchical depths, each of the records in the hierarchical set of records having a tag that is unique within the hierarchical set of records, the process comprising:

identifying one of the records in the hierarchical set of records as the parent of the new record;

modifying the tag, thereby producing a key;

adding the key to the new record;

indexing the hierarchical set of records only once, thereby adding the new record to the hierarchical set of records, wherein indexing the hierarchical set of records only once comprises applying the key to the hierarchical set of records; and

retrieving the added record with the key which comprises a second tag uniquely identifying the added record, and

wherein each tag comprises a number including multiple digits indicating a depth and a level within the hierarchical set of records, and

wherein the modifying comprises selecting a digit and changing a value of the digit, thereby changing the level or the depth, or both, of said one of the records;

wherein identifying one of the records comprises receiving a selection of the one of the records from a user; and

wherein applying comprises selecting those of the records in the hierarchical set of the records having a tag that matches the key.

5. The computer of claim 4 , wherein: each tag is a number having a plurality of digits; the position of each of the digits represents one of the hierarchical depths; the value of each of the digits represents one of the hierarchical levels; the identified record represents a message; identifying one of the records further comprises receiving a command from the user that requests replying to the message; and modifying the tag comprises: selecting the digit corresponding to the hierarchical depth immediately below the hierarchical depth of the identified record; and incrementing the value of the selected digit.

6. The computer of claim 4 , wherein: each tag includes a plurality of digits; the position of each of the digits represents one of the hierarchical depths; and the value of each of the digits represents one of the hierarchical levels.

7. An apparatus for adding a new record to a hierarchical set of records having a plurality of hierarchical levels and a plurality of hierarchical depths, each of the records in the hierarchical set of records having a tag that is unique within the hierarchical set of records, the apparatus comprising:

means for identifying one of the records in the hierarchical set of records as the parent of the new record;

means for modifying the tag, thereby producing a key;

means for adding the key to the new record;

means for indexing the hierarchical set of records only once, thereby adding the new record to the hierarchical set of records, wherein indexing the hierarchical set of records only once comprises applying the key to the hierarchical set of records; and

means for retrieving the added record with the key which comprises a second tag uniquely identifying the added record, and

wherein each tag comprises a number including multiple digits indicating a depth and a level within the hierarchical set of records, and

wherein the modifying comprises selecting a digit and changing a value of the digit, thereby changing the level or the depth, or both, of said one of the records;

wherein identifying one of the records comprises receiving a selection of the one of the records from a user; and

wherein applying comprises selecting those of the records in the hierarchical set of the records having a tag that matches the key.

8. The apparatus of claim 7 , wherein: each tag is a number having a plurality of digits; the position of each of the digits represents one of the hierarchical depths; the value of each of the digits represents one of the hierarchical levels; the identified record represents a message; means for identifying one of the records further comprises means for receiving a command from the user that requests replying to the message; and means for modifying the tag comprises: means for selecting the digit corresponding to the hierarchical depth immediately below the hierarchical depth of the identified record; and means for incrementing the value of the selected digit.

9. The apparatus of claim 7 , wherein: each tag includes a plurality of digits; the position of each of the digits represents one of the hierarchical depths; and the value of each of the digits represents one of the hierarchical levels.

10. Computer-readable media embodying instructions executable by a computer to perform a method for adding a new record to a hierarchical set of records having a plurality of hierarchical levels and a plurality of hierarchical depths, each of the records in the hierarchical set of records having a tag that is unique within the hierarchical set of records, the method comprising:

identifying one of the records in the hierarchical set of records as the parent of the new record;

modifying the tag, thereby producing a key;

adding the key to the new record; and

indexing the hierarchical set of records only once, thereby adding the new record to the hierarchical set of records, wherein indexing the hierarchical set of records only once comprises applying the key to the hierarchical set of records; and

retrieving the added record with the key which comprises a second tag uniquely identifying the added record, and

wherein each tag comprises a number including multiple digits indicating a depth and a level within the hierarchical set of records, and

wherein the modifying comprises selecting a digit and changing a value of the digit, thereby changing the level or the depth, or both, of said one of the records;

wherein identifying one of the records comprises receiving a selection of the one of the records from a user; and

wherein applying comprises selecting those of the records in the hierarchical set of the records having a tag that matches the key.

11. The media of claim 10 , wherein: each tag is a number having a plurality of digits; the position of each of the digits represents one of the hierarchical depths; the value of each of the digits represents one of the hierarchical levels; the identified record represents a message; identifying one of the records further comprises receiving a command from the user that requests replying to the message; and modifying the tag comprises: selecting the digit corresponding to the hierarchical depth immediately below the hierarchical depth of the identified record; and incrementing the value of the selected digit.

12. The media of claim 10 , wherein: each tag includes a plurality of digits; the position of each of the digits represents one of the hierarchical depths; and the value of each of the digits represents one of the hierarchical levels.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2011
From: BEA SYSTEMS, INC.
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 025986/0548 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2006
From: PLUMTREE SOFTWARE, INC.
To: BEA SYSTEMS, INC.
Reel/Frame 017198/0606 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2005
From: FRIEDEN, KURT; SRIKHANTA, PRASANNA
To: PLUMTREE SOFTWARE, INC.
Reel/Frame 015548/0076 →
Continuity (2)
Division 1008578000 · Feb 28, 2002
Related Publication 20040210576A1 · Oct 21, 2004