This application generally relates to computer-executed methods, systems, and media are provided for distributing and maintaining product information over the Internet.
Internet-based commerce is a major industry world-wide. Typical Internet-based commerce websites present a shopper with a wide variety of products for purchase when the shopper visits the websites (e.g., using a standard web browser). Through a webpage interface, the shopper may choose desired products from among the wide variety of presented products. The shopper may purchase chosen products, for example, by using a standard credit card authorization interface. The chosen products may then be shipped to the shopper or some other address provided by the shopper through the website interface.
Some Internet-based commerce sites are linked to a specific manufacturer or type of product and allow shoppers to choose from only a limited array of products from that manufacturer or that type. Others are more general sites that allow shoppers to select from a wide array of product types from a wide array of manufacturers. While some of these Internet-based commerce sites provide shoppers with a department store-like shopping experience where the sites present the shopper with the products of only large sellers or manufacturers, others provide shoppers with a more market-like shopping experience where the site presents the shopper with products from smaller or individual sellers or manufacturers. In any case, shoppers at Internet-based commerce sites are typically presented with a vast number of products of different types, colors, origins, etc. from which to choose.
The vast number of Internet-based commerce sites in existence today allows consumers access to a huge array of products. These products are traditionally manufactured by a corporation, manufacturer or individual and offered for sale, either by that corporation or individual or some other entity, through one of the vast number of Internet-based commerce sites.
What is needed in the art are improved systems and methods for helping users to identify, organize and share product information of interest.
One embodiment provides computer-executed methods, systems, and computer-readable media for creating or providing a first webpage, responsive to a user request, which prompts for a query from a user. A search for products or services that match the query (e.g., in a database) yields a search results schema, comprising a hit description for the results of the search. A plurality of result details layout schemas, each corresponding to a search result, is also obtained. The search results schema specifies a location of each result details layout schema. A second web page encoding a first and second representation is created. The first representation is for a first search result and is centered in the second web page. The second representation is of a second search result and is positioned in an off-center position in a manner that is rotated about a first axis of rotation. The first and second representations are respectively specified by first and second result details layout schemas.
Another embodiment provides computer-executed methods, systems, and computer-readable media for sending a query for a first web page using an Internet browser. A first web page received from a first remote computer is displayed in response to the query. The first web page includes instructions for prompting a user for a product or service query. Responsive to the displaying of the first web page, a product or service query is sent. A second web page is displayed using an information construct. The information construct comprises a search results schema or is derived from the search results schema. The search results schema comprises a hit description for each search result in a plurality of search results for the product or service query. A hit description in the search results schema specifies a location of a result details layout schema in a plurality of result details layout schemas. Further, the second web page comprises instructions for encoding a first representation of a first search result in the plurality of search results in a center position of said second web page, where the first representation is specified by the search results schema and a first result details layout schema in the plurality of result details layout schemas. Also, the second web page comprises instructions for encoding a second representation of a second search result in the plurality of search results in a first off-center position of the second web page relative to the first representation. The second representation is rotated about a first axis of rotation that lies between the center position and the first off-center position of the second web page. The second representation is specified by the search results schema and a second result details layout schema in the plurality of result details layout schemas.
Another embodiment provides computer-executed methods, systems, and computer-readable media for displaying information in which, responsive to a user query, an album is obtained from a remote computer. The album comprises a plurality of links to a plurality of Internet-accessible documents, each link in the plurality of links specifying a location of an Internet-accessible document in the plurality of Internet-accessible documents. A first link in the plurality of links is a link to a first static graphic representation stored in a document repository in a remote location, where the first static graphic representation is of a document retrieved from the Internet at a time before the obtaining. A second link in the plurality of links is a link to a location of a first image for a selected search result from a hit description for the selected search result in a search results schema. Responsive to the user query, all or a portion of the plurality of Internet-accessible documents in the plurality of Internet-accessible documents are retrieved over the Internet including the first static graphic representation and the first image. All or a portion of the plurality of Internet-accessible documents in the plurality of Internet-accessible documents are displayed on a graphic output device.
Another embodiment provides computer-executed methods, systems, and computer-readable media for receiving a query for product or service information. Responsive to the query, a search results schema for a plurality of products or services that match the query is generated or retrieved. The search results schema comprises a hit description for all or a portion of the products or services in said plurality of plurality of products or services. Further, responsive to the query a plurality of result details layout schemas are generated or retrieved. Each result details layout schema in the plurality of result details layout schemas corresponds to a product or service in the plurality of products or services. The search results schema specifies a location for each result details layout schema in all or a portion of the plurality of result details layout schemas. A first web page is created. The first web page comprises instructions for encoding a first representation of a first product or service in the plurality of products or services in a center position of the first web page. The first representation is specified by the search results schema and a first result details layout schema in the plurality of result details layout schemas. A second representation of a second product or service in the plurality of products or services is encoded in a first off-center position of the second web page relative to the first representation. The second representation is rotated about a first axis of rotation that lies between the center position and the first off-center position of the second web page. The second representation is specified by the search results schema and a second result details layout schema in the plurality of result details layout schemas.
Another embodiment provides computer-executed methods, systems, and computer-readable media for sending a product or service query and displaying a first web page using an information construct. The information construct comprises a search results schema or is derived from the search results schema. The search results schema comprises a hit description for each product or service in a plurality of products or services that match the product or service query. A hit description in the search results schema specifies a location of a result details layout schema in a plurality of result details layout schemas. The first web page comprises instructions for encoding a first representation of a first search result in the plurality of search results in a center position of said first web page. The first representation is specified by the search results schema and a first result details layout schema in the plurality of result details layout schemas. The first web page also comprises instructions for encoding a second representation of a second search result in the plurality of search results in a first off-center position of the second web page relative to the first representation. The second representation is rotated about a first axis of rotation that lies between the center position and the first off-center position of the first web page. The second representation is specified by the search results schema and a second result details layout schema in the plurality of result details layout schemas.
Like reference numerals refer to corresponding parts throughout the several views of the drawings.
In one aspect, computer-executed methods, systems, and media provide a first webpage, responsive to a user request, prompting for a query. A search for products or services that match the query yields a search results schema, comprising a hit description for the results of the search. A plurality of result details layout schemas, each corresponding to a search result, is also obtained. The search results schema specifies a location of each result details layout schema. A second web page encoding a first and second representation is created. The first representation is for a first search result and is centered in the second web page. The second representation is of a second search result and is positioned in an off-center position in a manner that is rotated about a first axis of rotation. The first and second representations are respectively specified by first and second result details layout schemas.
In some embodiments, a plug-in provides an opportunity to quickly and easily display dynamic search results in an interactive and visually refined manner. The content is displayed in a pageflow user interface, complete with reflections. Site visitors can: (i) flip through search results one by one, (ii) click on any visible result slide, (iii) use a slider bar to navigate among all available results, and (iv) add results into a “stack.” As used herein, the terms “stack” and “album” are interchangeable. In some embodiments, for optimized performance, results are loaded ten at a time and the next set of results is loaded when only four unviewed results remain. The loading of additional results is seamless for users. Previously viewed results are immediately available.
Product/service server 198 is connected via Internet/network 160 to one or more client devices 130.
In some embodiments, memory 182 stores:
In typical embodiments, a client device 130 includes:
In some embodiments, data in memory 114 can be seamlessly shared with optional non-volatile memory 106 using known computing techniques such as caching. In some embodiments, the client device 130 does not have a magnetic disk storage device 106. For instance, in some embodiments, in some embodiments the client device 100 is a portable handheld computing device. In some embodiments, network interface 110 communicates with Internet/network 160 by wireless means.
In some embodiments, memory 114 stores:
In some embodiments, the web browser 118 includes plugin that relies on the ADOBE® Flash Player version 9 or equivalent functionality. Thus, in some embodiments, memory 114 and or memory 106 further includes ADOBE® Flash Player version 9 or equivalent functionality (not shown).
Page flow/stack server 154 comprises:
Page flow/stack server 154 is connected via Internet/network 160 to one or more product/service servers 198 and/or one or client devices 130.
It will be appreciated by those of skill in the art that page flow/stack server 154 may in fact have a computer architecture that is more complex than that shown in
An exemplary stack database 152 is illustrated in
Optionally, in some embodiments, each album 180 has one or more classifications 282. Such classifications can be, for example, the classifications of the vertical collections that contain documents that are linked by the album 280. For example, consider the case in which there is a particular web page in a vertical collection and a link to this web page is in an album 280. In this example, the characteristics of the vertical collection containing the web page can be used to classify the album 280, and this classification can be stored as a classification 282 of the album 280. An album can have many classifications, for example, it can have the classification “cell phones,” “electronics,” and “not consumer complaints.” More information on vertical collections is found in United States Patent Publications 2007/0244862, 20070244863, and 2008/0082554 each of which is hereby incorporated by reference.
In some embodiments there are public albums 180 that can be viewed by everyone and there are private albums 180 that can only be viewed by select users or select programs. In some embodiments, all albums are public meaning that they can be viewed by everyone, but only the creator of the album can has edit privileges. These are all examples of access privileges 284 that are stored in the album 180 in some embodiments. In some embodiments, access privileges 284 specify who can review the album 180, add or delete “pages” in the album 280, share the album 280, print the album 280, delete the album 280, copy the album 280, and/or annotate album documents 296. In some embodiments, rather than having album privileges 284, there are multiple identifiers to a given album, where the actually identity of identifier indicates the access privileges. Thus, if a first identifier to a given album 280 is shared, the recipient of the identifier can only view the album 280, whereas if a second identifier to a given album 280 is shared, the recipient of the identifier has full privileges to the album 280, including the right to modify, share, print, delete, or copy the album. In some embodiments, all users have the right to share and copy an album 280 so that albums become widely distributed across a broad user group. As described herein, in some embodiments, to share an album 280, all that is required is to share the album 280 identifier with one or more recipients.
Advantageously, in some embodiments, albums 280 contains an optional edit history 286 that indicates the last date in which an album was edited. In some embodiments, edit history 286 is a comprehensive edit history that indicates (i) when each link to a document 296 was added to the album, (ii) who added the link to the album 280, (iii) whether any links were deleted from the album 280 and, if so, the links that were deleted, (iv) how many times the album 280 has been accessed, (v) who has accessed the album 280, (vi) when was the last time the album 280 was accessed, and/or (vii) how many times the album 280 has been shared. Optional edit history 284 can contain any combination of such information or any other information that relates to the modifications or usage history of album 280.
In some embodiments, the creation date 288 of an album 280 is stored in the album. In some embodiments, the creation date 288 is not stored and in some embodiments the creation date is simply stored as edit history information 286. In some embodiments, based on one or more of the optional classifications 282 of an album 280, album edit history and/or usage history 286, creation date 288, an identity or characteristic of any combination of the documents 296 linked by the album 180, or any other information associated with the album 280 and/or stored in the album 280, selected advertisements 290 are associated with the album 20. In some embodiments, these optional advertisements 290 are stored in the album 280 itself. In some embodiments, optional advertisements 290 are links to advertisements that are stored in a separate optional advertisement repository. In some embodiments, advertisements 290 are not stored in album 280 but rather, whenever an album is viewed some combination of one or more of the classifications 282 of the album 280, the album edit history and/or usage history 286, the album creation date 288, an identity or characteristic of any combination of the documents 296 linked by the album 280, or any other information associated with the album and/or stored in the album is sent to a software module (e.g., an advertisement module) in or electronically accessible form to a software module that manages an advertisement repository 156. Based on the information sent to the software module, one or more appropriate advertisements are pulled from the advertisement database (not shown) and either integrated directly into the album 180 as separate pages of the album or are displayed along with the album 180 when the album is being viewed (e.g., as background, as a side panel, in a pop-window etc.). In some embodiments, the advertisement is an interactive widget, such as a query form for a retailer that allows a user to enter information, such as billing information, and order products. Thus, in some embodiments, advertisements 290 are temporarily integrated into an album and displayed only once. In other embodiments, advertisements 290 are integrated into an album and persist in the album for a finite number of views. For example in some embodiments, an advertisement 190 is integrated into an album without human intervention and persists in the album 180 until the page in the album 180 containing the advertisement has been viewed a predetermined number of times (e.g., between one and ten times, more than once, more than five times, more than 100 times) or by a predetermined number of different album recipients (e.g., between one and ten album recipients, more than one album recipient, more than five album recipients, more than 100 album recipients). In some embodiments, an advertisement 290 persists permanently within an album (either directly or as link to the album). In some embodiments, an advertisement 290 persists within an album (either directly or as link to the album) for a predetermined period of time (e.g., for an hour or less, between one and five hours, for ten hours or less, for a number of days, for a month or less, etc.).
In some embodiments, the amount of money paid by an advertiser to host an advertisement 290 in an album is a function of the popularity of an album 280 as determined by any kind of metric such as, for example, how often an album is shared, how many times the album has been shared, the classification 282 of the album, the characterization of any of the links contained in the album 282, an identity of the person that created the album, or simply based upon agreed upon price.
Continuing to refer to
As discussed above, an album contains one or more links 296, where each link 296 uniquely identifies a static graphic representation of a document such as a web page, a static graphic representation of a document such as a web page, one or more records in a database (e.g., a database accessed using COLDFUSION® or MySQL, etc.). In some embodiments an album 280 comprises links to actual URLs on the Internet. In some embodiments, the characterization of each document referenced by an album 280 is known and such characterizations 298 are associated with their corresponding links in album 280 and stored in the album 280. More information on albums is found in U.S. patent applications Ser. No. 12/131,087, filed May 31, 2008, Ser. No. 12/142,759, filed Jun. 19, 2008 and Ser. No. 12/142,771, filed Jun. 19, 2008 each of which is hereby incorporated by reference herein in its entirety.
In some embodiments, a static graphic representation of a web page is a bitmapped or pixmapped image of the web page. As used herein, a bitmap or pixmap is a type of memory organization or image file format or data structure used to store a digital image. A bitmap is a map of bits, a spatially mapped array of bits. Bitmaps and pixmaps refer to the similar concept of a spatially mapped array of pixels. Raster images in general may be referred to as bitmaps or pixmaps. In some embodiments, the term bitmap implies one bit per pixel, while a pixmap is used for images with multiple bits per pixel. One example of a bitmap is a specific format used in WINDOWS® that is usually named with the file extension of .BMP (or .DIB for device-independent bitmap). Besides BMP, other file formats that store literal bitmaps include InterLeaved Bitmap (ILBM), Portable Bitmap (PBM), X Bitmap (XBM), and Wireless Application Protocol Bitmap (WBMP). In addition to such uncompressed formats, as used herein, the term bitmap and pixmap refers to compressed formats. Examples of such bitmap formats include, but are not limited to, formats such as JPEG, TIFF, PNG, and GIF, to name just a few, in which the bitmap image, as opposed to the vector image, is stored in a compressed format. JPEG is usually lossy compression. TIFF is usually either uncompressed, or losslessly Lempel-Ziv-Welch compressed like GIF. PNG uses deflate lossless compression, another Lempel-Ziv variant. More disclosure on bitmap images is found in Foley, 1995, Computer Graphics: Principles and Practice, Addison-Wesley Professional, p. 13, ISBN 0201848406 as well as Pachghare, 2005, Comprehensive Computer Graphics: Including C++, Laxmi Publications, p. 93, ISBN 8170081858, each of which is hereby incorporated by reference herein in its entirety.
In typical uncompressed bitmaps, image pixels are generally stored with a color depth of 1, 4, 8, 16, 24, 32, 48, or 64 bits per pixel. Pixels of 8 bits and fewer can represent either grayscale or indexed color. An alpha channel, for transparency, may be stored in a separate bitmap, where it is similar to a greyscale bitmap, or in a fourth channel that, for example, converts 24-bit images to 32 bits per pixel. The bits representing the bitmap pixels may be packed or unpacked (spaced out to byte or word boundaries), depending on the format. Depending on the color depth, a pixel in the picture will occupy at least n/8 bytes, where n is the bit depth since 1 byte equals 8 bits. For an uncompressed, packed within rows, bitmap, such as is stored in Microsoft DIB or BMP file format, or in uncompressed TIFF format, the approximate size for a n-bit-per-pixel (2n colors) bitmap, in bytes, can be calculated as: size≈width×height×n/8, where height and width are given in pixels. In this formula, header size and color palette size, if any, are not included. Due to effects of row padding to align each row start to a storage unit boundary such as a word, additional bytes may be needed.
In some embodiments, the static graphic representation is generated using a web browser for which source code is available, such as MOZILLA® FIREFOX®. A static graphic representation of a web page can be an image of the rendered web page at a given instant in time or a time averaged representation of the web page over a period of time (e.g., one second or more, ten seconds or more, a minute or more, two minutes or more, etc.). Thus, a static graphic representation fully encompasses dynamic web pages that include applets such as ticker tapes or other dynamic components that cause the representation of the web page to change over time. Any dynamic components in a web page can either be ignored when constructing the word map for the document encoding the web page, averaged over a period of time, or a snapshot of such dynamic components (e.g., snapshots) can be used for the purposes of constructing the static graphic representation of the web page.
In the embodiment illustrated in
Of course, there is no requirement that albums 280 be stored in the format illustrated in
Regardless of the form used to store the album 280, the album itself can be stored locally, e.g., on client device 130, or remotely, e.g., on a server running a search engine (not shown). In typically embodiments, each respective link 296 in an album 280 contains the full address or other form of identifier that is sufficient to retrieve the document identified by the respective link 296 from a remote computer. As defined herein, a “remote computer” is any computer that must be accessed over Internet or other form of network 160. A user of client device 130 can have any number of albums 180 that are accessible to client computer 130 by stack identifiers 122 although such albums may be stored remotely in stack database 152 on page flow/stack server 154. For example a user can have one or more albums 280, more than ten albums 280, or more than 100 albums 280, each of which can, independently be stored locally or remotely.
In step 306, using web browser 118, a user provides a search query for a desired product and/or service. For example, referring to
In step 308, product/service server 198 receives, responsive to the provision of the first web page to the client 130, a product or service query. The product/service search module 192 searches for one or more products or one or more services in products/services database that matches the product or service query thereby obtaining a plurality of search results. In some embodiments, the plurality of search results is information about 5 or more products or services, 10 or more products or services, 20 or more products or services, or 100 or more products or services.
In step 310, product/services search result code generation module 196 builds, retrieves, creates, or generates (i) a search results schema and (ii) a plurality of results details layout schema. The search results schema comprises a hit description for all or a portion of the search results in the plurality of search results. Each result details layout schema in the plurality of result details layout schemas corresponds to a search result in the plurality of search results. The search results schema specifies a location for each result details layout schema in all or a portion of the plurality of result details layout schemas.
In some embodiments, the search results schema is XML code that contains a set of a predetermined number of results (e.g., up to 10 results, up to 20 results, etc.) along with a URL to the next “page” of results. In some embodiments, information for each result for the user query is represented in a “hit” node. In some embodiments, the search results schema comprises, for each hit in the search results schema, one or more of the following: (i) a snippet, which is brief description of the search item, (ii) a title, which is a headline for the search item, (iii) a uniform resource location (URL) that the user will be directed to when a slide is clicked, (iv) a content URL, which is the location of the result details layout schema for the search item, and/or (v) an image URL, which is a location for the image file to be displayed in a stack preview icon.
The following exemplary code is an example of a search results schema. In the exemplary code, search result hits are embedded in a results element “<results” (line 2) “/results>” (line 98). The URL for the search results schema that contains the next batch of hits responsive to a user query is set forth on lines 3-4 of the exemplary code. Each search result in the search results schema is embedded in a hit element (e.g., “<hit>” on line 6 through “</hit>” on line 19).
In the exemplary search results schema, there is provided a snippet for each hit. Line 7 illustrates. The snippet for this hit is “Rating=5.” The snippet is encoded in a representation of the hit. When the representation of the hit is displayed by a web browser (e.g., web browser 118 on client 130), the snippet is displayed with the representation under certain conditions.
In the exemplary search results schema, there is provided a title for each hit. Line 8 of the code below illustrates. The title for this hit is “PRO TAPER ROUND PAD 10.3in.” The title is associated with a representation of the hit. When the representation of the hit is displayed by a web browser, the title is also displayed.
In the exemplary search results schema below, there is provided a URL where the results details layout schema for a hit can be found. Lines 17-18 of the exemplary code for the search results schema disclose one such URL. In the exemplary search results schema, there is also provided a URL where the user will be directed to if the representation of the hit, displayed in a web browser, is selected. Lines 9-14 of the exemplary code below for the search results schema disclose one such URL. This URL is displayed in panel 806 of web page 702 in
The following exemplary code is an example of a result details layout schema for the hit (search result) described by lines 6-19 of the exemplary code for the search results schema above. Text specified at lines 27-39 of the exemplary code below is displayed as element 706 in the representation of the hit in web page 702 illustrated in
In step 312, dynamic web page processing script 190 uses the search result schema and the result details layout schemas to rebuild web page 188 (e.g., create a second web page). As part of this process, code, such as the exemplary code below is incorporated into the rebuilt web page.
In the exemplary code above, lines 1-15 are interpreted by an Internet Explorer web browser when the rebuild web page is loaded by such a browser whereas lines 16 through 33 are interpreted by the FIREFOX web browser when loaded by such a browser. Line 2 of the code defines a window in the rebuilt web page having a specified width and height. The representations or products and/or services that match the user query are displayed in this window. In some embodiments, the window is an HTML IFRAME. Advantageously, the product/service provider can adjust the size and width of this window by modifying the width and height parameters in line 2 of the exemplary code above. Lines 3-4 of the exemplary code provides the location on page flow/stack server 154 of a page flow module 154 for interpreting the search results schema and result details layout schema, building representations of products or services contain in these schemas, and visualizing the representations in the web page. Lines 5-7 of the exemplary code contain parameters that are used by the page flow module 154. These parameters include the customization parameters “autoplay” which determines if representations scroll without user intervention, a color code scheme, and the location of the search results schema on product/service server 198. Lines 12-15 are Internet Explorer specific parameters. In some embodiments, page flow module 154 is based on the FLASH programming language.
In step 314, the web page, with the exemplary code incorporated, is served to client 130.
Referring to
Returning to
Optionally, in step 320, responsive to the rebuilt web page (e.g., second web), a check is performed to determine whether there is any stack identifiers 122 associated with a user of the client device 130. For example, such stack identifiers 122 can be in the form of a cookie or other data structure that is stored in memory 114 and/or memory 104 of the client 130. If stacks (albums) are found, in step 322, client 130 queries stack database 152 for these stacks. In step 324, responsive to such a request, web server 146 execute stack query module 150 to retrieve all or a portion of each requested stack from stack database 152. In step 326, which is reached regardless of whether steps 320, 322, or 324 is executed, a user review search results in a page flow format illustrated in
In some embodiments, steps 320 and 322 are performed by product/service server 198 instead of by client 130. Furthermore, more generally, because page flow/stack server 154, client 130, and product/service 198 are each connected by Internet or other network 160, it will be appreciated that all or a portion of any of the steps disclosed in
As illustrated in
Referring to
(i) shifting the first representation 720 to a second off-center position of said second web page 702 thereby causing the first representation 720 to be displayed at the second off-center position rotated about a second axis of rotation 760 that lies between the center position and the second off-center position of the second web page 702,
(ii) shifting the second representation 722 to the center position of the second web page 702, thereby causing the second representation 722 to be displayed at the center position in a manner that is no longer rotated about the first axis of rotation 740, and
(iii) displaying a third representation 724 of a third search result in the plurality of search results in the first off-center position of the second web page 702, wherein the third representation is rotated about the first axis of rotation 740 and wherein the third representation 724 is specified by the search results schema and a third result details layout schema in the plurality of result details layout schemas from step 310, thereby achieving the state illustrated in
The state of web page 702 illustrated in
shifting the first representation 720 to the center position of the second web page 702 thereby causing the first representation to be displayed at the center position in a manner that is no longer rotated about the second axis of rotation, and
shifting the second representation 722 to the first off-center position thereby causing the second representation 722 to be displayed at the first off-center position in a manner that is rotated about the first axis of rotation, thereby achieving the state for web page 702 illustrated in
Referring to
Referring to
Referring to
Referring to
Referring to
Advantageously, links 296 added to an album 280 from the search results identified by the methods disclosed herein, for example, the method disclosed in
Referring to
Another aspect provides a computer program product for use in conjunction with a computer system, the computer program product comprising a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising instructions for performing any of the methods disclosed herein.
Another aspect provides a computer, comprising a main memory, one or more processors, and one or more programs, stored in the main memory and executed by the one or more processors, the programs collecting including instructions for performing any of the methods disclosed herein.
All references cited herein are incorporated herein by reference in their entirety and for all purposes to the same extent as if each individual publication or patent or patent application was specifically and individually indicated to be incorporated by reference in its entirety for all purposes.
The systems and methods described herein can be implemented as a computer program product that includes a computer program mechanism embedded in a computer readable storage medium. For example, the computer program product can contain the program modules shown in
Many modifications and variations of this invention can be made without departing from its spirit and scope, as will be apparent to those skilled in the art. The specific embodiments described herein are offered by way of example only. The embodiments were chosen and described in order to explain the principles of the invention and its practical applications, to thereby enable others skilled in the art to utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated. The invention is to be limited only by the terms of the appended claims, along with the full scope of equivalents to which such claims are entitled.
This Application claim priority to U.S. Patent Application No. 61/105,043, filed Oct. 13, 2008, which is hereby incorporated by reference herein in its entirety.
| Number | Date | Country | |
|---|---|---|---|
| 61105043 | Oct 2008 | US |