WO2014161597A1 - System comprising a product offering server and a search engine server and method therefor - Google Patents

System comprising a product offering server and a search engine server and method therefor Download PDF

Info

Publication number
WO2014161597A1
WO2014161597A1 PCT/EP2013/057210 EP2013057210W WO2014161597A1 WO 2014161597 A1 WO2014161597 A1 WO 2014161597A1 EP 2013057210 W EP2013057210 W EP 2013057210W WO 2014161597 A1 WO2014161597 A1 WO 2014161597A1
Authority
WO
WIPO (PCT)
Prior art keywords
product information
product
address
page
database
Prior art date
Application number
PCT/EP2013/057210
Other languages
French (fr)
Inventor
Matthias Bolz
Original Assignee
Jenjo Patent Holding Ug
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jenjo Patent Holding Ug filed Critical Jenjo Patent Holding Ug
Priority to PCT/EP2013/057210 priority Critical patent/WO2014161597A1/en
Publication of WO2014161597A1 publication Critical patent/WO2014161597A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]

Definitions

  • the present invention relates to a system comprising: a product offering server connected to a network and arranged to provide an on-line product offering to user computers connected to the network, the product offering server comprising a source database comprising a number of products with associated product information; and a search engine server connected to the network comprising an
  • the present invention also relates to a product offering server arranged for use in such a system.
  • the present invention relates to a search engine server arranged for use in such a system.
  • the present invention further relates to a method for updating a database comprising a number of products with associated product information.
  • the present invention also relates to a method for sending product information to an aggregated database comprising a number of products with associated product information .
  • comparison websites for comparing different products, or comparing the offering of a product between different vendors.
  • search engines for products. A user can enter a product he is interested in and the search engines provides a list of offerings by different vendors,
  • the majority of these search engines uses one of two methods to retrieve product information from the on-line shops and update this information when needed.
  • the on-line vendors provide a data feed.
  • the data feed is checked by the search engines according to some predetermined schedule.
  • Drawback of this method is that some time elapses between the actual updating of information on the vendor site and this update being reflected in the search engines.
  • the search engines read the data feeds only periodically, updates are being processed in a batch wise manner, for example, all updates of some specific vendor during the last 12 hours. This leads to bursty loading of the systems involved.
  • the vendor systems are periodically polled to sent all updated information, leading to a specific period during which updates are being sent using processing power and bandwidth.
  • the systems of the search engines are likewise loaded in a burstwise manner: during a specific period, a lot of information needs to be received.
  • the information is received, the information is being processed during a specific period in order to update the database of the search engines.
  • the on-line shop provides an API that allows the search engines to retrieve updated information and update the search engine database.
  • This method results in a high load of the API server and a big amount of data traffic between vendor systems and search engine systems.
  • all on-line shops offering an API use their own proprietary format and search engines have to interface with all the differing formats leading to complexity of the interface part of the search engine.
  • the object of the present invention is to provide a system for updating the databases of these search engines wherein less processing power is required to process the updates .
  • the present invention achieves this object by providing a system comprising: a product offering server connected to a network and arranged to provide an on-line product offering to user computers connected to the network, the product offering server comprising a source database comprising a number of products with associated product information; a search engine server connected to the network comprising an aggregated database with a number of products with associated product information; wherein the product offering server comprises: page request reception means for receiving a request for a page containing product
  • product information encoding means connected to the page request reception means for encoding from the source
  • search engine server comprises: request reception means for
  • a request from a user computer comprising at least part of an address, this part encoding product information of a product
  • decoding means connected to the request reception means for decoding the at least part of an address into the product information
  • database updating means connected to the decoding means for updating the database with the decoded product information.
  • the product offering server is owned by a vendor of products or a provider of services.
  • the word product not only refers to products, but also services. Furthermore, products may be physical products, but may as well be virtual products.
  • the search engine server is a server typically operated by a party being different from the vendor. The search engine server allows users to compare products among several vendors, for example based on price, shipment time, or user ratings of vendors.
  • the updating of information in the search engine server is triggered by the user.
  • the user requests product information from the product offering server.
  • information is obtained from the source database in the product offering server. In addition to this information being returned to the user and displayed on the user
  • the product information is also encoded into an address, which address is also returned to the user.
  • the user computer automatically visits this address, which points to the search engine server. Because the user
  • the information provided by the product offering server to the user computer comprises product information in two forms: 1) Product information formatted such, that it can be easily presented to the user. This is because this is what the user was actually trying to do, getting product information, for example to decide whether he wants to buy the product. 2) Product information that is being forwarded by the user computer to the search engine server in order to update the information in the database of the search engine server.
  • database refers to the abstract meaning of the word, namely a structured data storage.
  • the database might be implemented as a relational database, an object-oriented database, a (structured) flat file, an XML-file, or a file system comprising files.
  • the system according to the invention requires less processing by the system, because updated information is only processed when a user expresses interest in a product by requesting product information from his computer. Furthermore, the information is no longer processed in a batchwise manner, instead the load is spread in time due to the distributed nature in which product requests are
  • encoding comprises encrypting
  • decoding comprises decrypting.
  • encrypting In order to prevent tampering with the information in the aggregated server, for example by a third party requesting a self generated address from the search engine server, it is preferred to encrypt the product information when encoding the product information into the address.
  • the product information is provided in the address in a more or less human-readable form, but a digital signature is also added to the address in order to determine whether an authorised party provided the product information.
  • the search engine server is arranged to verify the received product information through direct communication with the product offering server.
  • the search engine server receives the request and decodes the product information for a product, it downloads this product information at least partially.
  • the downloaded product information takes the place of the untrusted product information obtained by decoding the address .
  • the address is a uniform resource locater (URL) .
  • URL uniform resource locater
  • the present invention provides a system wherein the at least part of an address comprises at least one of the path, the query, or the fragment of the URL.
  • the present invention further provides a product offering server arranged for use in the above described systems .
  • the present invention provides a search engine server arranged for use in the above described systems.
  • a method for updating an aggregated database comprising a number of products with associated product information
  • the method comprising the steps of: receiving a request comprising at least part of an address, the part of the address encoding product information of a product; decoding this part of the address into the product information; updating the aggregated database with the decoded product information.
  • This method is being executed by the search engine server.
  • the search engine server receives from the user computer a request for an address. The address
  • the aggregated database with products with associated product information is updated with the decoded product information. This updating comprises altering existing information in the aggregated database if the aggregated database already comprises the specific product for which the product information was received. If the aggregated database does not yet comprise the specific product, updating comprises adding the product with its associated product information to the ggregated database.
  • the product offering server may additionally add a command during the encoding of the product information into the address to instruct the search engine server to add or remove a product with associated product information to or from the aggregated database.
  • the product offering server will always encode the product information in at least part of an address and embed a link to this address in a page which is being sent to a user computer.
  • This user computer has no knowledge whether information has been updated and therefore always retrieves the object referred to in the link. Therefore, every time a user retrieves information regarding a product from the product offering server, product information associated with this product is sent through the user computer to the search engine server, irrespective whether the product information has been altered in the product offering server.
  • the phrase "method for updating a database” not only comprises actually altering information in the aggregated database in response to the information changing in the source database, but also sending information to the aggregated database in order to determine whether the aggregated database requires altering of information.
  • a method for sending product information to an aggregated database comprising a number of products with associated product information comprising: receiving a request for providing product information on at least one selected product; querying a source database for the
  • associated product information into at least part of an address; generating a page comprising at least a second part of the associated product information and provided with markup code for rendering such that the second part of the associated product information can be easily read by a human after rendering, and including in the page a link with an address, the address comprising the encoded first part of the associated product information; and returning the generated page in response to the received request.
  • This method is executed in the product offering server.
  • a user computer requests a page with information showing product information for one or more products.
  • the product offering server receives the request and queries its database for the products. For each product in the request, the product offering server retrieves product information from the database. At least a first part of the product information of the products is compiled into a page. This part of the product information is intended for viewing by the user.
  • a second part of the product information is encoded into at least a part of an address, the address pointing to the search engine server. The address is embedded in the page in such a way that the user computer will request the address from the search engine server, that way forwarding the product information to the search engine server.
  • the first part of the product information and the second part of the product information are identical in some specific embodiment according to the invention, however, in a specific embodiment the first and second part of the product information are only partly overlapping or even not overlapping at all.
  • a method for updating an aggregated database comprising a number of products with associated product information, the associated product information comprising a period of validity of the information, the method comprising the steps of: receiving a request for a product; querying an aggregated database for the requested product; retrieving from the aggregated database, products with associated product information matching the requested product;
  • associated product information is still valid based on the period of validity; if the associated product information is no longer valid: sending a request for updated product information to a product offering server, receiving the updated product information; and updating the associated product information in the aggregated database with the received updated product information; and returning the retrieved products with associated product information in response to the received request, wherein the associated product information when applicable is the received updated product information.
  • the user contacts the search engine server to obtain information regarding a product
  • his computer sends a request for the product to the search engine server.
  • the search engine server receives the
  • the search engine server will check the product information for all matching records and will inspect a field containing a period of validity. This field is comprised in the product information and is used by the product offering server to inform the search engine server how long the product
  • search engine server will contact the product offering server and retrieve from the source database updated product
  • the search engine server updates the aggregated database with the received product information. Finally, after all necessary product information has been updated, the matching products found in the aggregated database are returned with the associated product information to the user computer.
  • the present invention further provides a computer program carrying out a method as described above, when executed on a computing device.
  • the present invention also provides a computer readable media comprising such a computer program.
  • FIG 1 shows an embodiment of the system
  • Figure 2 shows a method according to the present invention
  • FIG. 3 shows an embodiment of the system
  • Figure 4 shows a method according to the present invention .
  • the system 10 (figure 1) comprises a user computer 22.
  • the user computer 22 is connected through a network to a server 30 of an on-line shop.
  • the server computer 30 runs web server software to make the on-line shop available to the user computer 22.
  • the server computer 30 furthermore
  • the database 32 comprises a database 32.
  • the database may actually be located on the same server computer 30, but may also run on a separate server computer, for example to spread load among a web server computer and a database server computer.
  • the database 32 comprises all the products being offered in the on-line shop as well as further product information such as a product description, manufacturer name, model number, price, shipping information, etc.
  • his browser 22 sends 204 a request for page with product information (see also figure 2) .
  • the server 30 of the on-line shop determines for what product the user is requesting information.
  • the database 32 is queried for the product and product information associated with the product is retrieved from the database 32.
  • Part of the product information namely the part that is also stored in the search engine server 40, is encoded into part of a URL 52.
  • This URL 52 comprises the address of the search engine server 40.
  • the product information is encoded 206 into the query part of the URL 52.
  • the encoding not only comprises, "gluing" all the information together, but also adding a digital signature.
  • a page 50 is generated 208 with the product information that is to be shown to the user by the user browser.
  • This page 50 is formatted in this embodiment in HTML, but might also be formatted in another language.
  • the URL is also included in the page 50 by means of a link to a resource that is to be loaded by the user browser 22.
  • the URL 52 is used in an image tag, in order to trigger the user browser 22 to load an image from the search engine browser 40 such that the URL 52 of the image carries the most up-to-date product
  • the page 50 is being sent 210 to the user browser 22.
  • the user browser 22 parses 212 the page in order to render it.
  • the user browser 22 resolves the URL 52 in the page 50 and requests 214 this URL 52 from the search engine server 40, as this URL 52 points to the search engine server 40.
  • the search engine server 40 extracts the query part from the URL 52 and decodes it to extract 216 the product information.
  • the digital signature is checked to verify that the URL 52 was encoded by a known entity, namely the server 30 of the on-line shop.
  • the product information obtained from the decoded URL 52 is compared to the content of the database 42 of the search engine server 40. If at least part of the product information has changed, the product information in the database 42 is updated 218 with the product information retrieved from the decoded URL 52. At this point the database 42 has been updated with product information from the database 32.
  • some image object is returned 220. Some internet browsers might not render (part of) requested objects have been received or have timed out. By promptly returning some object, for example a 1 pixel image, the user browser 22 can continue rendering.
  • the user browser 22 renders 222 the whole page, and the user is presented with the product information of the product he was interested in.
  • Database 42 is updated in the following way if a user consults the search engine server 40 for the product (figure 3 and 4) .
  • the user browser 24 requests 404 a product search from the search engine server 40.
  • the search engine server 40 queries 406 its database 42 for the product.
  • the product information associated with the matching products is retrieved 408 from the database 42. For each matching product a period of validity stored in the product
  • the search engine server 40 takes the role of the user browser 22.
  • the server 30 of the on-line shop returns the page 50 with the product information and the link to the URL 52. Instead of rendering this page, and requesting the URL 52, the search engine server 40 decodes the URL 52 in page 50 to obtain the product information.
  • the search engine server 40 updates if
  • the product information in the database 42 Based on the updated product information, a page with the matching products and associated product information is generated and returned to the user browser 24.
  • the user browser 24 renders the page and the product information is presented to the user .

Abstract

The present invention provides a method for updating product information in a product search engine by encoding product information in an address pointing to the search engine. Users visiting an on-line shop are provided with a page with product information, the page comprising a link to the address encoding the product information. By rendering the provided page, the linked address is resolved and the search engine is provided with the product information and updates its database accordingly.

Description

System comprising a product offering server and a search engine server and method therefor
The present invention relates to a system comprising: a product offering server connected to a network and arranged to provide an on-line product offering to user computers connected to the network, the product offering server comprising a source database comprising a number of products with associated product information; and a search engine server connected to the network comprising an
aggregated database with a number of products with
associated product information.
The present invention also relates to a product offering server arranged for use in such a system.
Furthermore, the present invention relates to a search engine server arranged for use in such a system.
The present invention further relates to a method for updating a database comprising a number of products with associated product information.
The present invention also relates to a method for sending product information to an aggregated database comprising a number of products with associated product information .
When deciding on purchases consumers are nowadays heavily using the Internet to inform themselves about products they consider for buying, or even use the Internet to directly make the purchase. In order to help consumers to get the information needed during the process of purchasing, numerous websites have been developed that provide specific services, such as user forums, expert reviews, and
comparison websites for comparing different products, or comparing the offering of a product between different vendors. For the latter several well known sites have emerged that act as search engines for products. A user can enter a product he is interested in and the search engines provides a list of offerings by different vendors,
specifying price of the offered product, shipment costs, expected shipment term, and sometimes even product reviews or ratings of the vendors.
The majority of these search engines uses one of two methods to retrieve product information from the on-line shops and update this information when needed.
In the first method the on-line vendors provide a data feed. The data feed is checked by the search engines according to some predetermined schedule. Drawback of this method is that some time elapses between the actual updating of information on the vendor site and this update being reflected in the search engines. Furthermore, because the search engines read the data feeds only periodically, updates are being processed in a batch wise manner, for example, all updates of some specific vendor during the last 12 hours. This leads to bursty loading of the systems involved. The vendor systems are periodically polled to sent all updated information, leading to a specific period during which updates are being sent using processing power and bandwidth. The systems of the search engines are likewise loaded in a burstwise manner: during a specific period, a lot of information needs to be received. After the
information is received, the information is being processed during a specific period in order to update the database of the search engines.
In a second method the on-line shop provides an API that allows the search engines to retrieve updated information and update the search engine database. This method however, results in a high load of the API server and a big amount of data traffic between vendor systems and search engine systems. Furthermore, all on-line shops offering an API use their own proprietary format and search engines have to interface with all the differing formats leading to complexity of the interface part of the search engine.
The object of the present invention is to provide a system for updating the databases of these search engines wherein less processing power is required to process the updates .
The present invention achieves this object by providing a system comprising: a product offering server connected to a network and arranged to provide an on-line product offering to user computers connected to the network, the product offering server comprising a source database comprising a number of products with associated product information; a search engine server connected to the network comprising an aggregated database with a number of products with associated product information; wherein the product offering server comprises: page request reception means for receiving a request for a page containing product
information for at least one product from a user computer; product information encoding means connected to the page request reception means for encoding from the source
database product information of the at least one product in at least a part of an address; page generation means
connected to the product information encoding means for generating a page comprising product information from the source database and a link to the generated address such that the user computer will load the generated address upon reception of the page; page sending means for sending the generated page to the user computer; and wherein the search engine server comprises: request reception means for
receiving a request from a user computer, the request comprising at least part of an address, this part encoding product information of a product; decoding means connected to the request reception means for decoding the at least part of an address into the product information; database updating means connected to the decoding means for updating the database with the decoded product information.
The product offering server is owned by a vendor of products or a provider of services. (In this document the word product not only refers to products, but also services. Furthermore, products may be physical products, but may as well be virtual products.) Through the product offering server, the vendor offers his products. The search engine server is a server typically operated by a party being different from the vendor. The search engine server allows users to compare products among several vendors, for example based on price, shipment time, or user ratings of vendors.
The updating of information in the search engine server is triggered by the user. The user requests product information from the product offering server. This
information is obtained from the source database in the product offering server. In addition to this information being returned to the user and displayed on the user
computer, the product information is also encoded into an address, which address is also returned to the user. The user computer automatically visits this address, which points to the search engine server. Because the user
computer automatically requests the address returned to it, the product information encoded in it is provided to the search engine server. The search engine server decodes the address, thereby obtaining the product information. Next, the aggregated database in the search engine server is updated with the updated product information. The information provided by the product offering server to the user computer comprises product information in two forms: 1) Product information formatted such, that it can be easily presented to the user. This is because this is what the user was actually trying to do, getting product information, for example to decide whether he wants to buy the product. 2) Product information that is being forwarded by the user computer to the search engine server in order to update the information in the database of the search engine server.
The word "database" in this document refers to the abstract meaning of the word, namely a structured data storage. The database might be implemented as a relational database, an object-oriented database, a (structured) flat file, an XML-file, or a file system comprising files.
The system according to the invention requires less processing by the system, because updated information is only processed when a user expresses interest in a product by requesting product information from his computer. Furthermore, the information is no longer processed in a batchwise manner, instead the load is spread in time due to the distributed nature in which product requests are
generated by a large customer base. Additionally, the updates are performed in real-time and there is no need for proprietary APIs or data feeds.
In a preferred embodiment, encoding comprises encrypting, and decoding comprises decrypting. In order to prevent tampering with the information in the aggregated server, for example by a third party requesting a self generated address from the search engine server, it is preferred to encrypt the product information when encoding the product information into the address. Alternatively, the product information is provided in the address in a more or less human-readable form, but a digital signature is also added to the address in order to determine whether an authorised party provided the product information.
Again alternatively, the search engine server is arranged to verify the received product information through direct communication with the product offering server. In one embodiment, after the search engine server receives the request and decodes the product information for a product, it downloads this product information at least partially. The downloaded product information takes the place of the untrusted product information obtained by decoding the address .
In a further preferred embodiment, the address is a uniform resource locater (URL) . This allows the usage of commonly available web technology and web tools, such as Internet browsers.
In again a further embodiment, the present invention provides a system wherein the at least part of an address comprises at least one of the path, the query, or the fragment of the URL.
The present invention further provides a product offering server arranged for use in the above described systems .
In a further embodiment, the present invention provides a search engine server arranged for use in the above described systems.
In another aspect of the invention a method for updating an aggregated database comprising a number of products with associated product information is provided, the method comprising the steps of: receiving a request comprising at least part of an address, the part of the address encoding product information of a product; decoding this part of the address into the product information; updating the aggregated database with the decoded product information. This method is being executed by the search engine server. The search engine server receives from the user computer a request for an address. The address
comprises a part that encodes product information of a product that was being requested by the user computer from the product offering server. The product information was encoded in the address by the product offering server and was returned to the user computer. The user computer then requests this address from the search engine server. The search engine server decodes the address and obtains the product information. The aggregated database with products with associated product information is updated with the decoded product information. This updating comprises altering existing information in the aggregated database if the aggregated database already comprises the specific product for which the product information was received. If the aggregated database does not yet comprise the specific product, updating comprises adding the product with its associated product information to the ggregated database.
Alternatively, the product offering server may additionally add a command during the encoding of the product information into the address to instruct the search engine server to add or remove a product with associated product information to or from the aggregated database.
It should be noted that in this method the product offering server will always encode the product information in at least part of an address and embed a link to this address in a page which is being sent to a user computer. This user computer has no knowledge whether information has been updated and therefore always retrieves the object referred to in the link. Therefore, every time a user retrieves information regarding a product from the product offering server, product information associated with this product is sent through the user computer to the search engine server, irrespective whether the product information has been altered in the product offering server. The phrase "method for updating a database" not only comprises actually altering information in the aggregated database in response to the information changing in the source database, but also sending information to the aggregated database in order to determine whether the aggregated database requires altering of information.
In another aspect of the invention, a method is provided for sending product information to an aggregated database comprising a number of products with associated product information, the method comprising: receiving a request for providing product information on at least one selected product; querying a source database for the
requested product and retrieving the associated product information; encoding at least a first part of the
associated product information into at least part of an address; generating a page comprising at least a second part of the associated product information and provided with markup code for rendering such that the second part of the associated product information can be easily read by a human after rendering, and including in the page a link with an address, the address comprising the encoded first part of the associated product information; and returning the generated page in response to the received request.
This method is executed in the product offering server. A user computer requests a page with information showing product information for one or more products. The product offering server receives the request and queries its database for the products. For each product in the request, the product offering server retrieves product information from the database. At least a first part of the product information of the products is compiled into a page. This part of the product information is intended for viewing by the user. A second part of the product information is encoded into at least a part of an address, the address pointing to the search engine server. The address is embedded in the page in such a way that the user computer will request the address from the search engine server, that way forwarding the product information to the search engine server. The first part of the product information and the second part of the product information are identical in some specific embodiment according to the invention, however, in a specific embodiment the first and second part of the product information are only partly overlapping or even not overlapping at all. Once the page is compiled, with the first part of the product information being included in order to be rendered and displayed on the user computer and the second part of the product information being encoded into an address in order to update the search engine server with the most up-to-date product information, the page is returned to the user computer. On the user computer the page is rendered and displayed informing the user of the product information included in the first part of the product information. Furthermore, the user computer retrieves the included address and therewith forwards the second part of the product information to the search engine server.
In a further aspect of the present invention a method is provided for updating an aggregated database comprising a number of products with associated product information, the associated product information comprising a period of validity of the information, the method comprising the steps of: receiving a request for a product; querying an aggregated database for the requested product; retrieving from the aggregated database, products with associated product information matching the requested product;
determining for each retrieved product whether the
associated product information is still valid based on the period of validity; if the associated product information is no longer valid: sending a request for updated product information to a product offering server, receiving the updated product information; and updating the associated product information in the aggregated database with the received updated product information; and returning the retrieved products with associated product information in response to the received request, wherein the associated product information when applicable is the received updated product information.
In the scenario where the user contacts the search engine server to obtain information regarding a product, his computer sends a request for the product to the search engine server. The search engine server receives the
request. It will first search for the product in its own aggregated database. When the product is found the search engine server will check the product information for all matching records and will inspect a field containing a period of validity. This field is comprised in the product information and is used by the product offering server to inform the search engine server how long the product
information may be considered valid or up-to-date. For records with an expired period of validity, the search engine server will contact the product offering server and retrieve from the source database updated product
information for the products concerned. Next, the search engine server updates the aggregated database with the received product information. Finally, after all necessary product information has been updated, the matching products found in the aggregated database are returned with the associated product information to the user computer.
The present invention further provides a computer program carrying out a method as described above, when executed on a computing device.
The present invention also provides a computer readable media comprising such a computer program.
Further advantages and embodiments of the present invention will be discussed below with reference to the annexed drawings, wherein:
Figure 1 shows an embodiment of the system
according to the present invention,
Figure 2 shows a method according to the present invention,
Figure 3 shows an embodiment of the system
according to the present invention, and
Figure 4 shows a method according to the present invention .
The system 10 (figure 1) comprises a user computer 22. The user computer 22 is connected through a network to a server 30 of an on-line shop. The server computer 30 runs web server software to make the on-line shop available to the user computer 22. The server computer 30 further
comprises a database 32. The database may actually be located on the same server computer 30, but may also run on a separate server computer, for example to spread load among a web server computer and a database server computer. The database 32 comprises all the products being offered in the on-line shop as well as further product information such as a product description, manufacturer name, model number, price, shipping information, etc. When a user wants to view a product specification of a product sold through the server 30 of the on-line shop, his browser 22 sends 204 a request for page with product information (see also figure 2) . The server 30 of the on-line shop determines for what product the user is requesting information. The database 32 is queried for the product and product information associated with the product is retrieved from the database 32. Part of the product information, namely the part that is also stored in the search engine server 40, is encoded into part of a URL 52. This URL 52 comprises the address of the search engine server 40. The product information is encoded 206 into the query part of the URL 52. The encoding not only comprises, "gluing" all the information together, but also adding a digital signature. Furthermore, a page 50 is generated 208 with the product information that is to be shown to the user by the user browser. This page 50 is formatted in this embodiment in HTML, but might also be formatted in another language. The URL is also included in the page 50 by means of a link to a resource that is to be loaded by the user browser 22. Here the URL 52 is used in an image tag, in order to trigger the user browser 22 to load an image from the search engine browser 40 such that the URL 52 of the image carries the most up-to-date product
information to the search engine server 40.
The page 50 is being sent 210 to the user browser 22. The user browser 22 parses 212 the page in order to render it. During parsing, the user browser 22 resolves the URL 52 in the page 50 and requests 214 this URL 52 from the search engine server 40, as this URL 52 points to the search engine server 40.
The search engine server 40 extracts the query part from the URL 52 and decodes it to extract 216 the product information. The digital signature is checked to verify that the URL 52 was encoded by a known entity, namely the server 30 of the on-line shop. The product information obtained from the decoded URL 52 is compared to the content of the database 42 of the search engine server 40. If at least part of the product information has changed, the product information in the database 42 is updated 218 with the product information retrieved from the decoded URL 52. At this point the database 42 has been updated with product information from the database 32. In order to prevent the user browser 22 from timing out on the request for the URL 52, some image object is returned 220. Some internet browsers might not render (part of) requested objects have been received or have timed out. By promptly returning some object, for example a 1 pixel image, the user browser 22 can continue rendering.
Finally, the user browser 22 renders 222 the whole page, and the user is presented with the product information of the product he was interested in.
When a subsequent user searches for the same product through the search engine server 40, he will be presented with updated product information with regard to the product he is interested in.
The method described with reference to figures 1 and 2 only updates the database 42 in the search engine server 40, if a user visits the server 30 of the on-line shop. Database 42 is updated in the following way if a user consults the search engine server 40 for the product (figure 3 and 4) . The user browser 24 requests 404 a product search from the search engine server 40. The search engine server 40 queries 406 its database 42 for the product. The product information associated with the matching products is retrieved 408 from the database 42. For each matching product a period of validity stored in the product
information is checked 410 to verify whether the product information for the matching product is still valid. If the product information is no longer valid 412, the search engine server requests 414 the product information from the server 30 of the on-line shop. In one embodiment, the updated product information is being requested from the server 30 of the on-line shop through the same mechanism as shown in figures 1 and 2. In this particular case, the search engine server 40 takes the role of the user browser 22. The server 30 of the on-line shop returns the page 50 with the product information and the link to the URL 52. Instead of rendering this page, and requesting the URL 52, the search engine server 40 decodes the URL 52 in page 50 to obtain the product information. With this product
information, the search engine server 40 updates if
necessary, the product information in the database 42. Based on the updated product information, a page with the matching products and associated product information is generated and returned to the user browser 24. The user browser 24 renders the page and the product information is presented to the user .
The embodiments shown in the accompanying figures and described above are only exemplary embodiments and only serve to illustrate the invention. They should not be regarded as limiting the invention. The skilled person will understand that many variations to the embodiments shown and described are possible within the scope of the present invention. The protection sought is only limited by the following claims.

Claims

1. System comprising:
a product offering server connected to a network and arranged to provide an on-line product offering to user computers connected to the network, the product offering server comprising a source database comprising a number of products with associated product information;
a search engine server connected to the network comprising an aggregated database with a number of products with associated product information;
wherein the product offering server comprises: page request reception means for receiving a request for a page containing product information for at least one product from a user computer;
product information encoding means connected to the page request reception means for encoding from the source database product information of the at least one product in at least a part of an address;
page generation means connected to the product information encoding means for generating a page comprising product information from the source database and a link to the generated address such that the user computer will load the generated address upon reception of the page;
page sending means for sending the generated page to the user computer; and
wherein the search engine server comprises:
request reception means for receiving a request from a user computer, the request comprising at least part of an address, this part encoding product information of a product ; decoding means connected to the request reception means for decoding the at least part of an address into the product information;
database updating means connected to the decoding means for updating the database with the decoded product information .
2. System according to claim 1 wherein the address is a uniform resource locater.
3. System according to claim 2 wherein the at least part of an address comprises at least one of the path, the query, or the fragment of the URL.
4. A product offering server arranged for use in the system according to claim 1, 2, or 3.
5. A search engine server arranged for use in the system according to claim 1, 2, or 3.
6. Method for updating an aggregated database comprising a number of products with associated product information, the method comprising the steps of:
receiving a request comprising at least part of an address, the part of the address encoding product
information of a product;
decoding this part of the address into the product information;
updating the aggregated database with the decoded product information.
7. Method for sending product information to an aggregated database comprising a number of products with associated product information, the method comprising:
receiving a request for providing product information on at least one selected product;
querying a source database for the requested product and retrieving the associated product information;
encoding at least a first part of the associated product information into at least part of an address;
generating a page comprising at least a second part of the associated product information and provided with markup code for rendering such that the second part of the associated product information can be easily read by a human after rendering, and including in the page a link with an address, the address comprising the encoded first part of the associated product information; and
returning the generated page in response to the received request.
8. Method for updating an aggregated database comprising a number of products with associated product information, the associated product information comprising a period of validity of the information, the method comprising the steps of:
receiving a request for a product;
querying an aggregated database for the requested product ;
retrieving from the aggregated database, products with associated product information matching the requested product ;
determining for each retrieved product whether the associated product information is still valid based on the period of validity; if the associated product information is no longer valid :
- sending a request for updated product information to a product offering server,
- receiving the updated product information; and
- updating the associated product information in the aggregated database with the received updated product information; and
returning the retrieved products with associated product information in response to the received request, wherein the associated product information when applicable is the received updated product information.
9. Computer program carrying out a method according to claim 7, 8, or 9, when executed on a computing device .
10. Computer readable media comprising a computer program according to claim 9.
PCT/EP2013/057210 2013-04-05 2013-04-05 System comprising a product offering server and a search engine server and method therefor WO2014161597A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2013/057210 WO2014161597A1 (en) 2013-04-05 2013-04-05 System comprising a product offering server and a search engine server and method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2013/057210 WO2014161597A1 (en) 2013-04-05 2013-04-05 System comprising a product offering server and a search engine server and method therefor

Publications (1)

Publication Number Publication Date
WO2014161597A1 true WO2014161597A1 (en) 2014-10-09

Family

ID=48050026

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2013/057210 WO2014161597A1 (en) 2013-04-05 2013-04-05 System comprising a product offering server and a search engine server and method therefor

Country Status (1)

Country Link
WO (1) WO2014161597A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030037131A1 (en) * 2001-08-17 2003-02-20 International Business Machines Corporation User information coordination across multiple domains

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030037131A1 (en) * 2001-08-17 2003-02-20 International Business Machines Corporation User information coordination across multiple domains

Similar Documents

Publication Publication Date Title
US8688534B2 (en) System and method for gathering ecommerce data
JP6518700B2 (en) System and method for routing data and connecting users through user interaction with content data
US7620657B2 (en) Method and system for registering and retrieving production information
US20060113383A1 (en) System and method for providing optimized shopping list
US20060287920A1 (en) Method and system for contextual advertisement delivery
US10120849B2 (en) Document generation based on referral
US9727607B2 (en) Systems and methods for representing search query rewrites
US9430792B2 (en) Using cross-domain communication to serve cloud-based product catalog pages from a seller's domain
US8579187B2 (en) System and method to identify machine-readable codes
US10791038B2 (en) Online cloud-based service processing system, online evaluation method and computer program product thereof
US20230394042A1 (en) Asynchronous Predictive Caching Of Content Listed In Search Results
US20130282510A1 (en) Splitting of User-Lists
WO2016122813A1 (en) Method and apparatus for content distribution in online marketplace applications
KR101703919B1 (en) Method for setting a landing page of keyword advertisement, method for providing keyword advertisement, and computer program for executing one of the methods
US20130346298A1 (en) Offline-sales attribution systems and methods
US11172015B1 (en) Methods and systems for evergreen link generation and processing
NL2007547C2 (en) System comprising a product offering server and a search engine server and method therefor.
CN106716401A (en) Data interaction processing method, device and system
WO2014161597A1 (en) System comprising a product offering server and a search engine server and method therefor
JP5996154B1 (en) Management device, management method, non-transitory recording medium, and program
JP4895619B2 (en) Product information provision system
JP4895618B2 (en) Product information provision system
JP4895620B2 (en) Product information provision system
US20150134498A1 (en) Methods and systems for fulfilling inventory gaps
CN106796694A (en) A kind of data interactive processing method, device and system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13714646

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13714646

Country of ref document: EP

Kind code of ref document: A1