Digital media organization and access
First Claim
1. A computer-implemented method, comprising:
- receiving a request for a plurality of data items, the request specifying a search condition;
searching a data store comprising a plurality of data objects representing data items for data items satisfying the search condition, the plurality of data objects comprising one or more media objects, one or more tag objects and one or more page objects, where;
a media object represents an item of digital media and is an instantiation of a media object class;
a tag object represents a category of digital media and is an instantiation of a tag object class and each media object can be associated with zero or more tag objects; and
a page object defines a relationship between a tag object and a media object;
generating a collection of data objects representing data items that satisfy the search condition;
using an iterator to sequentially access the data items represented by the data objects in the collection; and
providing the data items to a user interface.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus, including computer program products, implementing and using techniques for accessing and organizing data items, including items of digital media, such as digital images, video stream, audio stream, text documents and the like. An object model defines a plurality of data object classes, including a media object class for representing items of digital media and a tag object class for representing categories of digital media. A request for one or more data items specifies a search condition. A collection of one or more data objects instantiated from the data object classes is generated, whereby the data objects in the collection represent data items satisfying the search condition. An iterator configured to sequentially access the data items represented by the data objects in the collection of data objects is generated and used to sequentially access the data items.
-
Citations
22 Claims
-
1. A computer-implemented method, comprising:
-
receiving a request for a plurality of data items, the request specifying a search condition; searching a data store comprising a plurality of data objects representing data items for data items satisfying the search condition, the plurality of data objects comprising one or more media objects, one or more tag objects and one or more page objects, where; a media object represents an item of digital media and is an instantiation of a media object class; a tag object represents a category of digital media and is an instantiation of a tag object class and each media object can be associated with zero or more tag objects; and a page object defines a relationship between a tag object and a media object; generating a collection of data objects representing data items that satisfy the search condition; using an iterator to sequentially access the data items represented by the data objects in the collection; and providing the data items to a user interface. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A machine-readable storage device encoded with a computer program product comprising instructions operable to cause data processing apparatus to perform operations comprising:
-
receiving a request for a plurality of data items, the request specifying a search condition; searching a data store comprising a plurality of data objects representing data items for data items satisfying the search condition, the plurality of data objects comprising one or more media objects, one or more tag objects and one or more page objects, where; a media object represents an item of digital media and is an instantiation of a media object class; a tag object represents a category of digital media and is an instantiation of a tag object class and each media object can be associated with zero or more tag objects; and a page object defines a relationship between a tag object and a media object; generating a collection of data objects representing data items that satisfy the search condition; using an iterator to sequentially access the data items represented by the data objects in the collection; and providing the data items to a user interface. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A system comprising:
-
a processor; a storage device coupled to the processor and configurable for storing instructions, which, when executed by the processor cause the processor to perform operations comprising; receiving a request for a plurality of data items, the request specifying a search condition; searching a data store comprising a plurality of data objects representing data items for data items satisfying the search condition, where the data objects comprising one or more media objects;
one or more tag objects and one or more page objects, where;a media object represents an item of digital media and is an instantiation of a media object class; a tag object represents a category of digital media and is an instantiation of a tag object class and each media object can be associated with zero or more tag objects; and a page object defines a relationship between a tag object and a media object; generating a collection of data objects representing data items that satisfy the search condition; using an iterator to sequentially access the data items represented by the data objects in the collection; and providing the data items to a user interface. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A computer-implemented method, comprising:
-
providing a data store comprising a plurality of data objects representing data items, wherein the data objects include; media objects being instantiations of a media object class, where the data item represented by a media object is a digital media item; and tag objects being instantiations of a tag object class, where the data item represented by a tag object is a category of digital media; receiving a user input performing an operation to associate a first data item represented by a first data object with a second data item represented by a second data object in the data store; generating a third data object that represents a third data item, wherein the third data object defines the association of the first data object representing the first data item and the second data object representing the second data item; and searching the data store for data items satisfying a search condition; generating a collection of data objects representing data items that satisfy the search condition; using an iterator to sequentially access the data items represented by the data objects in the collection. - View Dependent Claims (20, 21)
-
-
22. A computer-implemented method, comprising:
-
providing a data store comprising a plurality of data objects representing data items, wherein the data objects include; media objects being instantiations of a media object class, where the data item represented by a media object is a digital media item; tag objects being instantiations of a tag object class, where the data item represented by a tag object is a category of digital media; page objects defining a relationship between a tag object and a media object; and edit objects being instantiations of an edit object class, where the data item represented by an edit object is an edit operation; receiving a user input performing an edit operation on a first digital media item represented by a first media object; generating a current edit object representing the edit operation performed on the first digital media item; generating an edit list for the first media object, the edit list representing edit objects representing all edit operations associated with the first media object including the current edit object, where the current edit object is sequentially appended to the edit list; and using an edit iterator to sequentially access the edit operations for the first media object and to reapply each edit operation to the first digital item represented by the first media object to create a current state of the first digital media item.
-
Specification