U.S. patent application number 15/980323 was filed with the patent office on 2018-09-13 for system apparatus and method for conducting an outline transaction to fulfill a rail-shipment service inquiry or a rail-shipment service ordering.
This patent application is currently assigned to CANADIAN NATIONAL RAILWAY COMPANY. The applicant listed for this patent is CANADIAN NATIONAL RAILWAY COMPANY. Invention is credited to Anita Ernesaks, Leonard John Podgurny.
Application Number | 20180260765 15/980323 |
Document ID | / |
Family ID | 40939709 |
Filed Date | 2018-09-13 |
United States Patent
Application |
20180260765 |
Kind Code |
A1 |
Podgurny; Leonard John ; et
al. |
September 13, 2018 |
SYSTEM APPARATUS AND METHOD FOR CONDUCTING AN OUTLINE TRANSACTION
TO FULFILL A RAIL-SHIPMENT SERVICE INQUIRY OR A RAIL-SHIPMENT
SERVICE ORDERING
Abstract
A method, as wells as an associated server arrangement and a
computer, for conducting an online transaction to fulfill a
rail-shipment service inquiry or a rail-shipment service ordering
are described. A customer system is directed to implement a
Graphical User Interface (GUI) to accept a customer identifier. In
response to a specific customer identifier, the GUI displays a
customer specific set of route parameters extracted from a customer
profile. The GUI also presents customer-selectable shipment options
configured to accept options conveying a first and a second
geographic location chosen from the customer specific set of route
parameters as an origin and a destination of a shipment. The GUI
may also be configured to deliver additional information to the
user of the GUI in response to specific customer-selected shipping
options and/or to provide a control component configured for
allowing a user to place an order to fulfill a shipment according
to the specific customer-selected shipping options. The
rail-shipment service may then be performed for according to the
specific customer-selected shipping options.
Inventors: |
Podgurny; Leonard John;
(Montreal, CA) ; Ernesaks; Anita; (Toronto,
CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
CANADIAN NATIONAL RAILWAY COMPANY |
Montreal |
|
CA |
|
|
Assignee: |
CANADIAN NATIONAL RAILWAY
COMPANY
Montreal
CA
|
Family ID: |
40939709 |
Appl. No.: |
15/980323 |
Filed: |
May 15, 2018 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
15090325 |
Apr 4, 2016 |
|
|
|
15980323 |
|
|
|
|
14825659 |
Aug 13, 2015 |
9336507 |
|
|
15090325 |
|
|
|
|
14193966 |
Feb 28, 2014 |
9141922 |
|
|
14825659 |
|
|
|
|
12944320 |
Nov 11, 2010 |
8700500 |
|
|
14193966 |
|
|
|
|
12385661 |
Apr 15, 2009 |
|
|
|
12944320 |
|
|
|
|
10060402 |
Feb 1, 2002 |
7539650 |
|
|
12385661 |
|
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
G06Q 10/087 20130101;
G06Q 50/28 20130101; G06Q 30/04 20130101; H05K 999/99 20130101;
G06Q 10/083 20130101; G06F 3/04847 20130101; G06Q 20/20 20130101;
G06Q 40/10 20130101; G06F 3/0482 20130101; G06Q 30/06 20130101;
G06Q 10/0834 20130101; G06Q 30/0601 20130101; G06Q 10/0875
20130101; G06Q 20/201 20130101; G06F 3/04842 20130101; G06Q 20/203
20130101; G07G 1/145 20130101; H05K 999/00 20130101; G06Q 30/0283
20130101; G06Q 10/08 20130101; G06Q 20/202 20130101; G06Q 10/06
20130101 |
International
Class: |
G06Q 10/08 20120101
G06Q010/08; G06F 3/0482 20130101 G06F003/0482; G06Q 50/28 20120101
G06Q050/28; G06Q 40/00 20120101 G06Q040/00; G06Q 30/06 20120101
G06Q030/06; G06Q 30/04 20120101 G06Q030/04; G06Q 30/02 20120101
G06Q030/02; G06Q 20/20 20120101 G06Q020/20; G06Q 10/06 20120101
G06Q010/06; G06F 3/0484 20130101 G06F003/0484; G07G 1/14 20060101
G07G001/14 |
Claims
1. A method for conducting an online transaction to fulfill a
rail-shipment service inquiry or a rail-shipment service ordering,
the method comprising: a. directing a customer system to implement
a Graphical User Interface (GUI) providing an input object
configured to accept a customer input conveying a customer
identifier; b. the GUI configured for presenting a plurality of
customer-selectable shipment options including a display object
identifying a set of route parameters that a user of the GUI can
choose for shipping a commodity by rail, the set of route
parameters being dynamically adaptable based on the customer
identifier; c. in response to a specific customer input conveying a
specific customer identifier associated with a specific customer at
the input object, directing the GUI to display at the display
object a customer specific set of route parameters extracted from a
customer profile associated with the specific customer; d. the
plurality of customer-selectable shipment options presented by the
GUI being configured to accept customer-selected shipping options
conveying: i. a first geographic location chosen from the customer
specific set of route parameters as an origin of a shipment; and
ii. a second geographic location chosen from the customer specific
set of route parameters as a destination of the shipment; e.
adapting the GUI to deliver additional information to the user of
the GUI in response to specific customer-selected shipping options
or providing a control component configured for receiving an input
from the user of the GUI to place an order to fulfill a shipment
according to the specific customer-selected shipping options.
2. A method as defined in claim 1, wherein the GUI is configured to
display at the display object the set of route parameters as
individually selectable items, the GUI being responsive to a
specific selection of at least one route parameter in the set of
route parameters to accept the specific selection of the at least
one route parameter as part of the customer-selected shipping
options.
3. A method as defined in claim 1, wherein the plurality of
customer-selectable shipment options presented by the GUI are
further configured to accept customer-selected shipping options
conveying a commodity to be shipped and a quantity of the commodity
to be shipped for the rail-shipment service.
4. A method as defined in claim 1, wherein the method comprises the
step of adapting the GUI to deliver additional information to the
user of the GUI and wherein the step of adapting the GUI to deliver
additional information to the user of the GUI includes presenting
to the user of the GUI shipment options including at least two
route options that the user of the GUI can choose from between the
origin and the destination.
5. A method as defined in claim 4, wherein the at least two route
options are independently selectable.
6. A method as defined in claim 1, comprising the step of providing
the control component configured for receiving the input from the
user of the GUI to place the order to fulfill the shipment
according to the specific customer-selected shipping options.
7. A method as defined in claim 6, said method further comprising
performing the rail-shipment service according to the specific
customer-selected shipping options.
8. A server arrangement for conducting an online transaction to
fulfill a rail-shipment service inquiry or a rail-shipment service
ordering, the server arrangement configured for: a. directing a
customer system to implement a Graphical User Interface (GUI)
providing an input object configured to accept a customer input
conveying a customer identifier; b. the GUI configured for
presenting a plurality of customer-selectable shipment options
including a display object identifying a set of route parameters
that a user of the GUI can choose for shipping a commodity by rail,
the set of route parameters being dynamically adaptable based on
the customer identifier; c. in response to a specific customer
input conveying a specific customer identifier associated with a
specific customer at the input object, directing the GUI to display
at the display object an customer specific set of route parameters
extracted from a customer profile associated with the specific
customer; d. the plurality of customer-selectable shipment options
presented by the GUI being configured to accept customer-selected
shipping options conveying: i. a first geographic location chosen
from the customer specific set of route parameters as an origin of
a shipment; and ii. a second geographic location chosen from the
customer specific set of route parameters as a destination of the
shipment; e. adapting the GUI to deliver additional information to
the user of the GUI in response to specific customer-selected
shipping options or providing a control component configured for
receiving an input from the user of the GUI to place an order to
fulfill a shipment according to the specific customer-selected
shipping options.
9. A server arrangement as defined in claim 8, wherein the server
arrangement is configured for adapting the GUI to deliver
additional information to the user of the GUI at least in part by
presenting to the user of the GUI price information corresponding
to the specific customer-selected shipping options.
10. A server arrangement as defined in claim 8, wherein the GUI is
configured to display at the display object the set of route
parameters as individually selectable items, the GUI being
responsive to a specific selection of at least one route parameter
in the set of route parameters to accept the specific selection of
the at least one route parameter as part of the customer-selected
shipping options.
11. A server arrangement as defined in claim 8, wherein the
plurality of customer-selectable shipment options presented by the
GUI are further configured to accept customer-selected shipping
options conveying a commodity to be shipped and a quantity of the
commodity to be shipped for the rail-shipment service.
12. A server arrangement as defined in claim 8, wherein the server
arrangement is configured for adapting the GUI to deliver
additional information to the user of the GUI at least in part by
presenting to the user of the GUI shipment options including at
least two route options that the user of the GUI can choose from
between the origin and the destination.
13. A server arrangement as defined in claim 12, wherein the at
least two route options are independently selectable.
14. A server arrangement as defined in claim 8, wherein the server
arrangement is configured for providing the control component
configured for receiving the input from the user of the GUI to
place the order to fulfill the shipment according to the specific
customer-selected shipping options.
15. A computer for conducting an online transaction to fulfill a
rail-shipment service inquiry or a rail-shipment service ordering,
the computer including a storage medium containing instructions for
execution by a CPU, the instructions configured for: a.
implementing on the computer a Graphical User Interface (GUI)
providing an input object configured to accept a customer input
conveying a customer identifier; b. the GUI configured for
presenting a plurality of customer-selectable shipment options
including a display object identifying a set of route parameters
that a user of the GUI can choose for shipping a commodity by rail,
the set of route parameters being dynamically adaptable based on
the customer identifier; c. in response to a specific customer
input conveying a specific customer identifier associated with a
specific customer at the input object, directing the GUI to display
at the display object an customer specific set of route parameters
extracted from a customer profile associated with the specific
customer; d. the plurality of customer-selectable shipment options
presented by the GUI being configured to accept customer-selected
shipping options conveying: i. a first geographic location chosen
from the customer specific set of route parameters as an origin of
a shipment; and ii. a second geographic location chosen from the
customer specific set of route parameters as a destination of the
shipment; e. adapting the GUI to deliver additional information to
the user of the GUI in response to specific customer-selected
shipping options or providing a control component configured for
receiving an input from the user of the GUI to place an order to
fulfill a shipment according to the specific customer-selected
shipping options.
16. A computer as defined in claim 15, wherein the instructions are
configured for adapting the GUI to deliver additional information
to the user of the GUI at least in part by presenting to the user
of the GUI price information corresponding to the specific
customer-selected shipping options.
17. A computer as defined in claim 15, wherein the GUI is
configured to display at the display object the set of route
parameters as individually selectable items, the GUI being
responsive to a specific selection of at least one route parameter
in the set of route parameters to accept the specific selection of
the at least one route parameter as part of the customer-selected
shipping options.
18. A computer as defined in claim 15, wherein the plurality of
customer-selectable shipment options presented by the GUI are
further configured to accept customer-selected shipping options
conveying a commodity to be shipped and a quantity of the commodity
to be shipped for the rail-shipment service.
19. A computer as defined in claim 15, wherein the instructions are
configured for adapting the GUI to deliver additional information
to the user of the GUI at least in part by presenting to the user
of the GUI shipment options including at least two route options
that the user of the GUI can choose from between the origin and the
destination.
20. A computer as defined in claim 19, wherein the at least two
commodity options are independently selectable.
21. A computer as defined in claim 15, wherein the instructions are
configured for providing the control component configured for
receiving the input from the user of the GUI to place the order to
fulfill the shipment according to the specific customer-selected
shipping options.
22. A method for conducting an online transaction to fulfill a
rail-shipment service inquiry or a rail-shipment service ordering,
the method comprising: a. directing a customer system to implement
a Graphical User Interface (GUI) providing an input object
configured to accept a customer input providing customer log-in
credentials; b. in response to a specific customer input conveying
specific customer log-in credentials associated with a specific
customer: i. processing the specific customer log-in credentials to
identify a customer profile; ii. processing the customer profile to
derive a customer specific set of route parameters; c. the GUI
configured for presenting a plurality of customer-selectable
shipment options including a display object identifying the
customer specific set of route parameters associated with the
specific customer that a user of the GUI can choose for shipping a
commodity by rail; d. the GUI being configured for accepting
customer-selected shipping options conveying: i. a first geographic
location chosen from the customer specific set of route parameters
as an origin of a shipment; and ii. a second geographic location
chosen from the customer specific set of route parameters as a
destination of the shipment; e. adapting the GUI to deliver
additional information to the user of the GUI in response to
specific customer-selected shipping options or providing a control
component configured for receiving an input from the user of the
GUI to place an order to fulfill a shipment according to the
specific customer-selected shipping options.
23. A method as defined in claim 22, wherein the method comprises
the step of adapting the GUI to deliver additional information to
the user of the GUI and wherein the step of adapting the GUI to
deliver additional information to the user of the GUI includes
presenting to the user of the GUI price information corresponding
to the specific customer-selected shipping options.
24. A method as defined in claim 22, wherein the GUI is configured
to display at the display object the set of route parameters as
individually selectable items, the GUI being responsive to a
specific selection of at least one route parameter in the set of
route parameters to accept the specific selection of the at least
one route parameter as part of the customer-selected shipping
options.
25. A method as defined in claim 22, wherein the GUI is further
configured to accept customer-selected shipping options conveying a
commodity to be shipped and a quantity of the commodity to be
shipped for the rail-shipment service.
26. A method as defined in claim 22, wherein the plurality of
customer-selectable shipment options include at least two route
options that the user of the GUI can choose from between the origin
and the destination.
27. A method as defined in claim 26, wherein the at least two route
options are independently selectable.
28. A method as defined in claim 22, comprising the step of
providing the control component configured for receiving the input
from the user of the GUI to place the order to fulfill the shipment
according to the specific customer-selected shipping options.
29. A method as defined in claim 28, said method further comprising
performing the rail-shipment service according to the specific
customer-selected shipping options.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] The present application is a continuation application under
35 USC .sctn. 120 based on co-pending U.S. patent application Ser.
No. 15/090,325 filed Apr. 4, 2016, which itself was a continuation
application based on U.S. patent application Ser. No. 14/825,659
filed Aug. 13, 2015 (now issued as U.S. Pat. No. 9,336,507), which
itself was a continuation of U.S. patent application Ser. No.
14/193,966 filed Feb. 28, 2014 (now issued as U.S. Pat. No.
9,141,922), which itself was a continuation of U.S. patent
application Ser. No. 12/944,320 filed Nov. 11, 2010 (now issued as
U.S. Pat. No. 8,700,500), which itself was a continuation of U.S.
patent application Ser. No. 12/385,661 filed Apr. 15, 2009 (now
abandoned), which itself was a continuation of U.S. patent
application Ser. No. 10/060,402 filed Feb. 1, 2002 (now issued as
U.S. Pat. No. 7,539,650). The contents of the above referenced
documents are incorporated herein by reference.
FIELD OF THE INVENTION
[0002] The present invention relates to a system and method for
facilitating on-line commerce over a computer network such as the
Internet. More specifically, the present invention relates to a
system for enabling a customer conduct an online transaction to
fulfill a rail-shipment service inquiry or a rail-shipment service
ordering over a computer network.
BACKGROUND
[0003] Traditionally, price quotations for standard goods and
services have been given via catalogue, telephone, facsimile and
more recently electronically via web pages on global computer
networks such as the Internet. Internet service providers are, more
and more, connecting users to the Internet at no cost to the users,
thereby making the Internet more accessible to a wide range of
users. Many of the users connected to the Internet, or having
access to other forms of computer networks are choosing to conduct
activities relating to commerce over these networks. At the same
time, merchants are increasingly developing sites on the World Wide
Web (or simply "www" or "web") that customers can access in order
to purchase goods and/or services. It is now fairly common for a
customer to browse a merchant's catalogue, select a product or
service and place an order for the product or service all
electronically over the Internet.
[0004] For example, U.S. Pat. No. 6,115,690, issued on Sep. 5, 2000
to Wong, describes a software system for providing integrated
business-to-business Web commerce and business automation. The
end-to-end Web business is facilitated by using a computing model
based on a single integrated database management system. The
software provides a graphical user interface that allows a user to
obtain a quote for a product based on a merchant's product list.
The quote is assigned a quote number and saved in a database
management system, and may be retrieved and viewed at a later date
by the customer. Customers and vendors can view payment status,
previous quotes and product tracking information. The contents of
the above documents are hereby incorporated by reference.
[0005] In another example, U.S. Pat. No. 5,926,817, issued on Jul.
20, 1999 to Christeson et al., describes a Graphical User Interface
(GUI) that allows a user to select optional features relating to a
product or service, and then provides the user with immediate
feedback in the form of product availability and price quotations.
The GUI allows the user to select a product/service, as well as to
select and unselect a set of optional features to customize a
desired product/service. The system, on the basis of the
information provided by the user generates a quote for that
product/service and the quote is displayed on the GUI. This system
is directed for use by communication service companies for
providing dynamic price quoting to their clients when the latter
select particular service features. The contents of the above
documents are hereby incorporated by reference.
[0006] In the above-described documents, the user is provided with
predefined goods and services from which the user makes a
selection. Such a method generally provides little choice in terms
of the definition of the service to be provided and, as such, these
systems are generally ill-suited for providing price quotations in
the field of transportation services.
[0007] In the field of transportation services, systems providing
price quotations based on origin, destination and commodity types
have also been developed. U.S. Pat. No. 6,061,667, issued on May 9,
2000 to Danford-Klein et al., describes a rating engine for
processing rating requests associated with a carrier contract. The
system provides a base rating engine for use on a computer that is
operable to calculate line rates in response to a rating request by
a client application. A rating server application performs the
necessary calculations regarding a rating request and returns the
results of the request to a client application. The contents of the
above documents are hereby incorporated by reference.
[0008] A deficiency of the systems of the type described in
Danford-Klein et al. is that they provide limited flexibility in
the price quotation process for a transportation service. The price
quotations are typically generic quotations given to all customers.
In order for a customer to obtain a more customized price
quotation, the customer must generally contact an account manager
in the traditional manner via telephone, mail, e-mail or other
means. This type of interaction is costly from both the customer's
end and from the transportation service provider's end since
valuable resources in terms of man-hours must be dedicated to these
telephone, mail, e-mail and other contacts.
[0009] Therefore a problem with prior art systems, which the
present invention aims to alleviate, is the need for the customer
to interact with a human (account manager) to fulfill a
rail-shipment service inquiry and/or order a transportation service
on-line.
[0010] Consequently there exists a need in the industry to provide
an improved system and method for providing a price quotation for a
railway transportation service that alleviates at least in part the
deficiencies of prior art systems and methods.
SUMMARY
[0011] In accordance with a first aspect, a method is provided for
computing the price for shipping goods. The method includes causing
a computer to deliver first information to a user prompting the
user to enter at the computer information about a rail
transportation service for shipment of goods by one or more
railcars. Information about a basic pool of railcars is received
and filtered based on one or more filtering criteria to produce a
filtered pool of railcars. The computer is then caused to deliver
second information to the user prompting the user to select at the
computer one or more railcars among the filtered pool of railcars
for the shipment of goods. A price for the shipment of the goods is
then computed at least in part on the basis of the rail
transportation service and the one or more characteristics of the
railcars in the filtered pool of railcars selected by the user.
[0012] Advantageously, some embodiments of the method may allow for
increased flexibility in the computation of the price for the rail
transportation service for shipment of goods since it allows the
user at the customer's side to customize the service request
without requiring human interaction from the transportation service
provider.
[0013] Another advantage of some embodiments of the method are that
they may provide the user with a more relevant list of equipment
based on the selected filtering criteria and thereby facilitates
the selection of suitable equipment.
[0014] In a specific implementation, the delivering of the first
information to the user is done by displaying information on a
screen and the user provides the information about the rail
transportation service through an input device such as a keyboard,
pointing device, touch sensitive surface and speech recognition
unit or any other suitable input device. The information about the
rail transportation service includes information specifying an
origin of the shipment, a destination of the shipment, a commodity
being transported and any other suitable information. In a
non-limiting implementation, the first information includes a
series of routes among which the user can select at least one
route.
[0015] Optionally, the computer is caused to display to the user on
the screen the price for the shipment of the goods. Alternatively,
an e-mail containing information indicative of the computed price
for the shipment of the goods is generated and transmitted to the
user. Alternative embodiments include transmitting the price for
the shipment of the goods to the user via snail-mail and facsimile
or by any other suitable communication device.
[0016] In the specific example, the computer delivers second
information to the user to prompt the user to enter at the computer
the one or more filtering criteria for use by the filtering.
Alternatively, the one or more of the filtering criteria are
extracted from a user profile file. The filtering criteria include
information about ownership of the rail cars to be used for the
shipment of the goods (such as the party that owns the railcars),
information about the type of goods to be shipped, the type of rail
car to use for the shipment of the goods.
[0017] In accordance with another aspect, an apparatus is provided
for implementing the above-described method.
[0018] In accordance with yet another aspect, a computer readable
medium is provided including a program element suitable for
execution by a CPU for computing the price for a railway
transportation service for the shipping goods in accordance with
the above described method.
[0019] In accordance with another aspect, a server system is
provided including a computer readable medium including a program
element suitable for execution by a CPU for computing the price for
a railway transportation service for the shipping goods in
accordance with the above described method.
[0020] In accordance with another aspect, a method is provided for
requesting a quote for a price for shipping goods by rail. The
method includes displaying information at a client system prompting
a user to enter at the client system information about a rail
transportation service for shipment of goods by one or more
railcars. Information is also displayed at the client system
prompting the user to enter at the client system one or more
filtering criteria. The information about the rail transportation
service for shipment of goods by one or more railcars and the one
or more filtering criteria are sent to a server system. The client
system receives from the server system information about a filtered
pool of rail cars produced by filtering a basic pool of rail cars
on the basis of the one or more filtering criteria. Information is
displayed at the client system information to the user prompting
the user to select at the client system one or more rail cars among
the filtered pool of railcars for the shipment of the goods. The
information about the one or more rail cars selected by the user
for the shipment of the goods is sent to the server system. The
client system then receives from the server system information
about the price for the shipment of the goods and displays to the
user at the client system the information about the price for the
shipment of the goods.
[0021] In a specific implementation, the information about the rail
transportation service includes information specifying an origin of
the shipment, a destination of the shipment, a commodity being
transported and any other suitable information. In a non-limiting
implementation, the first information includes a series of routes
among which the user can select at least one route.
[0022] In a non-limiting example, the filtering criteria may
include information about ownership of the rail cars to be used for
the shipment of the goods (such as the party that owns the
railcars), information about the type of goods to be shipped and
the type of rail car to use for the shipment of the goods or any
other suitable criteria.
[0023] In a specific implementation, the client system and the
server system communicate via the Internet.
[0024] In accordance with another aspect, an apparatus is provided
for implementing the above-described method.
[0025] In accordance with yet another aspect, a computer readable
medium is provided including a program element suitable for
execution by a CPU for computing the price for a railway
transportation service for the shipping goods in accordance with
the above described method.
[0026] In accordance with another aspect, a server system is
provided including a computer readable medium including a program
element suitable for execution by a CPU for computing the price for
a railway transportation service for the shipping goods in
accordance with the above described method.
[0027] In accordance with another aspect, a computer readable
storage medium is provided containing a program element for
execution by a CPU. The program element includes a first program
component for causing a computer to deliver first information to a
user prompting the user to enter at the computer information about
a rail transportation service for shipment of goods by one or more
railcars. The program element also includes a second program
component for receiving information about a basic pool of railcars.
The second program component implements a filter for filtering the
basic pool of railcars based on one or more filtering criteria to
produce a filtered pool of railcars. The second program component
causes the computer to deliver second information to the user
prompting the user to select at the computer one or more railcars
among the filtered pool of railcars for the shipment of goods. The
program element also includes a third program component for
computing a price for the shipment of the goods at least in part on
the basis of the information about the rail transportation service
and one or more characteristics of the railcars in the filtered
pool of railcars selected by the user.
[0028] In a first non-limiting implementation, the CPU resides on a
server machine and the computer is a client machine in a network
arrangement with the server machine. The first program element
component generates control messages to the client machine to cause
the client machine to display the first information and the second
information to the user. The control messages may be HTTP messages
or any and the client machine displays the first and second
information to the user through a browser.
[0029] In a second non-limiting implementation, the CPU resides in
the computer.
[0030] In accordance with another aspect, a server system is
described for computing a quote for a price for a railway
transportation service for shipping goods. The server system
includes a computer readable storage medium storing a program
element for execution by a CPU of the type described above.
[0031] In accordance to another aspect, a client server system is
described for computing a quote for a price for a railway
transportation service for shipping goods in accordance with the
above-described method.
[0032] Other aspects and features of the present invention will
become apparent to those ordinarily skilled in the art upon review
of the following description of specific embodiments of the
invention in conjunction with the accompanying figures.
BRIEF DESCRIPTION OF THE DRAWINGS
[0033] A detailed description of examples of implementation of the
present invention is provided hereinbelow with reference to the
following drawings, in which:
[0034] FIG. 1 is a block diagram of an electronic railway price
quotation/ordering system suitable for providing price quotations
for a railway transportation service in accordance with a
non-limiting implementation of the invention, including a merchant
computing entity 104, a network 106, and a customer entity 102
having a plurality of computing units;
[0035] FIG. 2a is a block diagram depicting one of the customer
computing units of customer entity 102 shown in FIG. 1 in
accordance with a non-limiting implementation of the invention;
[0036] FIG. 2b is a block diagram depicting the merchant computing
system 120 shown in FIG. 1 in accordance with a non-limiting
implementation of the invention;
[0037] FIG. 3 is a high level flow diagram of the process for
electronically providing price quotations for a railway
transportation service in accordance with a non-limiting specific
example of implementation of the present invention;
[0038] FIG. 4 depicts a user interface for allowing a user to logon
or to register with the electronic railway price quotation/ordering
system 100 in accordance with a specific example of implementation
of the present invention;
[0039] FIG. 5 is a flow diagram of a customer registration process
for the electronic railway price quotation/ordering system 100 in
accordance with a specific example of implementation of the present
invention;
[0040] FIG. 6 depicts a user interface for allowing a user to
select the electronic railway price quotation/ordering system from
a set of choices in accordance with a specific example of
implementation of the present invention;
[0041] FIG. 7 depicts a user interface displaying a "railway
transportation ordering" page 700 of the electronic railway price
quotation/ordering system in accordance with a specific example of
implementation of the present invention;
[0042] FIG. 8 illustrates a graphical representation of two
different routes between Montreal and Dallas on a geographical
map;
[0043] FIG. 9 shows a user interface depicting a "route display"
page 900 of the electronic railway price quotation/ordering system
in accordance with a specific example of implementation of the
present invention;
[0044] FIG. 10 shows a user interface depicting an "equipment
selection" page 1001 of the electronic railway price
quotation/ordering system in accordance with a specific example of
implementation of the present invention;
[0045] FIG. 11 is a flow diagram depicting a process for generating
a price quote for a rail transportation service in accordance with
a specific example of implementation of the present invention.
[0046] In the drawings, embodiments of the invention are
illustrated by way of example. It is to be expressly understood
that the description and drawings are only for the purposes of
illustration and as an aid to understanding, and are not intended
to be a definition of the limits of the invention.
DETAILED DESCRIPTION
[0047] The detailed description below refers to a railway price
quotation/ordering system where the transportation services
provided are offered by railway carriers using trains and railcars.
The skilled person in the art will appreciate that the system
described herein below may also be applied to transportation
services other than railway transportation services. For example,
other transportation services that provide for the transportation
of goods from an origin location to a destination location include
transportation via trucks, boats, airplanes and combinations of
trucks, boats, airplanes and railways.
[0048] Shown in FIG. 1 is an electronic railway price
quotation/ordering system 100 in accordance with a specific example
of implementation of the present invention for providing price
quotations for a railway transportation service. As shown, the
railway price quotation/ordering system 100 includes a customer
entity 102 and a merchant entity 104. For the purposes of this
specification, merchant entity 104 is a railway carrier capable of
providing railway transportation services The customer entity 102
includes a plurality of customer computing units 112, 114 and 116
and the merchant entity 104 includes a merchant computing system
120. The merchant computing system 120 and the customer computing
units 112, 114 and 116 are interconnected through a network
106.
[0049] The network 106 is a data communication network
interconnecting the customer entity 102 and the merchant computing
system 120. In a specific example of implementation, the network
106 is a public network. In the illustrated implementation, the
data communication network 106 is embodied in the Internet. It is
to be noted that the data communication network 106 may be
implemented as a network other than the Internet such as an
interactive television network, a private network such as an
Intranet, LAN, WAN, VPN or any other suitable network.
[0050] The customer entity 102 includes potential customers of the
railway price quotation/ordering system 100. In the example shown,
the customer entity 102 comprises three computing units 112, 114
and 116 each associated to a respective user 122, 124 and 126. The
computing units 112, 114 and 116 are generally in the form of
personal computers, although other types of computing units may be
used including laptops, notebooks, hand-held computers, set top
boxes, and the likes. The computing units 112, 114 and 116 may be
connected to one another over an Intranet or may be stand-alone
computing units. For example, computing units 112 and 114 are
connected over an Intranet 118 and computing unit 116 is a
stand-alone unit. Each of the computing units 112, 114 and 116 is
provided with a connection to network 106. The connection may be a
permanent connection through a server at the customer's premises,
or alternatively, a given computing unit may occasionally connect
to the network 106 through the use of a dial-up connection using
suitable devices such as a modem for example. It will be readily
appreciated that customer entity 102 may include less than three
computing units as well as more than three computing units.
[0051] The merchant computing system 120 and the computing units
112, 114 and 116 include tools for facilitating on-line commerce
transactions between the customer entity 102 and the merchant
entity 104. Specifically, the electronic railway price
quotation/ordering system 100 described above allows a customer to
obtain a price quotation for a certain specific railway
transportation service over computer network 106 and to order the
specific railway transportation service on the basis of the price
quotation. The merchant entity 104 is enabled to provide a price
quotation for the customer's requested transportation service on
the basis of criteria provided by the customer.
[0052] Customer Computing Unit 112
[0053] FIG. 2A depicts a block diagram of customer computing unit
112. The structure and functionality of customer computing units
114 and 116 are identical to that of customer computing unit 112
and as such will not be described herein. As shown, customer
computing unit 112 comprises a processor 202, a memory 206 and a
network I/O 204 (input/output) for accessing network 106. The
network I/O 204 can be implemented, for example, as a dial-up modem
or as a permanent network connection. The processor 202, which can
be a CPU, is adapted to execute program elements stored in the
memory 206 for performing certain functions. More specifically,
customer computing unit 112 runs an operating system 208 that
supports multiple applications. The operating system 208 is
preferably a multitasking operating system that allows simultaneous
execution of multiple applications in a graphical windowing
environment. The memory 206 also includes a browser program element
210. As will be discussed further on in the specification, in a
non-limiting implementation, information regarding a desired
railway transportation service, a series of routes between an
origin location and a destination location and a cost for the
railway transportation service is displayed through browser program
element 210. When the browser program element 210 is launched, it
is executed by the processor 202 atop the operating system 208. The
customer computing unit 112 may also include e-mail software
components (not shown) as well as additional components and
modules. These have been omitted from the description for the
purpose of clarity
[0054] Merchant Computing System 120
[0055] The merchant computing system 120 includes one or more
computer servers and one or more computing apparatuses, and as such
includes a server system. The system includes program elements 218
allowing the merchant entity 104 to manage a user interface that is
able to be provided to a computing unit (such as 112) of the
customer entity 102 such that the customer at computing unit 112
can obtain a price quote for a certain railway transportation
service over network 106.
[0056] FIG. 2B shows a block diagram depicting a schematic diagram
of the merchant computing system 120. As depicted, the merchant
computing system 120 comprises a processor 212, such as a CPU, a
memory 216 and a network I/O 214 (input/output) for connection to
the network 106 (shown in FIG. 1). The network I/O 214 is
preferably implemented as a permanent network connection, although
dial up connections may be suitable in certain embodiments. For
example, if the merchant computing system 120 interacts with the
customer computing units 112, 114 and 116 via e-mail, then a
dial-up connection may be suitable.
[0057] In a non-limiting example of implementation, the electronic
railway price quotation/ordering system 100 has a permanent network
connection to network 106. For clarity, it is this non-limiting
example of implementation that will be described in the rest of the
specification.
[0058] The processor 212 is adapted to execute program elements 218
stored in the memory 216 for performing various functions. The
memory 216 also has a data portion 220 including a customer
database 222, a routing database 224, an equipment database 226 and
a commodity database 228. It will be readily appreciated that the
merchant computing system 120 may include additional components and
modules that have been omitted from the description for the purpose
of clarity.
[0059] Customer database 222 includes data elements associated to
customers of the merchant entity. Some non-limiting examples of
data elements in the database include: a customer identifier, a
password, a customer address, customer account information and
potential discount rates associated to the customer. It is within
the scope of the invention for the customer database 222 to include
information regarding equipment (i.e. railcars) belonging to
specific customers. As will be described further on in the
specification, the customer database 222 is accessed by the
merchant computing system 120 when a customer logs on to the
merchant entity's website, or when specific customer profile
information is needed. A non-limiting example of implementation of
customer database 222 is shown below.
TABLE-US-00001 TABLE 1 Customer database Customer Identifier
Password Customer address Discount rate Customer 1 12345 1234 Green
Street 10% - Overall HOH OHO 20% - For wheat only 15% - For the use
of refrigerated cars Customer 2 23456 4321 Blue Avenue 15% -
Overall XOX OXO Customer 3 34567 9876 Yellow Drive 10% - for
flatbeds HAH AHA
[0060] Routing database 224 includes data elements associated to
segments available in the railway system used by railway carriers,
each segment being described by a respective origin junction and
destination junction pair. In a non-limiting implementation, the
destination junctions are destinations that can be reached from the
origin junction without transferring railway carriers. Optionally,
the routing database includes the distances between the origin
junctions and the destination junctions as well as an average
travel time between the origin junctions and the destination
junctions. The routing database 224 includes segments belonging to
the merchant entity 104 as well as railway segments belonging to
other railway carriers. Therefore, the routing database includes
the owner associated to each of the segments listed in the routing
database 224. It should also be understood that segments can
include portions of a route that require transportation other than
by railway. A non-limiting example of a routing database is shown
below.
TABLE-US-00002 TABLE 2 Routing database Distance Time Jct between
between Origin Destination Railway Jct origin destination Jct (km)
Jct (hrs) factor factor Carrier Montreal Buffalo 300 2.5 1.6 1.3
Merchant 1 Montreal Huntington 70 0.7 1.6 1.7 Merchant 2 Buffalo
Baltimore 250 2.1 2.4 2.2 Merchant 1 Buffalo Memphis 1300 10 2.4
1.9 Merchant 3 Baltimore St Louis 900 8.5 2.7 1.8 Merchant 2 St
Louis Dallas 550 4.8 3.5 2.3 Merchant 2 Memphis Dallas 350 3.2 4.0
2.3 Merchant 3
[0061] Optionally, although not show in the table above, each
segment may also be associated to an ownership factor data element
allowing to condition the cost on the basis of the ownership of the
segment. The ownership factor for a given segment may further be
dependent on the customer making the request.
[0062] The equipment database 226 includes a plurality of records
associated to respective railcars that can be used to transport
goods from an origin location to a destination location. The
records include a plurality of fields that include data elements
indicating the ownership of the railcar as well as the route
segments on which that piece of equipment can be used. As mentioned
with respect to the customer database, as a variant the ownership
of the railcars belonging to the customers is indicated in the
customer database 222. A non-limiting example of implementation of
equipment database 226 is shown below:
TABLE-US-00003 TABLE 3 Equipment database Carrying Ownership
Chargeable Price per Equipment Capacity Ownership Factor services
mile Flatbed 2 tons Merchant Entity 1 for all Cleaning 15.95
Unloading Flatbed 1.5 tons Customer 2 0.5 for Cleaning 15.95
"Customer 2" Unloading 1 for everyone else Flatbed 2 tons Railway
Carrier 2 0.8 for Cleaning 15.95 "Customer 1" Unloading 1.5 for
everyone else Tanker 5 tons Merchant Entity 1 Cleaning 20.00
Unloading Tanker 3 tons Customer 1 0.5 for Cleaning 20.00 "Customer
1" Unloading 1 for everyone else Boxcar 2 tons Merchant Entity 1
Cleaning 5.95 Unloading Boxcar 3.5 tons Customer 3 0.75 for
Cleaning 5.95 "Customer 3" Unloading 1 for everyone else Hopper 6
tons Merchant Entity 1 Cleaning 17.99 Unloading
[0063] Finally, the commodity database 228 includes data elements
corresponding to commodities potentially selected by the customer.
Specifically, the commodity database 228 includes data elements
corresponding to each commodity including chargeable services, a
price per mile and a price per weight for transportation.
Optionally, each commodity may also be associated to a list of
customers who have a high likelihood of transporting a given
commodity. A non-limiting example of implementation of commodity
database 228 is shown below:
TABLE-US-00004 TABLE 4 Commodity database Customers who transport
Price per Chargeable Commodity commodity Price per weight mile
services Wheat Customer 1 12.00/ton 2.00 Wood Customer 1 6.00/ton
1.99 Customer 2 Petroleum Customer 1 20.00/ton 13.00 Customer 3
Perishable Customer 4 22.00/ton 7.00 Refrigeration food
[0064] It is to be expressly understood that other formats for each
of the above noted databases are possible without detracting from
the spirit of the invention. It should also be expressly understood
that other data fields including additional data elements could
also be included and omitted without detracting from the spirit of
the invention.
[0065] The use of each of these databases will be described in
greater detail further on in the specification.
[0066] System Overview
[0067] With reference to FIG. 3, the overall interaction between a
customer at the customer entity 102 and the merchant entity 104 is
described in relation to the railway price quotation/ordering
system 100 according to an example of implementation of the present
invention.
[0068] Firstly, at step 1000 the customer accesses the merchant
entity's secure website by either entering a user ID and password,
or by registering as a new customer. Once the customer's identity
has been verified by the merchant computing system 120, the
customer is granted access to the merchant entity's website.
[0069] At step 2000, the customer is presented with a graphical
user interface indicative of the merchant entity's home page. The
graphical user interface provides a number of links to various
services and products offered by the merchant entity 104. In the
context of the railway price quotation/ordering system 100, a link
to the railway price quotation/ordering module is provided. The
user selects the railway price quotation/ordering module link from
the plurality of links through an input device such as a pointing
device, keyboard, touch sensitive surface, speech recognition unit
or other suitable input device.
[0070] At step 3000, the graphical user interface includes a set of
data fields that are modifiable by the customer for specifying a
desired railway transportation service. The customer is enabled to
enter via the user interface the origin location and the
destination location of the railway transportation service desired.
The customer is also enabled to enter the type and weight of the
commodity, which is to be transported between the origin location
and the destination location. Optionally, the customer is enabled
to enter the preferred dates for which the transportation service
is required. The dates may include an hour, day, month, year or
season. Once the above-described information is provided, the
customer submits this information to the merchant entity 104 via
network 106.
[0071] At step 4000, the program element 218 at the merchant
computing system 120 receives and processes the origin location and
the destination location submitted by the customer to derive a list
of transportation routes between the origin location and
destination location. The merchant computing system 120 then
forwards the list of transportation routes to the customer's
computing unit, which displays the routes to the customer through a
graphical user interface. The customer is then enabled to select
one of the routes for the transportation service through the user
interface using an input device such as a pointing device,
keyboard, touch sensitive surface, speech recognition unit or other
suitable input device.
[0072] At step S000, the program element 218 at the merchant entity
processes the commodity type and the weight information to derive a
list of suitable equipment for transporting the commodity. The
merchant computing system 120 then forwards the list of equipment
to the customer's computing unit which in turn displays the list of
equipment to the customer through the graphical user interface. The
customer is then enabled to select the desired equipment to be used
during transportation from a list of possible railcars through the
user interface using an input device such as a pointing device,
keyboard, touch sensitive surface, speech recognition unit or other
suitable input device. Optionally, the graphical user interface may
also enable the customer to select customized chargeable services
and submit the selections to the merchant entity 104.
[0073] It will be readily apparent to the person skilled in the art
that the order of steps 4000 and 5000 may be interchanged or,
alternatively, steps 4000 and 5000 may be performed concurrently
without detracting from the spirit of the invention.
[0074] At step 6000, the program element 218 at the merchant
computing system 120 generates a price quotation at least in part
on the basis of the origin location, destination location, weight
and type of commodity selected at step 3000, the route selected at
step 4000, and the equipment ownership and chargeable services
selected at step S000.
[0075] Optionally, at step 7000, the merchant computing system 120
applies marketing and promotional information in order to effect a
price adjustment of the price quotation generated at step 6000.
[0076] At step 8000, the merchant computing system 120 then
forwards the price quotation to the customer's computing unit,
which displays the price quotation to the customer through a
graphical user interface.
[0077] At step 9000, the customer is enabled to accept the price
quotation or reject the price quotation. Optionally, the customer
is enabled to save the price quotation in a database located at the
merchant computing system and delay making a decision until a later
time. In such an implementation, the price quotation provided at
step 8000 is associated to a time delay during which the price
quotation is valid.
[0078] Each of the above mentioned steps will be described in
greater detail hereinbelow.
[0079] Login or Register/Create a Customer Profile (Step 1000)
[0080] In order to access the electronic railway price
quotation/ordering system 100, a customer at computing unit 112
invokes browser 210 and enters the merchant entity's specific
network address. It should be expressly understood that a customer
may be a user of any computing unit within customer entity 102 that
accesses the railway price quotation/ordering system 100. For the
purposes of this description, the user 122 at customer computing
unit 112 will be called customer 122 to indicate that user 122 is
ordering a service from merchant entity 104. In a non-limiting
example of implementation, once customer 122 has entered the
merchant entity's network address, the browser 210 displays a
webpage on the customer computing unit 112. In such an
implementation, the customer is first presented with a
"login/registration" webpage. A non-limiting example of a
"login/registration" webpage 400 is shown in FIG. 4.
[0081] Prior to being able to access the railway price
quotation/ordering system, the customer either logs into the
merchant entity's "login/registration" page 400 by entering a
userID and password, or alternatively registers as a new user of
the railway price quotation/ordering service. If the customer is a
"registered customer", meaning that the customer has previously
registered and has been approved by the merchant entity, then the
customer simply provides the merchant entity with a userID and an
associated password each time the customer desires to access the
railway price quotation/ordering system 100. As can be seen in FIG.
4, in a non-limiting example of implementation, a registered user
enters the userID and associated password into customer modifiable
data fields 402 and 404 respectively, and then clicks the "go"
button 406 in order to submit this information to merchant entity
104. It is this login information that allows the merchant entity
104 to access the customer profile in the customer database
222.
[0082] When a "registered customer" enters a userID and a password,
the merchant entity 104 receives this login information and
processes it with respect to the customer database 222. More
specifically, the processor 212 accesses the customer database 222
to locate the entry corresponding to the userID. If no
corresponding entry is found in the customer database 222, an error
message is returned to the customer. If a corresponding entry is
found, the password in the entry in the customer database 222 is
compared to the password provided in the login information. If a
match is not found, an error message is returned to the customer.
If a match is found, the customer is successfully identified and is
granted access to the website.
[0083] If the customer accessing the "login/registration" page 400
is not registered, the user launches the registration process by
selecting a corresponding link to a "registration" webpage. The
user can select the "registration" webpage through an input device
such as a pointing device, keyboard, touch sensitive surface,
speech recognition unit or other suitable input device. In the
non-limiting example of implementation depicted in FIG. 4, customer
122 launches the "registration" webpage by selecting the "register"
button 408.
[0084] With reference to FIG. 5, the registration process will be
described below. At step 502, customer 122 launches the
"registration" webpage (no Figure), and customer computing unit 112
downloads a registration module implemented by program element 218
(shown in FIG. 2B) from the merchant computing system 120. The
registration module automatically launches to aid customer 122 in
the completion of the online application for registration. In a
specific example of implementation, the registration module is
configured to provide step-by-step instructions. At step 504,
customer 122 fills out the registration form that includes various
fields relating to personal and financial matters, such as company
name, address, telephone number, credit card numbers, bank
affiliations, and the like. Customer 122 also provides data related
to preferred payment methods, a userID and an associated password.
Optionally, the "registration" webpage may include data fields
prompting the customer to enter information about railcars that are
owned by the customer. Some of these information fields may be
omitted and others added without detracting from the spirit of the
invention.
[0085] It is possible that customer computing units 112 and 114
will have the same customer registration information since they are
connected via an intranet 118. In a non-limiting example, computing
units 112 and 114 belong to a single company and the registration
information provided to the merchant entity 104 pertains to the
company and not to the individual users of computing units 112 and
114. As such, both customers 122 and 124 may use the same userID
and password when accessing the railway price quotation/ordering
system 100.
[0086] As a variant, it is possible that the registration between
the customer and the merchant entity may be effected through the
completion of a form that is transmitted to the merchant entity 104
by mail, fax or other suitable transmission method. These methods
will be readily apparent to the reader skilled in the art.
[0087] Once the application for registration is completed, at step
506 the application for registration is submitted to the merchant
entity 104. The registration module facilitates this communication
between the customer computing unit 112 and the merchant entity
104. The registration module itself includes the necessary routing
information to direct the application over the network 106 to the
merchant computing system 120. At step 508, the merchant entity 104
reviews the application for registration to determine whether
customer 122 should be permitted to register and whether any
information is missing. If registration is denied, for example
information is missing, the customer is already registered, or the
customer requesting registration does not have permission to do so,
at step 510 the merchant entity 104 returns a message to the
customer 122 indicating that the application for registration has
been denied. Conversely, if the application is granted, at step 512
the merchant entity 104 may return a message indicating that the
application for registration is successful.
[0088] Assuming that the application for registration is granted,
at step 512 the merchant computing system 120 at the merchant
entity 104 creates a customer account entry in customer database
222 (as described and shown previously in the specification). The
customer database 222 includes information pertaining to the
customers of the merchant entity 104. In a non-limiting example of
implementation, for each customer entity, an entry is provided
including various information data elements associated to the user.
Amongst others, each entry includes a customer identifier and a
corresponding password. Optionally, each customer identifier is
associated to a respective customer profile including customer
characteristics that may be used by program elements 218 to
condition the price quotation to be generated. Such information may
include without being limited to, information indicating a discount
rate to which the customer is entitled. This will be discussed in
more detail in the section entitled "marketing options and
"adjustment of price quotation". In accordance with a non-limiting
implementation, until the merchant entity 104 has reviewed the
customer's registration information, the "new customer" has only
limited interaction capabilities with the railway price
quotation/ordering system 100.
[0089] As a variant to the electronic railway transportation
registration system 100, the accessing of a registration page is
not required in order for a customer to access the merchant
entity's homepage or the "railway transportation ordering" page of
the electronic railway price quotation/ordering system 100. Under
this variant, an unregistered customer can skip step 1000 and
access the "railway transportation ordering" page directly, so as
to be able to enter information regarding a specific railway
transportation service that is desired and obtain a price quote for
that service. If the user desires to accept the price quote, it is
at this stage that the user completes the registration process in
order to provide the merchant entity 104 with information regarding
the customer.
[0090] Selecting the Railway Price Quotation/Ordering System (Step
2000)
[0091] Once the customer has been successfully identified by the
login process, or has successfully completed the registration form,
customer computing unit 112 downloads a module representative of
the merchant entity's "home" site for displaying on the screen of
the customer computing unit 112. FIG. 6 shows a simplified
non-limiting example of the merchant entity's "home" site 600. The
"home" site is implemented by program element 218 from the merchant
computing system 120 and automatically launches to aid customer
122. The railway price quotation/ordering system 100 is part of an
electronic-commerce platform provided by the merchant entity 104 to
support various electronic-commerce activities. As can be seen, the
"home" site 600 provides a number of links to various services and
products offered by the merchant entity 104. In the context of the
railway price quotation/ordering system 100, a link 602 to the
railway price quotation/ordering module is provided. The merchant
entity's "home" site may also include a link entitled "view
previous price quotes" which provide customers with the ability to
view previously accepted quotes listed by such things as "quotes by
customer", "quotes by account" and "quotes by contact".
[0092] In the non-limiting example of implementation shown in FIG.
4, in order to request a price quote for a railway transportation
service, the customer 122 selects the "price quote and ordering"
button 602 from the merchant entity's "home" site 600. This is done
through an input device such as a pointing device, keyboard, touch
sensitive surface, speech recognition unit or other suitable input
device. Once selected, the "home" site module 600 facilitates the
communication of this choice to the merchant entity 104. The "home"
site module itself includes the necessary routing information to
direct the choice selected by customer 122 to the merchant
computing system 120 over network 106.
[0093] Select Origin Location, Destination Location and Commodity
(Step 3000)
[0094] After selecting the "price quote and ordering" link 602 from
the merchant entity's "home" site 600, a "railway transportation
ordering" page is launched at customer computing unit 112. The
"railway transportation ordering" page is implemented by program
element 218 (shown in FIG. 2b) at the merchant computing system
120. The program element 218 generates control messages to the
customer computing unit 112 to cause the customer computing unit
112 to display information in the form of "railway transportation
ordering" page to the customer. In a specific example of
implementation the control messages are HTTP messages. The "railway
transportation ordering" page automatically launches to aid
customer 122 in filling out the customer modifiable data fields
located on the "railway transportation ordering" page, thereby
prompting the user to enter information regarding a desired rail
transportation service. In a specific example of implementation,
the "railway transportation ordering" page is configured to provide
step-by-step instructions. In a non-limiting example of
implementation, the "railway transportation ordering" page is a
graphical user interface implementing a form that is modifiable by
the customer and which is suitable to be displayed on the screen of
the customer computer unit 112 by browser program element 210.
Shown in FIG. 7, is a non-limiting example of the "railway
transportation ordering" page 700. In a non-limiting example of
implementation, the customer 122 fills out the customer-modifiable
data fields in order to enter information about a rail
transportation service for the shipment of goods, such as a desired
origin location, destination location, commodity type and commodity
weight. The shipment of goods can be transported by one or more
railcars.
[0095] As can be seen in FIG. 7, there are a set 702 of customer
modifiable data fields for the origin location, a set 704 of
customer modifiable data fields for the destination location, and a
set 706 of customer modifiable data fields for the commodity.
Optionally, although not shown in FIG. 7, the graphical user
interface can include customer modifiable data fields relating to
customer account information and preferred dates of transportation.
Some of these information fields may be omitted and other
information fields added without detracting from the spirit of the
invention.
[0096] It will be readily apparent that there are numerous ways for
the user to provide the information regarding the origin location,
the destination location, and the commodity. The user can enter the
information about the desired rail transportation service into the
computer modifiable data fields through an input device selected
from the group consisting of keyboard, pointing device, touch
sensitive surface and speech recognition unit.
[0097] In a first non-limiting example of implementation, in order
to specify the origin location and the destination location of
transportation, the customer can enter the name of the country,
city and street address. These are shown as customer modifiable
data fields 708, 710, 712 and 714 on FIG. 7.
[0098] Alternatively, in a second non-limiting example of
implementation, the customer may enter a zip code, shown as data
fields 716 and 718 in FIG. 7 (the zip code can be of any number of
digits such as the Canadian 6 digit zip code, the U.S. 5 digit zip
code or any other type of zip code).
[0099] In a third non-limiting example of implementation, the
customer may enter a standard point location code (SPLC), data
fields 720 and 722, or a freight station accounting code
(FSAC).
[0100] Optionally, the customer modifiable fields depicted in FIG.
7 may be enabled/disabled on the basis of the information already
entered by the user. For instance, if the user specifies the origin
location with an SPLC, then the city, country and zip field may be
automatically disabled by the user interface. Similarly, if the
user specifies the origin location with the city, country or with
the zip code, the SPLC may also be automatically disabled. The same
type of feature may be provided by the user interface for the
destination location and for the commodity information.
[0101] It is within the scope of the invention for the merchant
entity 104 to be able to provide an intermodal transportation
service based on the origin location and destination location
entered by the customer. For example, if the customer enters a zip
code to specify the origin location and there is no train station
within the region covered by that zip code, then the merchant
entity can use another form of transportation, such as a truck, to
transport the commodity from the customer's origin location to the
closest train station. Similarly, the customer may specify the
desired destination location with a zip code that covers a region
that does not include a train station. In these situations the
merchant entity will provide an alternate form of transportation
from the origin location to the closest train station and from the
terminal train station to the desired destination location. As
such, the merchant entity is able to provide a door-to-door
transportation service to the customer.
[0102] The merchant entity 104 is able to calculate the distance to
the closest train station based on the zip code, or other origin
location information provided by the customer.
[0103] Although not shown in FIG. 7, in a fourth non-limiting
example of implementation, the customer may simply select the
desired origin location and destination location from a pull-down
list of possible locations. Such a list may include a list of the
origin/destination locations available for the railway
transportation service.
[0104] Although not shown in FIG. 7, in a fifth non-limiting
example of implementation, the graphical user interface may include
an interactive map allowing the customer to select a desired
location of origin and destination by activating the selections
through an input device such as a pointing device, keyboard, touch
sensitive surface, speech recognition unit or other suitable input
device. In this alternative implementation, the interactive map
depicts a plurality of locations at which origin and destination
location are depicted and associated to links allowing selection by
the user.
[0105] Other suitable embodiments for selecting origin and
destination locations through a user interface are possible without
detracting from the spirit of the invention.
[0106] The desired commodity, as well as the weight or volume of
the commodity to be transported, may also be specified in various
ways. The type of commodity can be selected from the set consisting
of, but not limited to, liquids, solids, logs, granular, grain
type, commodity type, explosives, and hazardous materials. As a
non-limiting example, the commodity may be specified by entering
into data fields 724 and 726 the commodity's common written name
and the weight of the commodity can be entered using well known
units of measure (UOM), such as pounds, kilograms or cubic inches.
Alternatively, the user may specify the commodity by entering the
commodity's seven digit STCC code (standard transportation
commodity classification) or a subset of the commodity's seven
digit STCC into data field 728. It will be apparent that although
this specific implementation describes the transportation of a
commodity, any good suitable for rail transportation may be
specified without detracting from the spirit of the invention.
[0107] It is within the scope of the invention for the graphical
user interface of the "railway transportation ordering" page 700 to
be configured such as to be customer specific, thereby including
specific information regarding the customer currently accessing the
page. For example, if it is known from the customer profile that
customer 122 only transports wheat and wood, then in the commodity
selection area 706, only the choice of wheat and corn will be
available to the customer. Alternatively, if it is known from the
customer profile that customer 122 usually transports wheat from
Montreal to Dallas, then default values for the customer modifiable
fields may be set accordingly such as to reduce the time required
for the user to enter the information. In the specific example
shown in FIG. 7, the origin location 702, the destination location
704, and the commodity 706 are set respectively to "Montreal",
"Dallas" and "Wheat".
[0108] Once the necessary information has been entered into the
"railway transportation ordering" page 700, the information entered
into the customer modifiable data fields is submitted to the
merchant entity 104. This may be accomplished through an input
device such as a pointing device, keyboard, touch sensitive
surface, speech recognition unit or other suitable input device. In
the specific example shown in FIG. 7, the customer submits the
information entered into the graphical user interface by selecting
the "submit" button 730 with a pointer device. The "railway
transportation ordering" page 700 includes routing information to
direct the information entered by customer 122 to the merchant
entity 104. As such, the customer computing unit 112 is operative
to communicate with the merchant entity 104. It should be noted
that the price quote computed later on can be based at least in
part on the information supplied by the customer at the "railway
transportation ordering" page 700 about the rail transportation
service desired.
[0109] Select a Route (Step 4000)
[0110] Upon receipt of the customer's desired origin location and
destination location, the program element 218 of the merchant
computing system 120 is responsive to the desired origin location
and destination location and accesses routing database 224 (FIG.
2B). As explained above, the routing database 224 stores a list of
segments in the form of {origin junction, destination junction}
pairs for railway routes. The processor 212 applies a route
determination algorithm implemented by program element 218 to the
information stored in the routing database 224 with respect to the
customer's desired origin location and destination location. The
route determination algorithm determines a series of combinations
of segments that can be joined so as to form a route between the
origin location and the destination location. Identifying a
combination of segments between an origin location and a
destination location based on predefined segments may be done using
any suitable method.
[0111] In accordance with a variant of the invention, a segment may
be traveled by a carrier other than a train such as for example a
truck, a boat, airplane or any other suitable vehicle. For example,
if the transportation service desired by the customer requires a
truck to transport goods from the specific origin location to a
train station in the area, then the journey by truck to the train
station can be considered a first segment, and the journey by train
can include one or more additional segments. In addition, the final
segment can be a journey by truck from a termination train station
to the specific destination location specified by the customer. All
segments of the route include respective origin location and
destination locations and in general, the destination of the first
segment coincides with the origin of the second segment, the
destination of the second segment coincides with the origin of the
third segment and so on.
[0112] In this variant, the customer enters into the "railway
transportation ordering" page an origin location, which is
information conveying a characteristic of the first segment of the
transportation route. As a specific example, the zip code entered
by the customer identifying an origin location is a characteristic
of the first segment of the route. It should be understood that
other information conveying an origin location of the first segment
are included within the scope of the invention, such as country,
city, and street address. The user may also enter at the "railway
transportation ordering" page information conveying a
characteristic of the second segment of the journey, such as origin
location of the second segment. As a specific example, the zip code
or other origin location identifier entered by the customer to
identify the origin location of the first segment can also convey
the origin location of the second segment. For example, with the
origin location of first segment, the program element 218 at the
merchant entity 104 can identify the closest train station to the
origin location and as such identify the origin location of the
second segment. In this case, the train station is the origin
location of the second segment. It is to be appreciated that
although in this example the information conveying an origin
location of the second segment is derived from the information
conveying the origin location of the first segment, it is within
the scope of the invention for the customer to provide information
conveying the origin location of the second segment separately from
that of the first segment. In addition, the customer may enter
information identifying the destination of one or all of the
segments contained within the route. The customer enters
information conveying one or more characteristic of the first
segment and the second segment through an input device selected in
the group consisting of keyboard, pointing device, touch sensitive
surface and speech recognition unit.
[0113] Generally, two or more routes are derived for a given origin
location and a destination location requested by a customer.
However, it will be readily appreciated that for certain origin
locations and destination locations only one existing route between
an origin location and a destination location will exist amongst
the segments in the route database 224 and such cases remain within
the scope of the invention. It is to be appreciated that the series
of combinations of segments forming routes between the origin
location and the destination location need not be an exhausted list
of all possible routes between the origin location and the
destination location but may be a subset thereof without detracting
from the spirit of the invention. The invention is not limited to
the manner in which the subset of routes from the list of possible
routes is determined.
[0114] An example of interaction between customer 122 and merchant
entity 104 will better illustrate the above. On the "railway
transportation ordering" page 700, customer 122 selects Montreal as
the origin location and Dallas as the destination location. The
merchant entity 104 receives the selected origin location
(Montreal) and the destination location (Dallas) and applies the
algorithm to the information stored in the routing database 224 to
derive possible routes between Montreal and Dallas. From the
routing database 224, shown in table 2 above, there are at least
two routes possible between Montreal and Dallas, namely:
[0115] Route 1
[0116] Montreal to Buffalo using merchant 1 followed by
[0117] Buffalo to Baltimore using merchant 1 followed by
[0118] Baltimore to St Louis using merchant 2 followed by
[0119] St Louis to Dallas using merchant 2.
[0120] Route 2
[0121] Montreal to Buffalo using merchant 1 followed by
[0122] Buffalo to Memphis using merchant 3 followed by
[0123] Memphis to Dallas using merchant 3.
[0124] FIG. 8 illustrates a graphical representation of these two
routes on a geographical map. The series of routes between the
origin location and the destination location is displayed in the
form of paths drawn on the graphical representation of a
geographical map.
[0125] Program element 218 is operative for interfacing with a
database, such as routing database 224, that maps information
identifying route segments and identifying the respective merchant
railway carriers that own the route segments in order to generate a
series of routes having segments owned by a certain owner.
[0126] In a specific example of implementation, the algorithm
deriving the list of routes from the origin location to the
destination location is biased on the basis of the ownership of the
segments of the routes. For example, the algorithm deriving the
list of routes from the origin location to the destination location
can make use of the ownership of the segments in the routing
database 224 to bias the list of routes to favor railway routes
having segments belonging to the merchant entity 104.
[0127] For example, in cases where the merchant entity 104 can
transport a commodity from the specified origin location to the
specified destination location without the use of railway routes
having segments belonging to a railway carrier other than the
merchant entity 104, the routes that use the rail segments
belonging to the merchant entity 104 are provided to the customer
for selection. For example, when the origin is Montreal and the
destination is Vancouver, and there are seven (7) different routes
that can be taken between Montreal and Vancouver and two (2) of the
routes require only railway segments belonging to the merchant
entity, and the remaining five (5) routes require the use of rail
segments belonging to a railway carrier other than the merchant
entity, then only the two routes that use railway segments
belonging to the merchant entity are displayed to the customer. In
another example, the routes that use railway routes having at least
one segment belonging to the merchant entity 104 are provided to
the customer for selection. In such implementations, the rules for
the selection of the routes for inclusion in the series of routes
presented to the customer are based on a pre-determined segment
owner, namely the merchant entity. Alternatively, the user may
desire to have the algorithm determine a list of routes based on a
merchant railroad carrier other than the merchant entity, that is
selected by the user.
[0128] It is to be appreciated that heuristics rules for biasing
the selection of the routes for inclusion in the series of routes
for presentation to the customer entity 102 may also bias the
selection toward rail segments belonging to railway carriers other
than the merchant entity. For instance, the selection may be biased
toward railway carrier with which the merchant entity has some
strategic alliances. As such, routes that include rail segments
belonging to railway carriers having strategic relationships with
the merchant entity 104 are given a preferential treatment over
routes that include rail segments belonging to railway carriers not
having strategic relationships with the merchant entity 104. As
such, the series of routes presented to the customer is a subset of
a set of all possible routes between the origin of the shipment of
goods and the destination of the shipment of goods.
[0129] Once program element 218 has derived a list of routes
between the origin location and the destination location, the list
of routes is transmitted over network 106 to customer computing
unit 112 on a "route display" page that is downloaded by computing
unit 112. The "route display" page automatically launches at
computing unit 112 to display on the screen of the customer
computing unit 112 the list of derived routes. The "route display"
page is implemented by program element 218 from the merchant
computing system 120 and automatically launches to aid customer
122.
[0130] Shown in FIG. 9 is a non-limiting example of the "route
display" page 900 launched at the customer computing unit 112. As
can be seen, the series of routes is displayed in the form of a
table, with each route presented as a row, showing each junction in
the route as well as the merchant railroad carrier used for
transportation. It is within the scope of the invention for the
"route display" page 900 to indicate the distance between each
junction and the total distance for each route. It should be noted
that the route is divided into segments, each segment being the
trip between two junctions.
[0131] Customer 122 may select a desired route from the list of
routes displayed through an input device such as a pointing device,
keyboard, touch sensitive surface, speech recognition unit or other
suitable input device. In the specific example shown in FIG. 9, the
customer selects and submits the choice of route simply by
selecting either the "route 1" button 902 or the "route 2" button
904. Alternatively, the customer selects and submits the choice of
route simply by selecting the route on the graphical representation
of the geographical map 952.
[0132] Optionally, the user interface provides an option allowing
the user to request the merchant system to effect the route
selection on the basis of a certain criteria such as cost, distance
and time.
[0133] The "route display" page 900 includes routing information to
direct the route selection of customer 122 to the merchant entity
104.
[0134] Based on the customer's choice of route, the merchant
computing system 120 is able to determine the distance (miles or km
or other unit of distance) between the chosen origin location and
the chosen destination location.
[0135] Equipment Selection (Step S000)
[0136] In a specific example of implementation, after the customer
has selected a route from the list of routes provided by the
merchant entity 104, an "equipment selection" page 1001 is
automatically launched at customer computing unit 112. "Equipment
selection" page 1001 is implemented by program element 218 of
merchant computing system 120 and is transmitted to the customer
computing unit 112 over network 106. A non-limiting example of the
"equipment selection" page 1001 is shown in FIG. 10. The "Equipment
selection" page 1001 in accordance with this non-limiting example
of implementation is in the form of a graphical user interface
displayed on the screen of the customer computing unit 112. As can
be seen, the "equipment selection" page 1001 includes
customer-modifiable data fields 1002 relating to the equipment
selection and, optionally, customer-modifiable data fields 1004
relating to chargeable services. The customer-modifiable data
fields 1002 enable the user to select the type of railcar to
transport the desired commodity from the origin location to the
destination location. The customer-modifiable data fields 1004
enable the user to select the desired services. It will be apparent
that certain chargeable services will be automatically selected by
the merchant system on the basis of the commodities being
transported and on the basis of the type of equipment being
used.
[0137] The customer modifiable data fields 1002 and 1004 may be
comprised of text boxes that allow the customer to type in the
desired choices or, alternatively, and as shown in FIG. 10, the
customer-modifiable data fields are dropdown selection boxes 1006
that include choices of equipment and chargeable services available
to the user. Other suitable formats of customer modifiable data
fields are also within the scope of the present invention. The
choice of railcar to be used includes, but is not limited to, a
gondola car, a tanker car, a flatbed car, a boxcar, a central beam
car for logs, a grain car, a railcar for hazardous materials a
refrigerated a hopper car and a covered hopper car amongst
others.
[0138] The customer is enabled to enter information at the customer
computing unit 112 about the ownership of at least one rail car
that will be used for transporting the shipment of goods.
Specifically, the customer is enabled to select the desired
ownership of the railcars for the transportation service.
[0139] In a first non-limiting example of implementation,
customer-modifiable data fields 1002 identify a list of railcars
associated to respective owners. The user selects the railcar type
jointly with the railcar owner by editing the customer-modifiable
data fields 1002. In a second non-limiting example of
implementation, for each selected railcar type, the user is
permitted to select a railcar owner from a list of railcar owners
having the selected railcar type. This may be effected by providing
an additional customer-modifiable data field (not shown in FIG. 10)
to enable the user to select a railcar owner from a list of railcar
owners. Optionally, entries in the list of equipment owners may be
enabled/disabled on the basis of the railcar already selected by
the user in field 1002. For instance, if a flatbed railcar is
selected and only carrier 1 and carrier 3 own flatbed railcars,
then only carrier 1 and carrier 3 will be enabled such that the
customer may only select carrier 1 or carrier 3.
[0140] Advantageously, by allowing the customer to select the owner
of the equipment, the customer can have the option to select
equipment owned by the merchant entity 104, by a railway carrier
other than the merchant entity, or by the customer himself. The
selection of equipment owner may result in reduced costs in the
transportation service.
[0141] As a non-limiting feature of the electronic railway price
quotation/ordering system 100, the merchant computing system 120
includes, as part of program element 218, a product configurator
program element to customize the "equipment selection" page based
on the selections previously made by the customer. For example, the
product configurator program element is able to form a basic pool
of railcars and is further able to implement a filter for filtering
the basic pool of railcars based on one or more filtering criteria
to produce a filtered pool of railcars. The filtering criteria can
be such things as type of railcar, type of commodity or goods,
route chosen, ownership of the railcars etc. . . . . In addition,
the filtering criteria can be extracted from the customer database
222, or any of the other databases disclosed above. The program
element 218 is able to deliver the filtered pool of railcars to the
customer's computing unit 112, and the customer is able to select
at the computer unit 112 one or more railcars from the filtered
pool of railcars. As will be described further on in the
specification, the price quote for the transportation service
selected by the customer will be based at least in part on one or
more characteristics of the railcars selected by the customer.
[0142] In a specific implementation, the product configurator
program element provides a set of filter modules including an
equipment type filter module, a route filter module and an
equipment ownership filter module amongst others.
[0143] The equipment type filter module processes a list of
available equipment types on the basis of the commodity selected by
the customer on the "railway transportation ordering" page 700
(shown in FIG. 7) in order to release a list of equipment types
suitable for transporting the selected commodities. The suitable
equipment types are presented for selection in customer modifiable
field 1002. For example, if a customer has indicated on the
"railway transportation ordering" page that the commodity to be
transported is a petroleum based product, the equipment type filter
module conditions the "equipment selection" page such that the
customer-modifiable data fields only provide the user with the
ability to select equipment (railcars) that can transport a
petroleum based product. As such, the choice of a flat bed railcar,
or a hopper will not be made available to the customer.
[0144] The route filter module of the product configurator
processes a list of available equipment types on the basis of the
route selected by the user on the "route display" page 900 (shown
in FIG. 9) in order to release a list of equipment types suitable
to be transported on all the segments of the selected route. This
is particularly advantageous when certain segments of the route are
not rated to support certain types of railcars, or support railcars
weighing more than a certain amount. The suitable equipment types
are presented for selection in customer modifiable field 1002.
[0145] The equipment ownership filter module of the product
configurator processes a list of available equipment types on the
basis of the owner of the equipment. In a first non-limiting
example, the list of equipment is conditioned on the basis of the
owners of the segments of the route selected by the user on the
"route display" page 900. For example, if the user selects a route
that includes segments owned by two different railway carriers, it
is within the scope of the invention for the customer to be able to
chose to use either of the first carrier's equipment, or the second
carrier's equipment. This is particularly advantageous when the
railway carrier provides a discounted rate when a customer uses a
rail segment and equipment owned by that railway carrier.
[0146] In a second non-limiting example, the list of equipment is
conditioned on the basis of the customer profile associated with
the customer. For example, the equipment ownership filter module is
operative to process the equipment database 223 to identify
equipment associated to the customer presently using the railway
price quotation/ordering system 100. Where suitable equipment owned
by the customer has been identified by searching the equipment
database 226, or the customer database 222, to extract information
regarding equipment owned by the customer, the equipment ownership
filter module releases a list of equipment owned by that customer
causing the equipment presented in the dropdown selection box 1006
to include the equipment owned by the customer. The dropdown box
1006 may optionally include equipment owned by others. In such a
case, an ordered list of equipment may be presented with the
equipment owned by the customer preceding equipment owned by other
customers. This is particularly advantageous when the customer owns
equipment and is able to obtain a discounted rate for the railway
transportation service when using his/her own equipment.
[0147] In a third non-limiting example, the list of equipment is
conditioned on the basis of the equipment owned by the merchant
entity 104. For example, the equipment ownership filter module is
operative to process the equipment database 226 to identify
equipment associated the merchant entity 104. Where suitable
equipment owned by the merchant entity 104 has been identified, the
equipment ownership filter module releases a list of equipment
owned by the merchant entity 104 causing the equipment presented in
the dropdown selection box 1006 to include the equipment owned by
the merchant entity 104. The dropdown box 1006 may optionally
include equipment owned by others. In such a case, an ordered list
of equipment may be presented with the equipment owned by the
merchant entity preceding equipment owned by other railway
carriers. This is particularly advantageous when the merchant
entity owns equipment and it is desired that the merchant entity's
equipment be favored over that of other railway carriers when using
railway price quotation/ordering system 100.
[0148] The above described filter modules are used in combination
to provide the user with a list of suitable equipment types for the
transportation service. For example, the equipment type filter
module is first applied to the list of all possible railcars to
eliminate railcars that are unsuitable to carry the commodity
selected by the user which results in a first subset of equipment.
The first subset of equipment is then processed by the equipment
ownership filter module to order the first subset of equipment such
that equipment owned by the merchant entity is displayed to the
user preceding equipment owned by other railway carriers.
[0149] As described above, the "equipment selection" page 1001
optionally includes data fields that enable the user to select
customized chargeable services 1004 in addition to the standard
default chargeable services associated with any given railway
transportation service. As a non-limiting example of
implementation, and as shown in FIG. 10, the customer modifiable
data field is a drop down box 1008 listing chargeable services
available to the customer 122. Chargeable services include such
items as handling goods, mounting and dismounting of containers,
loading, unloading, customs inspection, demurrage and the like. A
list of chargeable services is described in U.S. Pat. No.
6,061,667, issued on May 9, 2000 to Danford-Klein et al., the
contents of which are incorporated herein by reference. If the
"equipment selection" page 1001 does not include data fields
enabling the customer to select chargeable services, or if the
customer does not wish to select any additional chargeable
services, the merchant computing unit 120 will generate a price
quote based on the use of default chargeable services. The default
chargeable services are based at least in part on the commodity
being transported and on the type of railcar used for the
transportation service. For example, if the commodity being
transported is petroleum and a tanker car is used, then chargeable
services associated to the cleaning of the tanker car will be
applicable to the transportation service.
[0150] Once the customer has indicated the desired equipment and
chargeable services in the customer modifiable data fields, the
information is submitted to the merchant entity 104. The "equipment
selection" page 1001 facilitates the communication between customer
122 and merchant entity 104. The "equipment selection" page
includes the necessary routing information to direct the
information over the network 106 to the merchant computing system
120. The customer submits the information entered into the
"equipment selection" page to the merchant entity 104 over network
106 through an input device such as a pointing device, keyboard,
touch sensitive surface, speech recognition unit or other suitable
input device. In the specific example shown in FIG. 10, the
customer selects the "submit" button 1010 located at the base of
the "equipment selection" page in order to submit the entered
information to the merchant entity 104.
[0151] Computation of Price Quote (Step 6000)
[0152] The information obtained from the user through the "railway
transportation ordering" page 700, the "route display" page 900 and
the "equipment selection" page 1001 is received and processed by
the merchant computing system 120 to generate a price quote for the
transportation service selected by the customer.
[0153] In a non-limiting implementation, with reference to FIG. 2b,
program element 218 of the merchant computing system 120 includes a
pricing engine module operative to calculate a price quote for the
transportation service selected by the customer. The pricing engine
module uses data elements included within the customer database
222, the routing database 224, the equipment database 226, the
commodity database 228 and a series of pricing equations (see
equations 1-6 below) in order to calculate a price quote for the
services selected by the customer.
[0154] The processor 212 of the merchant computing system 120
accesses the databases described above in order to access data
elements to be used in the pricing equations.
[0155] It is within the scope of the invention for the pricing
engine module to compute a price for the transportation of goods
based on a route having at a first segment, and a second segment,
wherein the goods are transported on the first segment by a mode of
transportation other than a train, and the goods are transported on
the second segment by a train. The pricing engine module computes
the price of the goods on the route based at least in part on the
basis of characteristics of the first segment entered by the
customer and characteristics of the second segment entered by the
user. Characteristics of the first segment and second segment of
the routes can be entered by the user in the "railway
transportation ordering" page, the "route display" page, and the
"equipment selection" page. For example, based at least in part on
the information entered by the customer about the origin of the
first segment, and information identifying the location of the
train station, the merchant entity 104 can determine that
transportation by trucking will be required. Trucking charges for
the first segment can be based on the information about origin and
destination entered by the customer. Based on this information, the
price engine module can assess the distance between the two
locations and can compute the trucking charges based on the
assessed distance.
[0156] The computation of the price will be described with
reference to FIG. 11 of the drawings. At step 1100, the pricing
engine module receives the information obtained from the user
including commodity type, commodity weight, railcar type and
selected route. At step 1102, the pricing engine processes the
commodity type, commodity weight and railcar type to derive the
number railcars required for transporting the commodity. To
calculate the number of railcars required to transport the
commodity specified by the customer, the pricing engine makes use
of total weight of the commodity and the commodity type specified
by the user through the "railway transportation ordering" page 700
as well as the weight carrying capacity of the railcar selected by
the user. In order to obtain the weight carrying capacity of the
railcar selected by the user, the pricing engine accesses the
equipment database 226 to locate the entry that corresponds to the
railcar selected by the user. The pricing engine then computes the
number of railcars required. Mathematically, the number of railcars
required may be expressed as follows:
# railcars required = total weight of commodity capacity of
selected railcar Equation 1 ##EQU00001##
[0157] The number of railcars required is rounded up to the nearest
whole number.
[0158] Once the pricing engine has calculated the number of
railcars required, the line haul price for each segment of the
route is calculated at step 1104.
[0159] The price of the railway service is based at least in part
on the type of commodity or goods being transported. As such, the
pricing engine searches commodity database 228 for an entry
corresponding to the STCC of the commodity specified by the
customer. Once the corresponding entry is found, the associated
cost per distance data element (STCC $/mile) is extracted.
Following this, the pricing engine searches equipment database 226
to locate the railcar selected by the user and extracts an
associated ownership factor associated to the selected railcar. As
such, the cost of the shipment of goods is based at least in part
on the ownership of the railcars selected by the customer. As shown
in table 3, the ownership factor is a function of the railcar and
of the customer making the request. Table 3 is reproduced below for
the user's convenience.
TABLE-US-00005 TABLE 3 Equipment database Carrying Ownership
Chargeable Cost per Equipment Capacity Ownership Factor services
mile Flatbed 2 tons Merchant Entity 1 for all Cleaning 15.95
Unloading Flatbed 1.5 tons Customer 2 .5 for Cleaning 15.95
"Customer 2" Unloading 1 for everyone else Flatbed 2 tons Railway
Carrier 2 0.8 for Cleaning 15.95 "Customer 1" Unloading 1.5 for
everyone else Tanker 5 tons Merchant Entity 1 Cleaning 20.00
Unloading Tanker 3 tons Customer 1 .5 for Cleaning 20.00 "Customer
1" Unloading 1 for everyone else Boxcar 2 tons Merchant Entity 1
Cleaning 5.95 Unloading Boxcar 3.5 tons Customer 3 .75 for Cleaning
5.95 "Customer 3" Unloading 1 for everyone else Hopper 6 tons
Merchant Entity 1 Cleaning 17.99 Unloading
[0160] Once the corresponding equipment factor has been identified,
for each segment of the route, the pricing engine searches the
routing database 224 to identify the owner of the segment and the
distance associated to the segment. The pricing engine then
computes the base line-haul price for each segment. The calculation
of the base line haul price for a given segment can be expressed
mathematically as follows:
Base Line haul
price.sub.segment=(stcc.sub.$/distance*distance.sub.segment)+(stcc.sub.$/-
weight*weight*equipment ownership factor) Equation 2
where stcc.sub.$/distance is the cost per distance data element
associated to the commodity being transported, distance.sub.segment
is the length of the current segment, stcc.sub.$/weight is the cost
per unit weight associated to the commodity being transported,
weight is the weight of the commodity being transported in the
current railcar and "equipment ownership factor" is the ownership
factor associated to the railcar used to transport the commodity.
The above computation allows providing a price for the
transportation of a commodity that is conditioned on the ownership
of the equipment used to transport the commodity. In addition the
above computation allows providing a price for the transportation
of a commodity that is conditioned on the route selected by the
user. In light of the above, it will be readily apparent to the
person skilled in the art that other suitable equations for
computing a Base Line-haul price for a segment may also be used
without detracting from the spirit of the invention.
[0161] Although the equipment ownership factor has been shown to be
a separate factor in equation 2, it is within the scope of the
invention for the ownership factor to be incorporated within either
one, or both, of the stcc.sub.$/distance and stcc$.sub./weight
factors. It should also be appreciated that the factors used in the
equations, such as stcc.sub.$/distance and stcc.sub.$/weight do not
have to be fixed values and can instead be functions of such
variables as distance and weight. In a non-limiting example of
implementation, the stcc.sub.$/distance factor used in equation 2
can be a certain value for a predetermined distance, such as 500
km, and can then drop by an incremental amount for each additional
100 km traveled. It is within the scope of the invention for all
the factors used in the equations described herein to be a function
of other factors. Such variations in the factors used in the
equations disclosed herein will be apparent to those skilled in the
art.
[0162] Alternatively, the base line haul price may be a flat rate
for transportation of a railcar over the segment.
[0163] Optionally, where an ownership factor is associated to the
segment, the Line Haul Price.sub.segment is conditioned in the
basis of the segment ownership factor identified in the routing
database 224. Mathematically, this may be expressed as follows:
Line Haul Price.sub.segment=Base line-haul
price.sub.Segment.times.segment ownership.sub.factor Equation 3
[0164] The above computation allows providing a price for the
transportation of a commodity that is conditioned on the ownership
of the segment of the route used to transport the commodity. In
light of the above, it will be readily apparent to the person
skilled in the art that other suitable equations for computing a
Base Line-haul price for a segment may also be used without
detracting from the spirit of the invention.
[0165] On the basis of the above, a line-haul price for each
segment is calculated.
[0166] Following this, at step 1106, the pricing engine calculates
the price of transporting one railcar carrying the desired
commodities from the origin location to the destination location
specified by the customer. In a non-limiting example, the price per
railcar is expressed as the sum of the line haul rate and
chargeable services charged. The calculation of the price of
transporting one railcar from the origin location to the
destination location specified by the user can be expressed
mathematically as follows:
Price.sub.$/railcar=.SIGMA.[(line haul price.sub.merchant
segment)*BU.sub.coeff origin SPLC*BU.sub.coeff destination
SPLC]+.SIGMA.[line haul price.sub.NON merchant
segment]+.SIGMA.[chargeable services] Equation 4
[0167] Where .SIGMA.[chargeable services] is the sum of the prices
for chargeable services (default and user selected), the
BU.sub.OriginSPLC and the BU.sub.DestinationSPLC represent a charge
levied for the origin and destination SPLC's. In a non-limiting
implementation, the chargeable service price may be obtained by a
rate lookup in a table of prices for chargeable services. The table
of prices is stored in the data segment 220 of memory unit 216
(shown in FIG. 2b). The rate of a chargeable service may be a
function of a number of parameters including the type of chargeable
service, the commodity being transported, the location of the
chargeable service to be rendered, the customer profile and the
equipment (railcar) being used. Mathematically, this may be
expressed as follows:
Chargeable service rate=Rate Price[Service,Commodity,
Location.sub.splc,Customer.sub.ccid,Equipment] Equation 5
[0168] Once the price per railcar has been calculated (equation 4)
and the number of railcars required to transport the quantity of
commodity has been calculated (equation 1), at step 1108 the price
quote for the transportation service selected by the customer can
be obtained by multiplying the price per car by the number of cars.
Mathematically, this can be expressed as follows:
price quote=Price.sub.$/railcar*number of railcars required
Equation 6
[0169] The pricing engine then releases the computed price
quote.
[0170] Marketing Options and Adjustment of Price Quote (Step
7000)
[0171] Once an initial price quote has been calculated by the
pricing engine, the initial price quote can either be submitted to
the customer over the network 106, or alternatively can be
processed by a marketing engine implemented by program element 218.
The marketing engine allows modifying the price generated by the
pricing engine on the basis of various criteria including, but not
limited to, the customer's profile and a particular marketing
campaign.
[0172] In a first non-limiting example, the initial price quote is
adjusted by the marketing engine on the basis of the customer
profile associated to the customer. As previously described,
registered customers of the merchant entity are associated to
customer profiles which include data elements indicative of
discount rates to which the associated customer is eligible. The
marketing engine is operative to interact with customer database
222 to identify an entry in the customer database 222 associated to
the customer using the price quotation/ordering system 100, in
order to extract a discount data element associated to the
customer. For example, if the customer is a registered customer,
the marketing engine accesses the customer database 222 and
determines if the customer is eligible for a discount. If the
customer who submitted the transportation service quote request is
associated to a certain discount rate based on, for example, the
fact that the merchant entity has decided that that specific
customer is a valued customer, then the initial price quote
determined by the pricing engine is adjusted based on the discount
rate associated to that customer. Mathematically this may be
expressed as follows:
price quote=initial price quote*(1-discount rate) Equation 7
[0173] It is to be appreciated that the discount may be expressed
in terms of absolute dollar amount or absolute dollar amount per
car. Mathematically this may be expressed as follows:
price quote=initial price quote-discount Equation 8
[0174] It is within the scope of the invention for different
discount rates to be associated to different customers. For
example, the profile of customer 1 within the customer database
222, may indicate that customer 1 is eligible for a 10% discount
rate on all quotes, while the profile of customer 2 may indicate
that customer 2 is eligible for a 20% discount rate on all quotes.
Alternatively, different discount rates may be assigned to a same
customer dependent upon the commodities being transported, the type
of railcar being used, the date of the transportation service, the
origin or transportation, the destination of transportation, the
distance of transportation or any other suitable criteria such as
time data. The time data can include a time of day, a week, a month
or a time of year such as a season. As such, the discount data
element is associated to a plurality of discount eligibility
criteria, such as specific customer, and service requested by the
customer. For example, the profile of customer 1 may indicate that
customer 1 is eligible for a 10% discount on all quotes relating to
the transportation of wheat and no discount for the transportation
of any other commodity. In another example, the profile of customer
1 may indicate that customer 1 is eligible for a 10% discount on
all quotes where a flatbed car is used and 15% where a refrigerated
railcar is used and no discount for any other equipment type.
[0175] In a second non-limiting implementation, the initial price
quote is adjusted by the marketing engine on the basis of a
particular marketing campaign for which the railway transportation
service selected by the customer qualifies. In this specific
implementation, the data segment 220 of memory unit 216 (shown in
FIG. 2B) further includes a database of promotional events (shown
below) including a plurality of entries, each entry in the database
of promotional events being associated to a certain promotional
event. Entries in the database of promotional events can include
such things as origin locations, destination locations, distances,
types of equipment, type of commodity and time data. The time data
can include a time of day, a week, a month or a time of year such
as a season. A season can be a calendar season such as spring,
summer, fall and winter, or alternatively a season can be any
period of the calendar year defined by the merchant entity. For
example, the merchant entity may define the period between November
and February as a "high traffic" season. The entries in the
database of promotional events are modifiable by account manager at
the merchant entity 104 such as to allow the promotional events to
be easily modified. Each entry includes a plurality of fields
including the criteria required for a customer to be eligible for
the promotional events as well as the applicable discount. A
non-limiting example of implementation of a database of promotional
events is shown below:
TABLE-US-00006 TABLE 5 Database of Promotional Events Criteria
Applicable Discount 1. Use of refrigerated cars 10% 2. In January
1. Origin of the 100$/car transportation in California 1. Use of
flatbed cars 5% 2. Destination of the transportation in California
1. Use of flatbed cars in 200$/car February 1. Transportation of
25% petroleum products 2. February 3. Distance over 500 km
[0176] The database of promotional events maps information
identifying discount eligibility criterion to a discount data
element. A marketing engine is operative to interact with the
database of promotional events to identify one or more promotions
for which the customer, or the transportation service selected by
the customer qualifies. The marketing engine is further operative
to identify at least one entry in the database of promotional
events associated to a certain discount eligibility criterion and
to a certain discount data element. In a non-limiting example, if
the customer qualifies for a discounted price under one marketing
promotion, the initial price quote is adjusted according to the
discount rate or discount amount described in the marketing
promotion. As can be seen, the database of promotional events
includes entries indicative of at least two discount eligibility
criteria. For example, in order to be eligible for a discount or
10%, the discount eligibility criteria of "use of refrigerated
cars", as well as "transportation within the month of January" must
be satisfied. In addition, if the customer qualifies for a
discounted price under two or more marketing promotions, the
initial price quote is adjusted according to the discount rate or
discount amount that is the most advantageous to the customer. In
an alternative implementation, if the customer qualifies for a
discounted price under two or more marketing promotions, the
initial price quote is adjusted according to all the applicable
marketing promotions.
[0177] For example, the database of promotional events indicates
that the merchant entity 104 is offering a discount wherein during
the month of February a 25% discount is applied to the
transportation of petroleum products that are being transported
over 500 km. If the railway transportation service requested by the
customer satisfies these criteria, the railway transportation
service is eligible for this discount and the initial price quote
generated by the pricing engine will be adjusted accordingly.
[0178] As can be seen from equations 7 and 8, the price quote is
computed at least in part on the basis of a discount data element
derived from either a marketing campaign, a customer profile, or a
combination of the two.
[0179] Once the initial price quote has been adjusted based on
customer profile, or on the basis of a particular marketing
campaign, if eligible for either, the price quote (i.e. the price
for the shipment of goods) is transmitted over the computer network
106 to be displayed on the screen of the customer computing unit
112. The price may be transmitted to the customer computing unit
112 for display via the graphical user interface which is
implemented by program element 218 from the merchant computing
system 120 and automatically launches to aid customer 122.
Alternatively, the price may be transmitted to the customer
computing unit 112 via e-mail, snail-mail or any other suitable
manner implemented by program element 218.
[0180] Although it has been disclosed above (equations 7 and 8)
that an initial price quote is modified on the basis of a discount
data element to determine a discounted price for a shipment of
goods, it should be expressly understood that the discount rate may
be incorporated into any of the above equations such that the
initial price quote calculated is indicative of a discounted rate
without having to be modified. For example, it is within the scope
of the invention for the merchant entity 104, upon establishing
that the customer is eligible for a discounted rate, to modify each
factor within the above described equations such that the initial
price computed is indicative of a discounted rate and it is not
necessary to adjust the initial price quote.
[0181] Display Price Quote (Step 8000) and Accept, Reject or Save
Price Quote (Step 9000)
[0182] The price quote is received at the customer computing unit
112 and is displayed on a "price display" page that is preferably
in the form of a graphical user interface, and the customer either
accepts or rejects the quote. Each quote is typically associated to
a certain validity period after which the quote is no longer
active. A typical validity period has a duration of 2 weeks,
however, shorter or lengthier validity periods may be used without
detracting from the spirit of the invention.
[0183] In a non-limiting example of implementation, when
applicable, both the initial price quote and the discounted price
quote are displayed to the user in order to allow the latter to
view the savings.
[0184] In another non-limiting example of implementation, when
applicable, the price quote is displayed along side advertising for
upcoming promotions offered by the merchant entity 104.
[0185] The "price display" page allows the user to either accept,
reject or save the price quote provided by the merchant entity 104.
In a non-limiting implementation, the "price display" page includes
a set of button elements associated to "accept", "reject" or "save"
functions which may be selected by the user through a pointing
device, touch sensitive screen, keyboard, voice recognition unit or
other suitable input device.
[0186] If the quote is rejected, the customer's railway
transportation order is deleted from the merchant computing system
120. The customer may submit through the network a reason for the
rejection. This may be done through email, or through writing a
message in a pop-up text box that appears when the customer rejects
the quote. The "price display" page includes the necessary routing
information to direct the message back to the merchant entity 104.
The customer may also choose to provide the merchant entity 104
with the reasons for the rejection through alternate means such as
by telephone or fax.
[0187] If the quote is accepted then the order for the railway
transportation service relating to that price quote is submitted to
the merchant entity 104 and is stored in the memory 206 of the
merchant computing system 120. In addition, the information related
to the price quote is added to a list of quotes that have been
previously accepted by that specific customer in the customer
profile at the merchant computing system 120. The "price display"
page includes the necessary routing information to direct the
accepted price quote to the merchant entity 104.
[0188] Finally, the customer may choose to save the quote and delay
responding to the quote until a later time. In this case, the
merchant computing system 120 stores in its memory 206, in
connection with the specific customer, the information related to
the price quote and the railway transportation service to which the
price quote corresponds. The time delay after which the price quote
is no longer valid is also stored. The "price display" page
includes the necessary routing information to direct the save
message back to the merchant entity 104. Active quotes associated
to given customers are stored on a computer readable storage medium
at the customer-computing unit 112 or at the merchant computing
system 120 and can be retrieved by the customer through the
computer network 106. A graphical user interface is also provided
to allow a customer to view the active quotes.
[0189] Although the detailed description describes extensively a
system for requesting a price quote for shipping goods by rail via
a web based interface, other embodiments are possible. For example,
user interfaces for gathering information relating to railway
transportation services desired by a customer may be sent to the
customer via electronic mail. Likewise, a list of potential routes
between a chosen origin and destination location, and a price quote
may also be submitted via electronic mail.
[0190] Although the above described specific examples of
implementation describe a railway price quotation/ordering system
100 where the computations of the price quote are effected at the
merchant computing system 120, embodiments of the invention where
the price quote is computed at the customer computing unit 112
remain within the scope of the invention. In such an embodiment, a
program element implementing the pricing engine, including any
required database information is sent from the merchant computing
system to the customer computing unit and launched at the customer
computing unit 112. It will also be apparent that a program element
"route determination algorithm" as well as the routing database may
also be implemented at the customer computing unit 112, or
downloaded at customer computing unit 112 from the merchant
computing system 120. In such a variant, upon receiving the origin
location and destination location, the program element implementing
the route determination algorithm derives a list of possible routes
between the origin location and destination location without
requiring interaction with the merchant computing system 120.
[0191] In addition, although the above described specific examples
of implementation describe the railway price quotation/ordering
system 100 in a client-server arrangement, an application suitable
for operating on a general purpose stand-alone digital computer
also remains within the scope of the invention. In such an
embodiment, the program element 210 and the data 220 described in
connection with the merchant computer system 120 are implemented on
a standalone computer.
[0192] Although various embodiments have been illustrated, this was
for the purpose of describing, but not limiting, the invention.
Various modifications will become apparent to those skilled in the
art and are within the scope of this invention, which is defined
more particularly by the attached claims.
* * * * *