Abstract:
A method of generating a presentation comprising providing a collection of content where each unit of content has an identifier, providing a seed unit of content that contains references to the said identifiers, searching the existing collection of content for units of content with identifiers that are referenced by the seed unit of content, generating a presentation by gathering all units of content that were found in the said searching, whereby the presentation generated can contain more content than the seed content. Also a method of placing an order comprising providing an item with a plurality of pricing tiers, providing pricing rules for enforcing the said pricing tiers, providing a criterion, providing a method to identify inputs required from the user such that an order can be created that meets the requirements of the user while optimizing said criterion while conforming to the said pricing rules, requesting the said identified inputs from the user of the client system, whereby the user of the client system is not exposed to the pricing tiers and is not able to submit an order that violates the pricing rules. Also an apparatus.

Description:
TECHNICAL FIELD 
       [0001]    The present invention relates to e-commerce sites and, more particularly, to an apparatus and method for simplifying the process of publishing pricing and multimedia information for goods or services such as travel-related products. 
       BACKGROUND OF THE INVENTION 
       [0002]    The e-commerce sites found on the internet enable customers to select and make payments online for a product or service. Typically, a customer would browse through various multimedia content (e.g. text, photos, videos, and the like) which represent the goods or services offered by the site&#39;s proprietor before making selection and purchase. 
         [0003]    Due to the plurality of e-commerce sites selling similar products or services, online customers enjoy more choice and more control through making transactions online. The ease of use, in terms of locating price and product information, has become one of the crucial factors predicting online users&#39; purchase decision. Further, another limiting factor of e-commerce systems is that they could only support one set of pricing rules for one or more specialized sets of goods or services. 
         [0004]    An online customer visits an e-commerce site such as a travel agency site to find out more information on a product such as a travel package. However, an online customer may face two problems when making travel selections and purchases. Firstly, with reference to  FIG. 1C , there may be difficulty in relating product information e.g. a travel package with the multimedia content presented at a travel agency&#39;s site. Secondly, with reference to  FIG. 1B , the pricing information and its rules stated in a travel itinerary displayed on a travel agent&#39;s site are often confusing. 
         [0005]    The first problem occurs as a site proprietor (e.g. a travel agent) may have to change their goods or services (e.g. travel package) published on a website on a frequent basis. These site proprietors are highly susceptible to commit data entry errors. This results in a mismatch between different modes of information. For example, as the result of an error, the entered description of a product does not match the entered multimedia content for the same product; a product describing Japan may have multimedia content reflecting landmarks in Egypt. 
         [0006]    The second problem an e-commerce site proprietor of a travel business may face is the baffling price information published. For example, a travel agent charges a customer a price for an airline ticket based on the age of the traveller (e.g. infant, child &amp; adult), flight type (e.g. local or international), promotional discounts (e.g. airline alliance or due to purchase of blocks of airline seats in advance) offered to the travel agent, type of seats (e.g. no frills, economy, business &amp; first class) and type of airline (e.g. Qantas, SIA &amp; the like). Similarly, travel agents charge customers hotel fees based on the type of hotel (e.g. Hyatt, Ritz Carlton &amp; the like), type of rooms (e.g. Standard, Suite &amp; the like), number of allowable persons in a room (e.g. 2 adults &amp; 2 children) and promotional discounts (e.g. hotel affiliate programs &amp; the like). These result in complex price tiers which are used in travel products. Often, online customers do not read or understand these rules associated with the price thus decide not to make the purchase resulting in potential loss of sales. 
       SUMMARY OF THE INVENTION 
       [0007]    An embodiment of the present invention provides an apparatus and method for a seller to publish goods or services and receive orders online. The seller provides the server computer with one or more products&#39; descriptions which may comprise pricing data, text, photos, videos, and other multimedia content. The seller also provides the server computer with annotations which may comprise of text, photos, videos, and other multimedia content. These annotations can provide additional information on specific components in the product description such as specific words, phrases, multimedia objects, and other content. A product description may reference multiple annotations and an annotation may be referenced by multiple product descriptions. This referencing may be done automatically by the apparatus or may be manually effected by a publisher. 
         [0008]    When a user requests for information regarding a product from the server computer via a computer, phone or other devices, via any operating system and browser, the server computer returns the product description. In addition to the product description, the server computer also creates and returns a multimedia presentation based on both the content in the product description and any referenced annotation. Additionally, the references between the content in the multimedia presentation to the content in the annotation to the content in the product description may be retained. This means that interaction with the multimedia presentation may include effects on both the product description and the annotation. Content in the annotation may be easily reused across multiple product descriptions and this significantly reduces data entry effort. Also, since content in the product description is automatically referenced to annotations, a multimedia presentation may be created with very little effort on the part of the publisher assuming the existence of relevant annotations. This may result in fewer mismatches between different modes of information and may reduce the occurrence of human error. A large amount of information may be better managed without overwhelming the proprietor or administrator. Time may be saved in not having to check for information mismatches. Also, this may result in a greater relevancy between information of different modes and may result in greater customer satisfaction. 
         [0009]    Pricing information published in a goods or service description may comprise different pricing tiers and rules based on a customer profile. When a user requests, through software applications via a computer, phone or other devices, via any operating system and browser, for order placement from the server computer, the server computer examines the pricing data in the product description. Instead of revealing the pricing tiers and rules to the user, the server computer identifies key inputs that allow the server computer to automatically find the optimum pricing arrangements that meet the client&#39;s requirements based on a predetermined criterion. The identified pricing arrangement is then revealed to the user and the user may choose to make adjustments to the arrangements, the requirements, or the criterion or the combinations thereof used. As the user is not exposed to the complexity of the pricing information, the ordering process may be simplified and this may ensure that the user gets optimum arrangements without violating pricing rules. This method may allow e-commerce programs to support a wide range of pricing rules. Further, this may eliminate the need for a person to manually optimize travel arrangements based on the user&#39;s requirements. This may also result in travel arrangements which conform to the user&#39;s itinerary. This may also shield price variability and the complexity of pricing rules from the user, thus leading to a better user experience. Consequently, this may result in a more effective point of sale which may provide customers with content that is more accurate, and easier to understand. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0010]    For a better understanding of the present invention, reference may be made to the accompanying drawings, in which: 
           [0011]      FIGS. 1A &amp; 1B  illustrate examples of how pricing information is conveyed to an online customer and  FIG. 1B  illustrates how the same online customer inputs their choice; 
           [0012]      FIG. 1C  illustrates an example of photos published on a site that may not depict the realistic expectations of the goods or services offered; 
           [0013]      FIGS. 2A &amp; 2B  illustrate two examples of how an online customer inputs data when making travel arrangements; 
           [0014]      FIGS. 3A &amp; 3B  illustrate two examples of different price rules and input requirements utilized by an Airline and Hotel respectively; 
           [0015]      FIG. 4  is a data flow diagram of a routine to generate a multimedia presentation for a product description in accordance with an embodiment of the present invention; 
           [0016]      FIG. 5  is a data flow diagram of a routine to enable ordering using required inputs in accordance with an embodiment of the present invention; 
           [0017]      FIG. 6 , consisting of  6 A to  6 D, illustrates examples of a database of annotations, a product description input, a product description with references to annotation using xml and an output of the multimedia presentation producer component using xml in the multimedia producer component, in accordance with an embodiment of the present invention; 
           [0018]      FIG. 7 , consisting of  7 A- 7 C, illustrates examples of pricing information with six prices, a non-exhaustive list of pricing arrangements based on user&#39;s possible input and a possible definition of input requirement identification rules used in our pricing method in accordance with an embodiment of the present invention; 
           [0019]    Also in  FIG. 7 , consisting of  7 D- 7 F, illustrates an example of a user&#39;s input and the optimum pricing arrangement, in accordance with another embodiment of the present invention; and 
           [0020]      FIG. 7G  illustrates a pseudo code as an example of a possible criterion, minimum number of rooms, set by a publisher, in accordance with another embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0021]    An apparatus and method for simplifying dynamic pricing information and multimedia referencing for e-commerce products may be used to publish items for sale from multiple vendors. The apparatus may involve a server, local networks, virtual private networks, or the Internet or any combinations thereof that stores a collection of data operable in e-commerce programs, which comprises pricing information, text, and other multimedia content managed via software applications through a user&#39;s computer, phone or other devices, and operating system and browser. The server computer also stores a collection of annotations consisting of text and other multimedia content. In an embodiment of the invention, content in a product description may be associated with annotations. The server computer may create a multimedia presentation based on the content in both the product description and the annotation associated with the contents in the product description. In another embodiment of the invention, the product description may also comprise of pricing data which consist of prices of at least one tier in which one or more rules are applicable. Instead of revealing the pricing tiers and rules to a user, the server computer may request to a user a set of required inputs that allow the server computer to automatically find the optimum pricing information, thus simplifying the purchase process. 
         [0022]    The present invention provides an apparatus and method for publishing and receiving orders online. In one embodiment, the apparatus is used to publish information and receive orders on goods or services such as travel packages. The server computer contains a database of annotations which may comprise of text, photos, videos, and other multimedia content. The publisher provides the server computer with a description of one or more goods or services such as a travel itinerary which may comprise pricing data, text, photos, videos, and other multimedia content. The description is a text description that is entered into the server computer. In accordance with an embodiment of the invention, the reference identification component then examines the travel itinerary and automatically identifies keywords in the itinerary that references any annotations in its database. The publisher may also manually include additional references. 
         [0023]    When a user requests, through software applications via a computer, phone or other devices, via any operating system and browser, for information regarding any goods or service such as a travel product, the multimedia presentation producer component examines the travel itinerary and records all references to annotations from the itinerary. For each reference to a annotation, the component records the photo and text description. This list of photos and text descriptions is returned to the user together with the travel itinerary. The list of photos and text may be presented in the format of a slideshow using a JavaScript library. While the above invention is described in terms of the JavaScript language the invention could also be implemented in any other language or languages that contain code that is processed and produces the output viewed by a web browser. 
         [0024]      FIG. 6A-6D  illustrate the data required to produce the multimedia presentation in one embodiment of the present invention.  FIG. 4  is a diagram that illustrates the flow of data after the client computer requests for a multimedia presentation. 
         [0025]    In  401 , the reference identification component receives a product description ( FIG. 6B ) from the publisher.  FIG. 6B  shows a product description describing a travel product. The product description takes the form of plain text, but may be marked up with tags such as HyperText Markup Language (HTML) tags or Unicode special characters. The product description may be received via manual entry by the publisher via a web interface or through importing of files using known formats such as Microsoft Word Document, Adobe Portable Document Format, Rich Text Format, HTML, or any other supported formats. In the latter case, an extraction engine is used to extract the product description as text from the imported files. 
         [0026]    In  404 , a list of keywords is retrieved from the annotations database. It is noted that each keyword in the annotations database is associated with an annotation. The annotations are stored within the annotations database and each annotation may take the form of text, images, a HTML page and/or other multimedia content. For each keyword in the list, a string search using the keyword is done of the product description. Such a string search may use plain text matching, or may use matching with wildcards i.e. in the case where regular expressions matching is used. It is envisaged that the keyword may be a regular expressions string. Further, it is also envisaged that the annotations database may be constructed using web scrapping techniques e.g. Flickr, Wiki Media, Google Images and the like. 
         [0027]    If a positive match is made, the string of the product description that matches the keyword is tagged. Such tagging marks up the matching string using a markup language such as Extensible Markup Language (XML) tags. Also, a web interface allows the publisher to manually tag words or phrases that are not automatically tagged. This allows alternate spellings to be tagged within the product description. This component then outputs a product description with references to one or more annotations i.e. an annotated product description ( FIG. 6C ). These references present in the annotated product description are also referred to as “supports”. 
         [0028]    In  406 , the annotated product description is then stored in the product database. 
         [0029]    In  402 , a client running on a computer requests for the multimedia presentation associated with a product. The Multimedia Producer component retrieves the annotated product description from the product database. The list of references (or “supports”) is then extracted from the annotated product description. The Multimedia Producer then queries the annotations database for the associated annotation of each reference. This produces a list of annotations ( FIG. 6D ). This list and the annotated product description is returned to the client. 
         [0030]    At the client side, the list is incorporated into the annotated product description via browser native or non-browser native client-side technologies, for example, JavaScript and Adobe Systems Incorporated&#39;s Flash. This may be used to create an interactive multimedia presentation from the list of annotations. In the case where there are multiple references to the same annotation, the Multimedia Producer may filter out duplicate references, resulting in a more concise presentation. 
         [0031]    In accordance with another embodiment of the invention, when a user requests, through software applications via a computer, phone or other devices, via any operating system and browser, for an order placement from the server computer, the server computer passes the pricing data through the input requirement identification component. To illustrate, a possible example of required inputs for a travel product order is “Number of Adult”, “Number of children who requires a separate bed”, “Number of children who do not require a separate bed.” The server computer then requests these inputs from a user. The user&#39;s input is then passed to the criterion optimizing component. In this embodiment, the criterion used is to minimize the number of rooms allocated. Consequently, the component would suggest to this user via a computer, phone or other devices, via any operating system and browser, a pricing arrangement that minimizes the number of rooms. If this user is not satisfied with the pricing arrangement, he may choose to input a new criterion (e.g. minimize price, allocate N number of rooms, hotel closest to location X or other criterion made available by the publisher), or choose to edit the pricing arrangements himself. After the user is satisfied with the pricing arrangement, he submits the order with the selected pricing arrangement. This order is received by the order management component. 
         [0032]      FIG. 7A-7F  illustrates the data required to produce the required inputs and perform order placement in one embodiment of the present invention.  FIG. 5  is a diagram that illustrates the flow of data from the time where the client initiates order placement till the time where the order is recorded in the database. 
         [0033]    In  504 , the publisher inputs the pricing data ( FIGS. 7A &amp; 7B ) for his products and these data are recorded into the product database. The product pricing data also comprises a list of possible numbers of occupants for one or more type of rooms (e.g. Standard, Suite &amp; the like) for one or more hotels (e.g. Hyatt, Ritz Carlton &amp; the like). 
         [0034]    In  501 , a client running on a computer initiates the order placement process for a product. The product may for example be a tour involving an overnight stay. When this happens, an input requirement identification component running on the client retrieves the pricing data from the product database. Additionally, it retrieves the requirement identification rules ( FIG. 7C ) from the requirements database.  FIG. 7C  displays an example of a requirement identification rule where the requirements are found by looking up a table that lists the corresponding requirements (i.e. the lower row) for each price tier (i.e. the upper row). 
         [0035]    In  506 , the client is prompted for the inputs as shown in  FIG. 7D . These inputs are parameters used in the ordering of the product, e.g. parameters indicating sleeping preferences such as the number of adults, children with bed and children without bed. A user may input these parameters into the client. Alternatively, these parameters may be stored with the client in the from of a persistent browser-based sessions file and be retrieved for use. 
         [0036]    In  502 , the parameters are processed by a Criterion Optimization component. The Criterion Optimization component may be client-side and run within the client. Alternatively, it may be server-side. The Criterion Optimization component minimizes the number of rooms based on the parameters provided by the client. The Criterion Optimization component may use the algorithm shown in  FIG. 7G  to compute the number of rooms required. The optimum pricing arrangement is derived using a lookup table stored within the product database. The Criterion Optimization component retrieves the lookup table from the product database. The input parameters to the lookup table are the number of adults, number of children with bed, and the number of children without bed i.e. the same parameters provided by the client or the user in Step  506 . Using these parameters, the lookup table returns the associated pricing arrangement of a sleeping arrangement which requires a minimal number of rooms. This is done using information contained within the product pricing data entered by the publisher into the product database. 
         [0037]    In  508 , the pricing arrangement is displayed at the client. If a user of the client accepts the arrangement, the order is recorded in the order database. 
         [0038]    In an example, Mr A has a family of two adults and a child who sleeps with the adults. In Step  506 , Mr A inputs 02 for “Number of Adult” and 01 for “Number of children who do not require a separate bed”. Using the lookup table of  FIG. 7B , in Step  502 , the Criterion Optimization component returns a pricing that is a summation of “Twin”, “Twin” and “Child without Bed” pricing. This means that the child would be living in the same room as their parents without an extra bed. 
         [0039]    In a further example, Mr A in Step  506  inputs 02 for “Number of Adult” and 01 for “Number of children who requires a separate bed”. Using the lookup table of  FIG. 7B , in Step  502 , the returned pricing may be a summation of “Twin”, “Twin” and “Child with Bed” pricing. This means that the child would be living in the same room as their parents with an additional bed. 
         [0040]    In a further embodiment, the Criterion Optimization Component may proceed further by performing price comparisons before returning the pricing arrangement for display. Using the service tier indicated (e.g. where the user prefers a service tier of five stars), the Criterion Optimization Component obtains the pricing arrangements for all hotels recorded in a travel product that are of the indicated service tier. The Criterion Optimization Component then performs a comparison amongst the pricing arrangements to choose the hotel which offers lowest pricing arrangement. 
         [0041]    In a yet further embodiment, the travel product may be a travel package and may thus comprise multiple product elements such as air fares, hotel stays, land tours. The Criterion Optimization Component accordingly obtains a lowest pricing arrangement for each product element. The Criterion Optimization component then returns the combination of product elements which yield the lowest overall pricing arrangement. 
         [0042]    It is noted that the invention is not limited to the example embodiments described herein. Such embodiments are presented herein for illustrative purposes. Also, whilst example embodiments of the invention have been described in detail, many variations are possible within the scope of the invention as will be clear to a skilled reader.