[Top] [All Lists]

Re: [ontolog-forum] Foundation Ontology Primitives

To: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: Jawit Kien <jawit.kien@xxxxxxxxx>
Date: Tue, 2 Feb 2010 17:44:21 -0600
Message-id: <9f9644bb1002021544h5af52854jf3620f970e357468@xxxxxxxxxxxxxx>

On Tue, Feb 2, 2010 at 11:20 AM, John F. Sowa <sowa@xxxxxxxxxxx> wrote:
JK> In the hope that we can actually discuss some details about
 > ontologies and useful primitives, I submit the following table...

In an earlier note, Ronald suggested "Japan Wines Inc" as a test case.
I strongly endorse the idea of using case studies to explore and
compare different ontologies and methodologies.

Is the Japan Wines Inc example the same as that from:


Japan Wines, Inc., is a wine distribution center that needs a system for maintaining
product accountability. The system should maintain accountability of products, orders,
deliveries including orders from customers and orders to wineries, and updates to
products, customers, and wineries.
The system does not include issues that deal with employees, product pricing, and
customer and winery bills and payments.
The system should provide the means to keep a current list of the products offered by
Japan Wines. It should allow orders to be taken from customers over the phone. Customer
orders should be logged. The system should assign deliveries to delivery trucks, and it
should be able to record which deliveries have been completed, and which have not. It
should keep track of available, assigned, and total inventory levels, and automatically
adjust these levels as orders are placed and product is delivered. When available
inventory falls below minimum levels, the system should automatically generate orders
for more wine, and fax these orders to the appropriate wineries. Wine orders should be
logged. Once it is confirmed that a wine order has been received, the system should
automatically update the inventory levels accordingly.

There is also (in that same file)
A-4 Software and Information Life Cycle 411 8/95
Deliverable 1 Problem Statement (Deliverable I Narrative with revisions, resulting from analysis phase)

[1] Japan Wines, Inc. is a wine distribution center that needs a system for maintaining
product accountability.
[2] The system is to maintain accountability of products, orders,
deliveries including orders from customers and orders to wineries, and updates to
products, customers and wineries.
[3] Issues that deal with product pricing, customer and winery bills and payments,
and employees are not to be included in this system; a single order will not exceed
the capacity of a truck; and the wine distribution center does not accept backorders.
[4] Customers call in to order products and when the order is completed it is confirmed.
[5] Each order has a unique customer order number, and the date of the order is
automatically entered.
[6] The customer's telephone number is obtained either automatically by caller
identification or by a direct request; it is used to assist in identifying the unique
customer number, the customer name, and the customer delivery address.
[7] If the customer phone number does not enable the retrieval of the customer
number, then it is asked if the customer has ordered products before.
[8] If the customer has, then the customer information is updated, if not, a new customer
number is created and the customer name and delivery address are entered.
[9] Products are ordered by first entering the product number which is used
to display the product name.
[10] The quantity requested is then entered.
[11] The inventory is checked to see if the available inventory quantity
(total inventory minus inventory assigned to pending deliveries) is sufficient for
the request.
[12] If the requested quantity is not currently available, then what is available
is offered to the customer.
[13] After all of the products are ordered and confirmed, the order is logged
and the available inventory quantities are reduced to reflect the order.
[14] This wine distribution center does not accept backorders.
[15] At the end of the day, winery orders are automatically faxed to the wineries when the
available inventory quantity is less than the minimum stock quantity for any product.
[16] The quantity ordered is the maximum stock quantity reduced by the available
inventory quantity.
[17] The winery order has a unique winery order number, and the date
of the order is automatically entered.
[18] Wineries are identified by their phone numbers.
[19] The winery name and the winery fax number appear along with the phone
number on the winery order.
[20] Each product is obtained from only one winery, wineries receive only one
order per day no matter how many products are ordered, and the winery orders
are automatically logged.
[21] Each morning before customer orders are accepted, and only once per day, an
inventory status report is printed and all unfilled customer orders are assigned to a
delivery truck identified by a truck number.
[22] The inventory status report includes all products in inventory and specifies
the total, assigned, and available quantities.
[23] It also specifies the minimum and maximum stock quantities and the
quantities ordered the previous day.
[24] Assigned quantities for each product are pulled, then each customer
order is prepared and loaded onto the assigned truck.
[25] If the order is successfully delivered then the delivery instruction
ticket is checked 'Completed.'
[26] If the order isn't delivered then the delivery instruction ticket is
checked 'Re-Deliver.'
[27] The checked delivery instruction tickets are used to log the successfully delivered orders.
[28] Each delivered order depletes both the total inventory and the assigned inventory; the
available inventory is unchanged.
[29] New products are introduced frequently.
[30] For each new product a product number is created; the product name,
minimum and maximum stock quantities are set.
[31] An initial inventory quantity can be entered.
[32] The winery supplying the product is also entered.
[33] If the product comes from a new winery, then its name, phone number,
and fax number are entered.
[34] Product information can also be updated to reflect modifications to
product names, changes in the minimum and maximum stock
quantities, or adjustments to reflect actual total inventory.
[35] Wineries are also added or updated when necessary.
[36] Every product ordered on the same day from the same winery is placed on a single
winery order.
[37] Once receipt of a winery order is confirmed, the total and the available
inventory quantities are adjusted to reflect the products that have been received; the
receiving date is automatically entered and the receipt of the order is logged.

or some other one? like: from

[1] Japan Wines, Inc. is a wine distribution center.
[2] The business of this center is to manage the inventory of products and to distribute products to
retail shops corresponding to their orders.
[3] All the orders received in a day are processed on the next day.
[4] Every day the center checks the inventory and places necessary orders to wineries to keep the
inventory in proper level.
[5] This center is not responsible for accounting businesses such as product pricing, billing to retail
shops and handling bills from wineries.
[6] A more detailed description of the business is as follows:
[7] The center receives orders from retail shops by phone from 9:00 a.m. to 5:00 p.m..

[8] Figure 3 shows a recording form of an order received from a retail shop:

Order Form (from Retail Shop)
Order Reception No.:__________
Retail Shop No:___________
Retail Shop Name:______________
Item No. Item Quantity
________ ________ ________
________ ________ ________
Figure 3: Order Form (from Retail Shop)

[9] An order may consist of many detailed items (referring to products).
[10] Each detailed item is recorded in a line of the form.
[11] When the center receives an order, it immediately checks the inventory stock of each of the detailed
[12] The center takes back orders under the agreement with the retail shop.
[13] When the center accepts an order, each detailed order item is classified into one of two files:
'assigned ordered items' file and 'waiting ordered items' file.
[14] If the center has enough free stock for a detailed ordered item, it is recorded in the 'assigned
ordered items' file and the free stock quantity of the corresponding item is updated properly.
[15] Otherwise, it is recorded in the 'waiting ordered items' file.
[16] Every day after 5:00 p.m., necessary orders to wineries and instructions of deliveries are produced
as follows:
[17] Orders to wineries are made for the items whose free stock quantities are under the minimum stock
quantities so that their free stock quantities may become the maximum stock quantities.
[18] Figure 4 shows order form to wineries.

Order Form (to Winery)
Order Request No.:__________
Item No. Item Quantity
________ ________ ________
________ ________ ________

Figure 4: Order Form (to Winery)

[19] The minimum and maximum stock quantities are defined for each product.
[20] The center provides delivery instruction tickets to each delivery truck by gathering the ordered
items in the 'assigned ordered items' file, considering the destinations and the total amount of the
orders for each item.
[21] Figure 5 shows a delivery instruction ticket.

Delivery Instruction Ticket
Truck No.:___________
Order Reception No.___________
Result: _ accomplish _ re-deliver (mark suitable one)
Retail Shop Name:___________
Item No. Item Quantity
________ ________ ________
________ ________ ________

Figure 5: Delivery Instruction Ticket

[22] Next morning, each delivery truck picks up products from the warehouse according to the delivery
instruction tickets and delivers them.
[23] After delivery, it returns its delivery instruction tickets after marking either accomplish or redeliver
to report the result of the delivery.
[24] Products corresponding to 're-deliver' are brought back to the warehouse again.
[25] The center cancels out each entry of the 'assigned ordered items' file by reflecting 'accomplish'
result of the returned delivery instruction tickets by 5 p.m..
[26] The ordered items that become 're-deliver' remain unchanged and are included in the delivery
instructions for the following day.
[27] New products from the wineries are introduced frequently from 10:00 a.m. to 4:00 p.m..
[28] When new products are introduced, the center assigns them to the detailed ordered items in the
'waiting ordered items' file in order of first-in first-out, reclassifies them into the 'assigned ordered
items' file and updates the free stock quantities properly.

These two examples look similar, but I'm not sure which is the exact one suggested by Ronald

On Tue, Feb 2, 2010 at 11:20 AM, John F. Sowa <sowa@xxxxxxxxxxx> wrote:
JK> In the hope that we can actually discuss some details about
 > ontologies and useful primitives, I submit the following table.. 
As a second test case, I suggest the hotel reservation system that
I included in Appendix C of my KR book:

For completeness:

Appendix C: Extended Examples

Example is the school of mankind, and they will learn at no other.

Edmund Burke, "Letters on a Regicide Peace"

This appendix is from the book Knowledge Representation: Logical, Philosophical, and Computational Foundations, by John F. Sowa, Brooks/Cole Publishing Co., Pacific Grove, CA, 2000.

C.1 Hotel Reservation System

The following example, which describes a prototype reservation system for the National Park Service, is taken from a sample specification developed in the NCITS T2 Committee on Information Interchange and Interpretation. It illustrates the kind of informal specifications that a systems analyst or knowledge engineer must translate to a computable form.

The proposed system is being designed for the Old Faithful Inn Hotel in the Yellowstone National Park, the El Tovar Hotel in the Grand Canyon National Park, and the Ahwahnee Hotel in Yosemite National Park. The hotels can be uniquely identified by their names. The hotels have a normal address (line 1, line 2, city, state, zip code) and each one has a telephone number and a fax number. Each hotel has a rating from Mobil Travel Service of a certain number of diamonds (from one to five). Hotels may be open for only a certain period of a year. They may also have seasonal rates that reflect the change in demand for their rooms. Room rates are constant for different types of rooms during a season. Reservations are accepted up to thirteen months in advance (e.g., in January 1999 reservations can be made through January 2001). Reservations cannot be made in a hotel before it is open for business or after it is scheduled for permanent closure.

Rooms are of different types and are designated either smoking or nonsmoking. When making a reservation, the individual will select a room type and a smoking category. If a room is changed to a different type or smoking category, the change is effective on a certain date.

Reservations can be made by an individual or a travel agent. Reservations are confirmed for a specific time period, room type(s), smoking category(ies), and rate(s). An individual will give his or her name, address (see example above), phone, and possibly a fax number. A travel agent also gives this information, plus the agent's name and the travel agency identification number. This number will identify the specific travel agency making the reservation, its address, its telephone, and its fax number. Each reservation is made by a reservation clerk and is identified by a sequential number. When a reservation is complete, a timestamp is made for audit purposes.

If a reservation cannot be confirmed, the reservation clerk will ask if the guest would like to be waitlisted. The waitlist is for either a specific hotel or a category of hotels (number of diamonds) at a national park. The waitlist is for a certain period of days from the reservation date. If a room(s) matching the request on the reservation becomes available within the waitlist time period, a confirmation is automatically sent. On the day before the waitlist is to expire, the guest is contacted and asked if his or her place on the waitlist should be extended or if the room type(s) and smoking category(ies) could be changed to allow a reservation to be confirmed.

When a reservation is made, it must be either for a 16.00 hour arrival or guaranteed. A 16.00 hour arrival time allows a reservation to be made and at 16.00 hours on the date of arrival the reservation is automatically canceled without a penalty being assessed to the guest. To hold a reservation after 16.00 hours, the guest must guarantee the room. The guarantee is implemented through a credit card. A guest tells which type of credit card is to be used to guarantee the room and he or she must provide the credit card number and an expiration date.

If a guest with a guaranteed reservation does not show up and does not notify the hotel that he or she will not arrive, then the first night's rent for each reserved room will be charged against the credit card. Guests are encouraged to cancel their reservations if their travel plans change so that others on the waitlist can be accommodated. Guaranteed rooms can be canceled until 16.00 hours on the date of arrival and individuals then receive a cancellation number that insures that they will not be charged for the room. If a guaranteed reservation is canceled after 16.00 hours on the date of arrival then the hotel attempts to rent the room(s). If the room(s) are rented (this is decided based on the time of the cancellation and does not take into account the type or smoking category of the room), then a message is sent to the guest stating that he or she has not been charged for the room. If the room(s) are not rented, then the hotel management decides whether the guest will be charged and will be sent a notice that he or she has been charged or not charged.

A confirmation is sent to the guest when the reservation is confirmed. Each confirmation is time stamped for audit purposes. The confirmation includes all information pertinent to the reservation.

The cancellation notice is sent to the guest if a cancellation number is issued. The notice identifies the reservation and the clerk who canceled the reservation. A time stamp validates that the reservation was canceled in time to avoid a penalty.

Check-in occurs upon the arrival of the guest at the hotel. The time of check-in is noted and the departure date is confirmed. Room number(s) are assigned and keys are given to the guests. If a credit card is to be used for payment, then the information previously noted is collected. A guest may use a different credit card for the stay than the one used to guarantee the reservation. The Park Service also has a policy that hotel bills above a certain limit must be cleared before the guest is allowed to remain in the hotel. The check-in process notifies the guest of the limit he or she must abide by. Because of the flexible reservation policy, walk-in guests without reservations are encouraged — especially right after 16.00 hours.

At the time of check-in a guest may designate one room as the primary room and specify the other room(s) that will have their charges appear directly on the primary room's invoice. This allows a family to have only one bill even though it is occupying several rooms. Invoices show which room made each charge so that guests can better audit their own bills. Guests who have regularly paid their bills when they reach their account balance limits normally check out on their departure date. All guests in rooms that charge a primary room must check out when the guests in the primary room check out. Check-out is required to occur by 12.00 hours, but can be extended to 14.00 hours on request. Guests will be charged for the room if they are not checked out by the cited check-out time. The actual check-out time is used to prevent any further charges from being invoiced to a room. At check-out, each guest is given a copy of the invoice showing all charges and how the balance was cleared. If a guest does not make a payment when his or her account balance reaches the predetermined limit, the guest is automatically checked out. Extensions to stays are routinely made if rooms are available.

If anyone has better examples, please add them to the list.  But
let's keep the number of test cases sufficiently small that people
aren't overwhelmed by the amount of work.

John Sowa

I don't know, both of these examples are rather large. (as I guess a real-world scenario must be)
Can we come up with some that are a tad bit smaller ?

- JK

Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/  
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/ 
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx    (01)

<Prev in Thread] Current Thread [Next in Thread>