Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

EDI Through A Distributed Information Systems Approach

Nabil R. Adam Igg Adiwijaya Vijay Atluri Yelena Yesha


Center for Information Management, Department of Computer Science
Integration and Connectivity (CIMIC) University of Maryland and
MS/CIS Department, Rutgers University Baltimore County
180 University Ave, Newark, NJ 07102 Baltimore, MD 21228
fadam,atluri,gusadig@adam.rutgers.edu yeyesha@cs.umbc.edu

Abstract ploying translation software. Exchanging documents


The model of Electronic Commerce (EC) envisions electronically has been proven to be cost e ective in
the ability to send electronically large quantities of terms of shortening lead times and reducing labor
business transactions to a large number of sometimes and document handling costs as well as error reduc-
anonymous parties. The EDI standards (ANSI X12 tion [13, 7, 9]. This is especially true in cases where
and EDIFACT) provide a framework for formatting a high volume of transactions are exchanged between
given EDI message, called an EDI transaction. Al- few trading partners.
though the EDI paradigm provides an obvious im- EDI is an application-to-application layer protocol.
provement over the paper world, it su ers from sev- There are four tasks that are required to create and
eral problems; a major one being lack of exibility. deliver an EDI message: mapping, extraction, trans-
Introducing a new EDI transaction, or making a sim- lation and communication. Of these four tasks, three
ple change to an existing transaction is complex, te- of them are performed by software utilities: Extrac-
dious and time consuming as it has to be rst ap- tion software, translation software, and communica-
proved by ANSI ASC X12 committee and requires tion software.
updating of the EDI translation software. In this In 1979, the American National Standards Institute
paper, we propose a simple and straightforward ap- (ANSI) charted the ANSI X12 Accredited Standards
proach based on the distributed database concepts Committee to develop national EDI standards. In
that can eliminate the tedious process of standardiza- 1985, the United Nations established the EDIFACT
tion. EDI messages are exchanged through database [3, 14] Committee to develop a world wide EDI stan-
transactions via a database-to-database communica- dard. The EDI standards provide the framework for
tion rather than application-to-application. The most how a given EDI message should be formatted. The
signi cant outcome of this approach will be that EDI X12 committee is responsible for approving the EDI
will be transformed from an electronic analog of a busi- standards [in the US] and for processing any request
ness process in the paper world to a process supporting from business for modi cations, e.g., adding a new
Electronic Commerce. eld. The ASC X12 [6] standard has over 90 trans-
action sets that support the EDI needs of the U.S.
1 Introduction government, education, and speci c industries such as
The traditional model of Electronic Data Interchange insurance and banking. Over 100 additional standards
(EDI) facilitates the electronic exchange of business and guidelines are currently in development.
documents (such as purchase orders, shipping man- The current model of EDI provides an obvious im-
ifests, invoices and receipt notices) among trading provement over exchanging paper documents. How-
partners (e.g. a parts supplier and a nished prod- ever, the model of Electronic Commerce (EC) es-
uct manufacturer). These exchanges may take place poused by many, e.g. [5, 1], includes the ability to
across incompatible hardware and software platforms send large quantities of business transactions to a large
by embracing standard transaction sets and by em-  Based on personal communications with the Chair of the
 The work of V. Atluri was supportedin part by the National X12 committee, the committee's working budget is approxi-
Science Foundation under grant IRI-9624222. mately $3 million.

Authorized licensed use limited to: Universidad del Valle. Downloaded on March 07,2021 at 03:02:55 UTC from IEEE Xplore. Restrictions apply.
1060-3425/98 $10.00 (c) 1998 IEEE
number of sometimes anonymous parties through elec- tics of business transactions. In [2] we have proposed
tronic means. With regard to this vision, EDI as it a suitable transaction model that can capture the se-
is practiced today has the following main drawback. mantics of business transaction and developed a sys-
The complexity involved in making a simple change tem that maintains the history of negotiations; due
such as adding or deleting a eld to a transaction is to space limitations, we do not include this in this pa-
quite high. Currently, such a request has to be sub- per.) This results in simpler application programs and
mitted to the ANSI ASC X12 committee. If approval avoids the situation where multiple applications doing
is granted, the EDI translation software must be up- essentially the same. Third, unlike EDI, DBMS tech-
dated accordingly. As EDI is used by more diverse nology is well advanced and more commonly used. For
applications, some of the bene ts of standardization EDI to play a major role in Electronic Commerce it
may even be lost due to the diversity of implementa- must take advantage of the current advances in DBMS
tion conventions.y technology.
In this paper, we develop an approach that eliminates 2 EDI
the tedious process of standardization. We propose
a distributed database (DDB) approach where the Below are the major components of EDI standards.
EDI messages are exchanged through simple database 1. Data Element: A data element is an individual
transactions through a database-to-database commu- piece of data such as a date, a price or an organi-
nication rather than application-to-application. As a zation's name. Each data element is identi ed by a
matter of fact, although an EDI transaction is initi- reference number. For each data element, the dictio-
ated by an application program at the sender's end nary speci es the title, description, type, number, and
and received by another application program at the minimum/maximum length.
receiver's end, the data being sent is from a sender's 2. Data Segment: In the ASC X12 format, each line
database to that of receiver database. Therefore, it is referred to as a segment and each item within the
makes perfect sense if the sender's database manage- segment represents an element. For example, a pur-
ment system (DBMS) can directly send the desired chase order line item segment is made up of a part
data to the receiver's DBMS. For example, the pur- number, a part description, a quantity, a unit of mea-
chase order transaction initiated from the customer's sure and an item cost. Each segment has an identi er,
purchasing database updates the supplier's order re- a data element delimiter, element diagrams, data seg-
ceiving database instead of customer's purchasing ap- ment terminator and notes.
plication sending it to the supplier's order receiving
application. 3. Transaction Set: A transaction set is a speci c
document, such as a purchase order. Within a trans-
The above approach has several advantages. First, action set, there are three main areas: header area,
since this approach establishes a direct link between detail area and summary area.
the sender's database and the receiver's database, 4. Functional Group: This is a group of similar trans-
it eliminates the tedious and expensive process of action sets. Transaction sets within a functional group
translation.z Second, it allows the database transac-
tions to capture the semantics of the business trans- are assigned the same functional identi er.
actions through the DBMS. A typical business trans- For example, the ASC X12 set number 810 is a
action involves a series of negotiations among trading transaction set for invoice. It has 50 segments with
partners; for example, a purchase order may consist each segment containing information that is needed
of a series of negotiations, such as the generation of to make a complete transaction.
the purchase order at the customer site, copying it Figure 1 depicts the architecture for EDI consider-
into the supplier's database, the supplier's acknowl- ing two trading partners { a customer and a sup-
edgment of the message and supplier's functional ac- plier. To send a customer EDI-transaction, four ba-
knowledgment. Currently, it is the responsibility of sic tasks are performed: Mapping the elements in
the application program to keep track of the seman- the database, Extraction of pre-identi ed data from
y The Federal Government's Electronic Commerce Acquisi- the database, translation of extracted data into EDI
tion Team (ECAT) has recognized this fact and is moving format, and transmission of EDI-formatted message
toward harmonizing the implementation conventions (broad- through a communication medium. Below is a brief
casted in the edi-new-request). discussion of each of these four tasks.
z EDI software prices range from $5,000 for PC-based systems
to $250,000 for mainframe applications as stated in 1997 CMP Mapping: Is the process of identifying the elements
Media publications: \New Life for EDI?". within the database that are needed to create an

Authorized licensed use limited to: Universidad del Valle. Downloaded on March 07,2021 at 03:02:55 UTC from IEEE Xplore. Restrictions apply.
1060-3425/98 $10.00 (c) 1998 IEEE
Customer’s site
EDI messages Supplier’s site

Communication Communication
Softwre Softwre

EDI Translation Translation


Software EDI
Software Software Software
Extraction Extraction
Software Software

Purchasing Quotation
application Processing
application

Purchasing Request for Quotations


database database

Figure 1: The EDI Architecture

EDI message. Mapping is a one-time task that 3 Related Work


is done only once when a new EDI transaction Recently, several researchers have addressed the prob-
type needs to be added. EDI software does not lem of reducing the rigidity of the EDI paradigm. In
perform this task. [12], Steel proposes an approach that relaxes the rigid
Extraction: Is the process of collecting the pre- standards of the current EDI, where data can be di-
identi ed data and placing it into a usable for- rectly transmitted without having it to conform the
mat. Generally, the data are extracted from the EDI standards. This approach would reduce the num-
database and restructured into a at le. The ex- ber of segments in a purchasing interchange structure
act structure of the at le is normally speci ed from the maximum of 157 used in the EDIFACT mes-
by the translation software developer. sage to a maximum of 12. To combat the variations in
the labeling and descriptions, Steel maintains a Basic
Translation: For outgoing messages, once the neces- Semantic Repository (BSR), which is a standard dic-
sary data are in a at le, generation of an actual tionary that maintains the appropriate mapping of the
EDI message can be achieved using translation labels and descriptions.
or formatting software. Translation software ar- In [8], Lehmann proposes an ontology-based EDI,
ranges the data in the exact structure necessary which uses a concept dictionary that is similar to the
to meet the EDI standards requirement. BSR described above. The concept dictionary stores
Communication: The actual transmission of the the semantic de nition of the meaning of each EDI
EDI message is controlled by communication soft- element, which can be expressed in a semantic net-
ware, which manages and maintains phone num- work or a standard logic format. This approach to
bers of trading partners, performs automatic di- EDI is done in two phases. In the rst phase, the
aling and up/downloading, and also produces an trading partners negotiate by exchanging the ontolo-
activity log. Each EDI message is enclosed in an gies, and type-de nitions and synchronize their con-
envelope that contains the message's destination cept dictionaries. This negotiated ontology is the key
address and EDI transaction type as a header and to exibility. The second phase is the actual inter-
error checking codes (such as a check-sum) as a change of transactions. This approach, like the cur-
trailer. For incoming EDI messages, the reverse rent EDI protocols, will not specify the form of the
process occurs. actual commercial transactions, but will prescribe the
means by which two trading partners' computer sys-
In [2], we present a simpli ed purchasing scenario to tems will reach an agreement on the common terms
illustrate how EDI works. and concepts and the set of data needed for a trans-

Authorized licensed use limited to: Universidad del Valle. Downloaded on March 07,2021 at 03:02:55 UTC from IEEE Xplore. Restrictions apply.
1060-3425/98 $10.00 (c) 1998 IEEE
action. [11, 4]. The second category of heterogeneity occurs
In the area of heterogeneous databases, Papakon- when there is a disagreement about the meaning, in-
stantinou et al. [10] address the problem of provid- terpretation, or intended use of related data. In this
ing integrated access to diverse information sources, paper, we concentrate our attention on the second cat-
such as SQL databases, object repositories, knowledge egory.
bases, le systems and document retrieval systems.
They propose an object-based information exchange
4.1 Architecture
model that enables information exchange in a hetero- Figure 2 depicts our distributed system architecture
geneous environment. In this model, every data object for EDI. It consists of a communication module to fa-
is associated with a self-describing label. cilitate exchange of messages among the trading part-
ners. When a trading partner sends an EDI mes-
Among the three approaches described above, the rst sage, the communication module assigns the destina-
two require that the trading partners exchange their tion address for routing this message. In addition,
semantic dictionaries (BSR in the rst case and con- the communication software may provide security ser-
cept dictionary in the second case), and thus prohibit vices such as con dentiality and integrity of the mes-
their use when two new partners wish to exchange sage as well as authentication of the sender and non-
messages. On the other hand, if we adopt the third repudiation of the receiver. The details are provided
approach to EDI, although it does not require such in Subsection 4.2.
a prior exchange of semantic data, it results in very
long messages. In the following section, we present When two trading partners start transacting with each
our distributed systems approach. other, they have to resolve the semantic heterogeneous
issues. In other words, to interpret the sender's trans-
4 Distributed Systems Model action correctly, the receiver's database has to main-
Our distributed systems approach re-de nes EDI from tain the necessary translation information at its site.
an application-to-application level to a database-to- To accomplish this, we use a pro le manager at each
database level. In particular, the database manage- trading partner's site. For each type of transaction,
ment systems at the various trading partners will co- the pro le manager maintains a pro le for every one
operate while remaining autonomous and allow only of its trading partners in its pro le base. After resolv-
partial and controlled access to their local data. The ing the semantic heterogeneity issues by comparing its
business transaction can be treated as a database own pro le with that of the sender's, the pro le man-
transaction issued by a user from the sending trading ager hands over the message to the DBMS, which is
partner which will be received by the DBMS at the now in the form of a local database transaction. In the
receiving trading partner. Speci cally, we allow the remainder of this section, we explain each component
exchange of messages from one database to another of our architecture in detail.
rather than from an application-to-application. In or- 4.2 Communication Module
der to apply our approach, we rst need to resolve the Traditionally EDI has been done via value added net-
heterogeneity issues among the trading partners since works (VANs) that provide dial up access to a desig-
the DBMS at each trading partner's site may be dif- nated mailbox for trading partners to send each other
ferent because of one or more of the following reasons business transactions. VAN acts as a trusted third
| di erent underlying data models, various DBMS party to insure that EDI sent via the VAN are not
products, variety of platforms, and di erent database compromised in any way. VANs provide, integrity, au-
schema. thentication and acknowledgment services. Moreover,
In such a federated environment, issues such as con- since it is a private network, it provides con dentiality
currency control, failure and recovery, and database of the message as well. However, message exchanges
schema become complicated to handle because indi- via the VAN are not only slow but quite expensive.x In
vidual DBMSs do not wish to sacri ce their auton- contrast, users can make use of the high speed TCP/IP
omy; several researchers have addressed these issues, networks like the Internet. Before we adapt to this ap-
e.g. [11] and we plan to take advantage of this work. proach, security must be provided at di erent levels:
The various aspects of heterogeneity can be divided
primarily into two categories: those due to the di er- (1) Must ensure secure communication of the transac-
ences in DBMSs and those due to the di erences in tion: This includes con dentiality and integrity of the
the semantics. The former category includes di er- x Mobil reports that VAN costs exceed $100,000 per year
ences in structure, constraints, and query languages (http://www.pcweek.com/archive/1415/pcweek0081.html).

Authorized licensed use limited to: Universidad del Valle. Downloaded on March 07,2021 at 03:02:55 UTC from IEEE Xplore. Restrictions apply.
1060-3425/98 $10.00 (c) 1998 IEEE
Customer’s site Supplier’s site

Communication Communication
Module Module
Profile Base
Profile Base

Profile Profile
Manager Manager
Purchasing Order Processing
application application

DBMS DBMS

Purchasing customer orders


database database

Figure 2: The Distributed System Architecture for EDI

data. other. After this is accomplished, the trading part-


(2) Must support non-repudiation of receipt: That is, ners simply exchange data, i.e., the instance transac-
the intended recipient of the transaction has received tion. On the other hand, if there is only a sporadic
the transaction. exchange of EDI messages among the trading part-
ners, then they do so by the complete transaction. In
(3) Must support digital signature: This ensures the the following, we present the three transaction types.
authenticity of the sender.
Commercial systems such as Templar can be used to 4.3.1 The de nition Transaction
provide secure communication between trading part-
ners using RSA encryption techniques to guarantee Each de nition transaction consists of
con dentiality and integrity of data, digital signatures a definition_name, a set of objects where each ob-
and non-repudiation.{ ject in turn is of the form object_id, object_name,
4.3 Transaction Types which the name used to store the object (typically the
eld name), object_type, which is the type of the
Our approach relies on three new transaction types { object such as string, number etc., object_units, the
the de nition, the instance, and the complete transac- default units in which the object can be measured, and
tions. Although these transactions types are similar object_default, which is the speci ed default value.
to the OEM model in [10], they di er from the OEM Formally Tdef = < name; (o1 ; o2; : : :; on) >.
in a number of ways. First, in OEM each object is
associated with a self describing label. While it is An object oi in Tdef may consist of other objects, thus
essential in case of OEM since it has been proposed giving a nested structure to Tdef . The typical struc-
for a heterogeneous database environment, it is ex- ture of the de nition transaction is given in Figure
pensive, and moreover, not necessary to include a self 3.k
describing label in each EDI message. This is because, 4.3.2 The instance transaction
unlike database transactions, the EDI messages are ex-
changed among known and limited trading partners in The instance transaction (Tinst) comprises of the the
most cases. Thus according to our approach, the def- name of the corresponding Tdef and the values of each
inition transaction is exchanged among the new trad- object in Tdef . The structure of instance transaction
ing partners and is used to build the pro les of each is shown in Figure 4.3.1. Each row in this gure cor-
{ Information
responds to an instance of the de nition transaction.
on Templar can be obtained at
http://www.edm.co.nz/product/premenos/templar.html and k list indicates that the type of de nition-name is an ordered
http://www.templar.net/ set of objects (i.e. object1, object2, ... objectn).

Authorized licensed use limited to: Universidad del Valle. Downloaded on March 07,2021 at 03:02:55 UTC from IEEE Xplore. Restrictions apply.
1060-3425/98 $10.00 (c) 1998 IEEE
<definition-name, list, {object1, object2, ... objectn}>
object1 is <object1-name, object1-type, object1-units, object1-default>
object2 is <object2-name, object2-type, object2-units, object2-default>
...........................................
objectn is <objectn-name, objectn-type, objectn-units, objectn-default>

Figure 3: The Structure of the de nition Transaction


<definition-name, "{value1, value2, ... valuen}"
"{value1, value2, ... valuen}"
.............................
"{value1, value2, ... valuen}">

Figure 4: The Structure of the instance Transaction

4.3.3 The complete transaction assigned to a real world object may di er at both the
trading partners, such as clothes in one end and gar-
The complete transaction (Tcomp ) is in fact a combina- ments at the other end. Such mismatches are resolved
tion of both the de nition and instance transactions. using personal negotiations or using an ontology. Af-
It comprises not only of the description of each ob- ter resolving these mismatches, an object-name tuple
ject, but also of the actual values of the objects. The is constructed and maintained for this trading partner
structure of the complete transaction is given in Fig- in the pro le base.
ure 4.3.1. We explain in Section 5 how each type of 2. Object-format mismatch: Object format describes
transaction is used in our approach. the data type of the object. An object may have a data
4.4 Ontology format of a string, number, or date. Two trading part-
ners may maintain the same objects (e.g. part no),
Ontology, in a database sense, is a complete concep- but having two di erent formats (i.e. one partner
tual schema of a speci c or broad domain. It also maintains the part no as number while the other uses
includes a conceptual schema of relations and con- string). Such mismatches can be resolved by utilizing
straints [8]. In carrying out the EDI transaction, the a format reference list and ontology as part of the pro-
meaning of terms used in the EDI transaction needs le base. After resolving the mismatches, an object-
to be formally speci ed. This is particularly impor- format tuple is constructed and stored in the pro le
tant in the mapping process. The traditional approach base.
of specifying the term used in the EDI transaction is 3. Object-sequence mismatch: Object sequence iden-
through personal negotiation. This is time consum- ti es the sequence of objects in an EDI transaction.
ing, in exible and very costly. The new approach to In sending RFQ (Request For Quotation), one trad-
formally specify the terms used in EDI transactions is ing partner may format object name to appear rst
through the use of ontology which functions as the- in the EDI message, object quantity second, and ob-
sauri. The ontology used here is domain-speci c to ject date last, while its trading partner sends its EDI
business transactions and applications. message with the sequence of object name, object date
The use of ontology in EDI has been discussed in a and object quantity. In order to evaluate the content of
great detail and presented in some of the papers on trading partner EDI messages, this mismatch needs to
EDI. In this paper, we are not going to discuss ontol- be resolved. An object sequence pro le may be main-
ogy in detail nor describe how ontology is implemented tained for each trading partner in order to resolve this
for our database-to-database approach. A detail dis- mismatch. An object-sequence tuple is maintained in
cussion on ontology and its use in EDI can be obtained the pro le base.
from [8]. 4. Object-units mismatch: An object in an EDI trans-
4.5 Pro le Base action may be associated with a unit, such as an object
garment may have a unit of yard or meter. One sup-
The two trading partners' databases may di er in a plier may use yard as the unit for garment while its
number of ways as follows: trading partner may use meter. Resolving unit mis-
1. Object-name mismatch: Object names are nothing matches is not as straightforward as resolving any of
but labels associated with each object which are as- the previous mismatches. To convert yard into meter,
signed based on the semantics of the object. The label the quantity value of the object needs to be adjusted

Authorized licensed use limited to: Universidad del Valle. Downloaded on March 07,2021 at 03:02:55 UTC from IEEE Xplore. Restrictions apply.
1060-3425/98 $10.00 (c) 1998 IEEE
<name, set, {object1, object2, ... objectn}>
object1 is <object1-name, object1-type, object1-units, object1-value>
object2 is <object2-name, object2-type, object2-units, object2-value>
...........................................
objectn is <objectn-name, objectn-type, objectn-units, objectn-value>

Figure 5: The Structure of the complete Transaction

(i.e. multiplied by three) to arrive at the appropri- transaction message. The order of the object name
ate unit for meter. This mismatch problem can be is maintained since each sequence corresponds to the
more complex than simply converting yard into meter corresponding sequence in other tuples (object-format,
or vice versa. A more dicult problem can be illus- object-unit and object-default tuples). For example,
trated by the following example. Let assume that a the tuple (product no, quantity, date) indicates that
supplier sells apples in boxes where each box consist there are only three objects, product no, quantity, and
of 20 lb of apples. This supplier maintains units only date, in the transaction.
in 20-lb boxes. Now, let say, a customer maintains
its own unit for apples also in boxes. Each box may 2. Object-format tuple: This tuple maintains the for-
weight between 5 to 8 lb. and let assume that this mat of all the di erent objects in the transaction. In
customer would like to purchase 15 boxes of apples. A this tuple, the format appear with the same sequence
more complex unit-conversion needs to be performed as its object name sequence in the object-name tu-
for this case. Formulas may also be used to resolve ple. For example, having the previous object-name
unit mismatches. The formulas used may range from tuple example, (product no, quantity, date), an object-
easy to dicult formulas. After such mismatches have format tuple would look somewhat like (string, num-
been resolved, an object-units tuple is constructed and ber, DD-MON-YYYY). This depicts that the type for
maintained in the pro le base. product no is string, for quantity is number and for
5. Object-defaults substitution: Object default is used date is DD-MON-YYYY.
when the object value contains no data (or the value 3. Object-sequence tuple: Object-sequence tuple stores
is null). One trading partner may have a default value the order of all objects as they appear in an EDI trans-
of, let say, 100 for a particular object while its trading action. The sequence of the value in this tuple does not
partner has a default value of 50 for the same object. have any relation with the sequence of values of any of
Even though, two trading partners may use di erent the other tuples. A sequence-tuple (product no, date,
default values, no default mismatch needs to be re- quantity) indicates that the object product no appears
solved. As long as one trading partner maintains the rst in an EDI transaction, object date appears sec-
default value used by the other partner, any empty ond, and object quantity appears last.
(null) value can be substituted by the default value
maintained in the pro le base. If the trading partner 4. Object-units tuple: This tuple maintains the unit
sends some null values along with some default val- used for each object in the transaction (if any). In this
ues, the default values stored in the pro le base should tuple, the unit value appear with the same sequence
be ignored and the default values sent along with the as its object name sequence in object-name tuple and
transaction should be used instead. An object default its object format sequence in object-format tuple. For
tuple is also maintained in the pro le base. example, having the previous object-name tuple ex-
As described previously, after resolving all the above ample, an object-unit tuple would look somewhat like
mismatches, object-name tuple, object-format tuple, ( , meter, ). This depicts that there is no unit for ob-
object-sequence tuple, object-unit tuple, and object- ject product no, the unit for object quantity is meter
default tuple are created and maintained for each trad- and there is no unit for object date.
ing partner in their pro le base. Thus each site main- 5. Object-default tuple: Default tuple stores the de-
tains a pro le for each trading partner as well as its fault value for each object (if any). Similar as the
own pro le. The pro le consists of the following infor- other tuples, the default values for the di erent ob-
mation for each transaction: the name of the trans- jects appear with the same sequence as their object
action, object-name, object-format, object-sequence, name sequence. The default tuple is used whenever a
object-units and object-default tuples. trading partner sends a null values. For such case, the
1. Object-name tuple: Object-name tuple stores the appropriate default values from the default tuple are
names of all objects in the order they appear in an EDI extracted and later substitute the null values.

Authorized licensed use limited to: Universidad del Valle. Downloaded on March 07,2021 at 03:02:55 UTC from IEEE Xplore. Restrictions apply.
1060-3425/98 $10.00 (c) 1998 IEEE
4.6 Pro le Manager table, object-format table, object-value table object-
When a pro le manager receives a transaction, it is default table, and the object reference table as follows.
responsible for executing the following. These tables need to be constructed at both the trad-
ing partners' sites; however, we elaborate it in the case
1. Identi es the type of transaction. of the S site.
2. If it is Tdef , updates the pro le base Now we will describe how the C's RFQ updates the
3. If it is Tinst, uses the two-phase strategy (ex- S's received-request-for-quotations database. For the
plained in Subsection 5.1 and generates a sake of explanation, we assume the S's database is re-
database transaction. lational. During the negotiation phase, the de nition
4. If it is Tcomp , uses the single-phase strategy transaction for request for quotation from C to S is
(explained in Subsection 5.2 and generates a rst initialized by C and sent to S, which may be as
database transaction. shown in Figure 5.1. Upon receiving the de nition
The database transaction thus generated by the pro le transaction, S constructs the pro le of C as follows.
manager is consistent with the object names, formats, S Pro le for RFQ:
and units used in the local database. In the following Object-name tuple:
section we provide details of the pro le base. <part No.,description,qty,RFQ no.,date,unit of measure>

5 Processing Strategies Object-format tuple:


<text,text,number,text,MM-DD-YY,text>
Below, we present our approach to construct and Object-units tuple: < , ,yards, , , >
maintain the pro les. In our approach, we proposed
the following two strategies: (1) two-phase and (2) Object-defaults tuple: < , ,100, , , >
single-phase. Object-sequence tuple:
5.1 The two-phase strategy <part No.,description,qty,RFQ no.,date,unit of measure>

Phase 1 - The Negotiation Phase: In the two-phase C Pro le for RFQ:


strategy, prior to sending a business transaction, the Object-name tuple:
two partners must negotiate on the transactions, their <product code,description,quantity,RFQ number,date,
semantics including its name, object names, format measured in>
etc. During the negotiation phase, the partners ex- Object-format tuple:
change de nition transactions. The pro le manager <text,text,number,text,DD-MM-YY,text>
uses the above de nition transaction to build the pro- Object-units tuple: < , ,meters, , , >
le for the corresponding trading partner. Essentially,
according to this strategy, there will be a pro le for Object-defaults tuple: < , ,100, , , >
each trading partner. It is important to note that this Object-sequence tuple:
transaction is issued only in the early stages of trad- <product code.,description,RFQ no.,date,qty,unit of
ing among the partners or whenever a change in the measure>
earlier de nition has to be made. We describe below During the transacting phase, assume the following
the various types of information extracted from the request for quotation transaction is sent:
de nition transaction.
Phase 2 - The Transacting Phase: The pro le thus <RFQ, REQUEST, "912-111", "03-01-95", "{524-32,
Terrycloth, 1000,yd} {524-31, Linencloth, 2000, yd}",
constructed during the negotiation phase will be used "FOB port of call", "David Richmond", "(201)222-4444">
during the transacting phase to interpret the trans- At this point, the object sequence tuple of C at S is
action and to invoke the appropriate application pro- used to assign the led names to the values. Then the
grams. The pro le can be revised by sending a new led name tuple of C is compared to that of S and
de nition transaction. the led names of each value are changed if necessary.
Example 5.1 To illustrate our approach, we use a Note that while making object name transformations,
Request for Quotation (RFQ) an example between two the pro le manager consults the ontology base. Then
trading parties, Clothes R Us, the customer (C) and the object default tuple of C is used to insert the miss-
Fabric City, the supplier (S). Before any transaction ing values, object unit tuple of C to covert the units to
can be transmitted, both C and S need to work on the those of S, and the object format tuple of C to assign
mapping of di erent terms and build the object-name the format. 2

Authorized licensed use limited to: Universidad del Valle. Downloaded on March 07,2021 at 03:02:55 UTC from IEEE Xplore. Restrictions apply.
1060-3425/98 $10.00 (c) 1998 IEEE
<definition-RFQ, list, {object1, object2, object3, object4, object5, object6}>
object1 is <RFQ no., alphanumeric, , F-000000>
object2 is <date, date, , null>
object3 is <product line, any, {products}>
products is <product, list, {subobject1, subobject2,subobject3, subobject4, subobject5}>
subobject1 is <part no., alphanumeric, , null>
subobject2 is <description, alphanumeric, , null>
subobject3 is <qty, integer, , null>
subobject4 is <unit of measure, alphanumeric, , feet>
subobject4 is <unit price, currency, dollars, null>
object4 is <FOB term, alphanumeric, , null>
object5 is <contact person, alphanumeric, , null>
object6 is <contact number, alphanumeric, , null>

Figure 6: The de nition Transaction of Clothes R Us

5.2 The single-phase strategy After a security check and a decode and translation
On the other hand, in the single-phase strategy, all steps, the EDI message is converted into a at le,
transactions are self-descriptive and are in the form which is then passed on to the Pro le Manager. The
similar to the de nition transaction. Under this strat- pro le manager consists primarily of a collection of
egy, no pro le need to be maintained by the trading Perl and PL/SQL programs comprising of the follow-
partners, however, every transaction need to be inter- ing modules.
preted by the pro le manager. 1. Driver module: A driver module, written in Perl,
It is meaningful to use the two-phase strategy when accepts and processes the transaction (in a at- le for-
the trading partners are limited and the frequency of mat), determines the sender and the type of the EDI
transactions is large. The single-phase strategy is use- transaction (i.e., whether Tdef , Tinst, or Tcomp ). Based
ful in cases where the number of trading partners is on the type, the driver module executes the appropri-
large but the frequency of transactions is less. Thus, ate external module, described below.
one may use a di erent strategy for each trading part- 2. Tdef module: This module, primarily a collection
ner. of Perl programs and PL/SQL scripts, processes Tdef .
The functions of this module are to extract the ap-
6 Implementation propriate pro le from the pro le base, compare and
For implementingour approach, we have employed Or- evaluate the extracted pro le and the new pro le, ex-
acle7.x as the underlying database to store the actual tract necessary information from the dictionary of the
data and have used the Internet as the medium of EDI- underlying database, update the pro le in the pro le
message transfer. In this paper, we do not discuss how base, and send status of task completion to the task-
we transmit EDI-messages on the Internet nor how we completion module.
impose security on EDI messages. Instead, we concen- 3. Tinst module: Tinst module, which processes Tinst,
trate on how to handle the di erent types of transac- performs the following functions: extracts the appro-
tions mentioned earlier and how to maintain the pro- priate pro le from the pro le base, evaluates and maps
le base. For this implementation, we have chosen the the content of the transaction with the extracted pro-
Perl programming language because of its ease of use, le, composes the appropriate database transaction as
its capability in manipulating data, text and les, and a PL/SQL script, executes the database transaction
its portability since processing the di erent transac- against the underlying database, and sends the status
tion types and maintaining the pro le base requires of task completion to the task-completion module.
the capability to manipulate text and les. We also 4. Tcomp module: Tcomp module, which processes
have chosen Oracle procedural extension to the SQL Tcomp , composes the appropriate database transaction
programming language (also known as PL/SQL) to as a PL/SQL script, executes the database transaction
execute the necessary database transaction against the against the underlying database, and sends the status
underlying database. of task completion to the task-completion module.
Processing of an EDI-transaction is initiated when a 5. Task-Completion module: Upon completion of
trading partner receives an EDI-transaction message. any of the previous transaction modules, the Task-
 Other database procedural and sequential languages can Completion module is executed, which checks on the
also be used. status of the task. If the task is not successful, a failure

Authorized licensed use limited to: Universidad del Valle. Downloaded on March 07,2021 at 03:02:55 UTC from IEEE Xplore. Restrictions apply.
1060-3425/98 $10.00 (c) 1998 IEEE
message is composed and passed on to a higher level [2] N. R. Adam and V. Atluri. EDI Through A Dis-
(i.e. to the communication module). If the task is tributed Information Systems Approach. Techni-
successful, a success message is composed and passed cal report, Center for Information Management,
on to a higher level. Integration and Connectivity, Rutgers University,
For simplicity reason, we have focused our implemen- 1997.
tation only on one functional transaction, Purchase [3] John Berge. The EDIFACT Standards. Technical
Order in which we have considered the part of the report, NCC Blackwell, 1991.
data pertaining to purchase order and used the dictio-
nary information and relational tables that are needed [4] Ahmed K. Elmagarmid and Calton Pu. Guest
for processing a purchase order. editors' introduction to the special issue on het-
erogeneous databases. 22(3):175{178, 1990.
7 Conclusions
[5] L. Gebase and S. Trus. Analyzing electronic com-
Over the past few decades, U.S. and international merce. Technical report, National Institute of
businesses have invested large sums of money in EDI Standards and Technology, 1994.
software and hardware. Systems that can capitalize
on the installed base while o ering improved services [6] Walter P. Hamilton III and Morey M. Henderson.
to new adopters will more easily gain acceptance. His- Forging a partnership through EDI. Technical
torically, EDI has represented a dramatic change for report, A handbook for DoD and Small Business,
businesses. Small businesses in general are reluctant Logistics Management Institute, 1993.
to move to new technologies because of the learning
curve and potential maintenance costs. In the auto- [7] Paul Kimberley. Electronic Data Interchange.
motive industry, the electronic transfer of orders and McGraw-Hill, 1991.
shipping notices became so important that the big [8] Fritz Lehmann. Machine-negotiated ontology-
three auto makers installed EDI compatible systems based EDI Electronic Data Interchange. In Elec-
on-site at their major parts suppliers. This ensured tronic Commerce: Current Research Issues and
the compatibility of the systems and gave the suppli- Applications. Springer-Verlag, 1996.
ers the help they needed to embrace the new technol-
ogy. A similar adoption of the distributed database [9] James McGee. A note on Electronic Data In-
approach would not be unreasonable to expect. terchange. Technical report, Harward Business
Additionally, the technological advances to support School, 1989.
multimedia transactions in distributed databases can [10] Yannis Papakonstantinou, Hector-Garcia Molina,
be directly adapted in EDI systems. Again, the his- and Jennifer Widom. Object exchange across het-
tory of EDI stems from the exchange of character and erogeneous information sources. In Proc. 20th
numerical data on business forms. CAD drawings, Int'l. Conf. on Very Large Data Bases, 1994.
bit-mapped pictures, audio samples and video clips
were never considered as viable forms of business doc- [11] A. Sheth and J. A. Larson. Federated database
uments suitable for exchange. Support of multimedia systems for managing distributed, heterogeneous,
data types is especially useful in exchanging patients' and autonomous databases. 22(3):183{236, 1990.
medical record among healthcare providers. Currently
EDI is being used for exchanging commercial informa- [12] Ken Steel. The standardization of exible EDI
tion such as verifying eligibility, getting informationon messages. In Electronic Commerce: Current Re-
a subscriber and/or dependents, coordination of ben- search Issues and Applications. Springer-Verlag,
e ts with other payers(insurers), type of plan or pro- 1996.
gram, primary care physician elections, etc. Although [13] P. M. C. Swatman and P. A. Swatman. EDI sys-
a data segment currently exists for transmitting binary tem integration: A de nition and literature sur-
data, its de nition is too general to be used eciently vey. 8(3), Summer 1992.
for such a wide variety of data types.
[14] Adrian Tang and Sophia Scoggins. Open network-
References ing with OSI. Prentice Hall, 1992.
[1] N. Adam and Y. Yesha. Electronic Com-
merce: Current Research Issues and Applications.
Springer-Verlag, 1996.

10

Authorized licensed use limited to: Universidad del Valle. Downloaded on March 07,2021 at 03:02:55 UTC from IEEE Xplore. Restrictions apply.
1060-3425/98 $10.00 (c) 1998 IEEE

You might also like