# US 6,725,257 B1 · Computationally efficient process and apparatus for configuring a product over a computer network

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 6,725,257 B1
- Document ID: US6725257B1
- Status: Granted
- Kind: B1
- Application number: 09/452,726
- Filed: 1999-11-30
- Granted: 2004-04-20
- Earliest claimed: 1999-11-30
- Assignees: Chrome Data Corporation
- Inventors: Leslie Dean Cansler; Stephen A. Feiner
- Web page: https://patentgrep.com/patent/US6725257B1

## CPC

- G06Q 10/087: Inventory or stock management, e.g. order filling, procurement or balancing against orders
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The present invention provides a process for configuring a product using a server and a client connected by a computer network, wherein the product has multiple possible configurations, and wherein each configuration is defined by a set of standard attributes and a set of optional attributes. The process comprises receiving from the client a request for a base configuration comprising the set of standard attributes, transmitting to the client the standard attribute set for the base configuration, and transmitting to the client a plurality of Web pages containing an option data set including all possible optional attributes and a set of commands, the set of commands being executed on the client and allowing a user to select the set of optional attributes using the client. The present invention also provides an apparatus for configuring a product using a computer network, wherein the product has multiple possible configurations, and wherein each configuration defined by a set of standard attributes and a set of optional attributes. The apparatus comprises a server connected to the network, wherein the server comprises a processor, a memory, and a storage device, and wherein the processor and memory are operative with a program stored on the storage device to receive from a client a request for a base configuration comprising the standard set of attributes, transmit to the client the standard attribute set for the base configuration, and transmit to the client computer a plurality of Web pages containing an option data set including all possible optional attributes and a set of commands, wherein the set of commands is executed on the client and allows a user to select the set of optional attributes.

## Claims

### Claim 1

A process for configuring a product using a server and a client connected by a network, wherein the product has multiple possible configurations defined by a set of standard attributes and a set of optional attributes, the process comprising:
receiving from the client a request for a base configuration comprising the set of standard attributes;
transmitting to the client the set of standard attributes for the base configuration in response to the request; and
transmitting to the client, also in response to the request, a plurality of Web pages containing an option data set including only all possible optional attributes corresponding to the base configuration and a set of commands that, when executed on the client allow a user to select elements from the set of optional attributes to configure the product using the client without further interaction with the server to configure the optional attributes.

### Claim 2 (depends on 1)

The process of claim 1 further comprising transmitting a complete product definition including the set of standard attributes and any selected elements from the set of optional attributes from the client to the server.

### Claim 3 (depends on 1)

The process of claim 1 wherein the plurality of Web pages comprises:
a main page which links the plurality of pages;
a user interface page comprising an option selection page; and
a driver page which contains the option data set and the set of commands which controls a user's selection of a combination of options.

### Claim 4 (depends on 3)

The process of claim 3 wherein the plurality of Web pages further comprises a data page which manages the interaction between the user interface page and the driver page.

### Claim 5 (depends on 3)

The process of claim 3 wherein the plurality of Web pages further comprises a pricing page for displaying pricing information on the client.

### Claim 6 (depends on 3)

The process of claim 3 wherein transmitting the plurality of Web pages comprises:
transmitting the main page from the server to the client; and
pulling the user interface page and driver page from the server using the main page.

### Claim 7 (depends on 1)

The process of claim 1 wherein executing the set of commands comprises executing the commands using a Web browser.

### Claim 8 (depends on 1)

The process of claim 1 wherein the set of commands contained in the plurality of Web pages define a process comprising:
checking a selected optional attribute to see if it conflicts with a previously selected optional attribute;
checking a selected optional attribute to see if it requires selection of one or more other optional attributes; and
checking a selected optional attribute to determine if there is more than one choice for that type of optional attribute.

### Claim 9 (depends on 8)

The process of claim 8 wherein the process defined by the set of commands further comprises:
removing the previously selected optional attribute from the set of optional attributes if the previously selected optional attribute conflicts with the selected optional attribute;
selecting the second optional attribute if it is required by the first optional attribute; and
notifying the user if there is more than one choice for that type of selected attribute.

### Claim 10

A process for configuring a product using a client connected to a server by a network the product having multiple possible configurations, and wherein each configuration is defined by a set of standard attributes and a set of optional attributes, the process comprising:
transmitting a request for a base configuration from the client to the server;
transmitting a set of standard attributes defining the requested base configuration from the server to the client in response to the request;
transmitting, also in response to the request, a plurality of Web pages containing an option data set including only all available optional attribute associated with the requested base configuration and a set of commands for selecting a set of optional attributes from the server to the client; and
executing the set of commands on the client to select a compatible set of optional attributes from among all optional attributes found in the option data set without further interaction with the server.

### Claim 11 (depends on 10)

The process of claim 10 further comprising transmitting a complete product definition including the set of standard attributes and the set of optional attributes from the client to the server.

### Claim 12 (depends on 10)

The process of claim 10 wherein the plurality of Web pages comprises:
a main page which links the plurality of pages;
a user interface page comprising an option selection page; and
a driver page which contains the option data set and the set of commands which controls a user's selection of a combination of options.

### Claim 13 (depends on 12)

The process of claim 12 wherein the plurality of Web pages further comprises a data page which manages the interaction between the user interface page and the driver page.

### Claim 14 (depends on 12)

The process of claim 12 wherein the plurality of Web pages further comprises a pricing page for displaying pricing information on the client.

### Claim 15 (depends on 10)

The process of claim 10 wherein transmitting the option data set and the set of commands comprises:
transmitting the main page from the server to the client; and
pulling the user interface page and driver page from the server using the main page.

### Claim 16 (depends on 10)

The process of claim 10 wherein executing the set of commands comprises executing the commands using a Web browser.

### Claim 17 (depends on 10)

The process of claim 10 wherein the set of commands contained in the plurality of Web pages define a process comprising:
checking a selected optional attribute to see if it conflicts with a previously selected optional attribute;
checking a selected optional attribute to see if it requires selection of one or more other optional attributes; and
checking a selected optional attribute to determine if there is more than one choice for that type of optional attribute.

### Claim 18 (depends on 17)

The process of claim 17 wherein the process defined by the set of commands further comprises:
removing the previously selected optional attribute from the set of optional attributes if the previously selected optional attribute conflicts with the selected optional attribute;
selecting the second optional attribute if it is required by the first optional attribute; and
notifying the user if there is more than one choice for the selected attribute.

### Claim 19

An apparatus comprising:
a storage device comprising content; and
a processing element, coupled with the storage device, to execute at least a subset of the content to implement a product configurator, to receive from a remote client a request for a base configuration of a product defined by a set of standard attributes, to transmit to the client the standard attribute set for the requested base configuration in response to the request, and, also in response to the request, to transmit to the client a plurality of web pages containing an option data set including only all possible optional attributes associated with the requested base configuration along with a set of commands which, when executed at the client, enable a user to select elements from the set of optional attributes to configure a desired product definition without further interaction with a server.

### Claim 20 (depends on 19)

An apparatus according to claim 19, wherein the set of commands includes a command to enable the user to transmit the configured product definition from the client to the apparatus over a network coupling the apparatus to the client.

### Claim 21 (depends on 20)

An apparatus according to claim 20, wherein the product configurator receives the configured product definition from the client to facilitate the purchase of the configured product.

### Claim 22 (depends on 19)

An apparatus according to claim 19, wherein the set of commands ensures that the user does not select elements of the option data set that are mutually exclusive of one another.
