=Paper= {{Paper |id=None |storemode=property |title=Modeling Semantic Web Services with OPM/S A Human and Machine-Interpretable Language |pdfUrl=https://ceur-ws.org/Vol-703/paper9.pdf |volume=Vol-703 |dblpUrl=https://dblp.org/rec/conf/www/DoriTR04 }} ==Modeling Semantic Web Services with OPM/S A Human and Machine-Interpretable Language== https://ceur-ws.org/Vol-703/paper9.pdf
              Modeling Semantic Web Services with OPM/S –
              A Human and Machine-Interpretable Language

               Dov Dori                                     Eran Toch                          Iris Reinhartz-Berger
Technion - Israel Institute of Technology    Technion - Israel Institute of Technology           University of Haifa
          Haifa 32000, Israel                          Haifa 32000, Israel                  Carmel Mt., Haifa 31905, Israel
            972-4-8294409                                972-4-8292853                             972-4-8288502
       dori@ie.technion.ac.il                       erant@tx.technion.ac.il                  iris@mis.hevra.haifa.ac.il

  ABSTRACT                                                            distributed, dynamic, and can be utilized as light-
  The World-Wide-Web is now a ubiquitous, global tool,                weight components within a broader and loosely cou-
  used for finding information, communicating ideas, carry-           pled framework, common semantics is required so
  ing out distributed computation, and conducting business,           differences in terminology and definitions can be
  learning and science. Web services and the Semantic Web             automatically resolved. While the World Wide Web
  are emerging as a powerful infrastructure for distributed           provides a repository for Web services, the Semantic
  computing. However, even though standard methods that               Web [2] is designed to be the foundation for semantic
  define semantics of Web services, such as OWL-S, may aid
                                                                      markup of Web services. The OWL-S initiative [1]
  in the development and deployment of these services, they
  are hardly designed to be easily understandable and usable          (formally DAML-S) provides an ontology for Web
  by developers. Complexity and lack of accessibility of Web          services that enables automatic discovery, invocation,
  services and the Semantic Web hinders their usage by the            and interoperation of Web services.
  information industry. OPM/S, which is based on Object-              As of today, the usage of OWL-S has not crossed the
  Process Methodology (OPM), offers a bi-modal visual-
                                                                      boundary between academia and industry. Based on
  lingual representation that is both intuitive for humans and
  formal for machines. Utilization of ontologies and interop-         their experience, Sabou et al. [21] reported that OWL-
  erability are two issues addressed by the OPM/S modeling            S is difficult to learn, partly due to the lack of sup-
  environment. Ontologies are expressed as meta-libraries,            porting tools, and that it has an imprecise conceptual
  which are specified in OPM or OWL, and can be dynami-               model, which is composed of multiple ontologies
  cally linked to semantic Web services in a distributed envi-        (models). To overcome these shortcomings, we pro-
  ronment. Interoperability is achieved using a transparent           pose to wrap OWL-S with a higher-level modeling
  reuse method that enables dynamic development of Web                language, called OPM/S. Based on Object-Process
  services and their integration into more complex Web ser-           Methodology (OPM) [9], OPM/S integrates software
  vices. Using a running example, the paper presents OPM/S            engineering and semantics engineering practices in
  and its mapping to OWL-S. The benefits and shortcomings             order to establish a single framework for modeling
  are discusses and compared with other OWL-S modeling
                                                                      Web services. OPM/S contains two main mechanisms
  methods.
                                                                      that enable modeling the dynamic interoperability
                                                                      between Web services. The first mechanism handles
  1. INTRODUCTION
                                                                      ontologies and descriptions of the concepts that are
  The Web is highly dynamic in the quantity and nature
                                                                      shared among various semantic Web services. On-
  of the information that it encompasses, posing a host
                                                                      tologies are captured as meta-libraries, which are
  of challenges in managing distributed information and
                                                                      specified in OPM or OWL, and can be utilized in the
  computation over the Web. Access to the Web may be
                                                                      specification process of Web services. Meta-libraries
  from a variety of devices and interfaces, by different
                                                                      are developed and maintained separately from the
  users at different locations, and at varying times.
                                                                      Web service models, and are dynamically linked to
  Thus, there is a need for standard languages that cap-
                                                                      the Web services. Alterations in a meta-library are
  ture information semantics and not just syntax. Web
                                                                      reflected in the particular Web service models that use
  services and the Semantic Web are powerful infra-
                                                                      it.
  structures that enable easy integration, automatization,
  and reuse of different information and process formats              The second OPM/S mechanism is transparent reuse
  in a distributed environment. Since Web services are                 [20]. Usually, reuse of Web services does not in-




                                                                 86
volve the installation of separate copies of the compo-            scription of the service and means to access it. OWL-
nents, but rather utilization of runtime calls to the ser-         S [1], which is a framework for containing and shar-
vices. Therefore, modeling frameworks for Web ser-                 ing these descriptions, provides the following three
vices should take into account scenarios in which ser-             essential types of knowledge about a service.
vices may change after being reused. Transparent re-
                                                                    1. The Service Profile describes the properties of a
use enables ongoing development of Web services
                                                                       service, such as its functionality, which is neces-
and their integration into more complex Web services.
                                                                       sary for its automatic discovery, and its set of in-
The reused models can be referred to using either URI
                                                                       puts, outputs, preconditions and effects (abbrevi-
or UDDI entries. A supervision mechanism warns the
                                                                       ated IOPE).
designer if changes in a reused model affect the entire
model and automatically suggests possible solutions,                2. The Process Model defines the control flow of
based on a shared semantics.                                           the service, using its IOPEs and a set of control
                                                                       constructs and descriptions of each process that
The rest of the article is structured as follows. Section
                                                                       takes part in the flow. OWL-S has three types of
  2 reviews existing OWL-S engineering methods and
                                                                       processes: atomic processes, which are executed
briefly presents OPM. Section 3 introduces the
                                                                       by single communication protocol calls, simple
OPM/S framework and explains how it supports the
                                                                       (undivided) processes, and composite processes,
different OWL-S ontologies. Finally, Section 4 dis-
                                                                       which comprise other processes.
cusses the benefits and shortcomings of OPM/S and
refers to future research plans.                                    3. The Service Grounding ontology connects the
                                                                       process model to communication-level protocols,
2. BACKGROUND                                                          such as the message description of Web Services
2.1 Semantics of Web Services                                          Description Language (WSDL) [4].
Web services are automated resources accessed via                  Even though OWL-S had gained a considerable mo-
the Internet, using an XML interface. The exponential              mentum in the Semantic Web community, several
growth of the Web and the progress of Internet-based               shortcomings prevent OWL-S from being more
architectures have set the stage for the proliferation of          widely adopted by the software engineering industry.
Web services and corresponding ontologies. How-                    The main problem is that OWL-S is relatively com-
ever, despite the fact that these systems employ com-              plex and inaccessible for humans [21]. The separation
mon XML or even RDF interfaces, semantic gaps                      between the definition of the service and the semantic
among these ontologies cause problems in various                   meta-information requires users to master several lan-
scenarios. The problem of semantic reconciliation                  guages and carry out translations among them. More-
arises, for example, when integrating two systems that             over, the lack of suitable complexity management
utilize different semantics to refer to entities that are          mechanisms makes the readability of the domain
conceptually identical. Such semantic differences                  scripts difficult. Exacerbating this situation is the need
must be resolved manually, a costly process that is                for different types of notation in disparate models that
unavoidably error-prone.                                           must be used to define various aspects of a Web ser-
Trying to solve these problems, the Semantic Web                   vice, requiring consistency and integrity checking that
provides an infrastructure for concepts to be specified            is typical of systems that suffer from the model multi-
formally, so relations between different concepts can              plicity problem [18].
be reasoned automatically, providing a basis for
                                                                   2.2 OWL-S Modeling Methods
automated semantic reconciliation processes. Several
                                                                   In an attempt to overcome the complexity of OWL-S,
standards have emerged to support the Semantic Web
                                                                   two approaches to creating OWL-S scripts have been
vision, including Web Ontology Language (OWL) [8]
                                                                   developed: automatic generation and modeling. Auto-
and DARPA Agent Markup Language (DAML+OIL)
                                                                   matic generation relies on tools that create OWL-S
  [5]. These languages are designed to enable com-
                                                                   descriptions from existing concrete artifacts, such as
puter applications to semantically process the infor-
                                                                   programming code or WSDL specifications [4]. Em-
mation that formerly could be interpreted only by
                                                                   ploying bottom-up development, this approach is im-
humans.
                                                                   plemented, for example, in the WSDL2OWL-S tool
In order to search for Web services and use them, a                  [16], which provides a partial translation from a
software agent needs a computer-interpretable de-                  WSDL specification of a Web service to an OWL-S


                                                             -2-



                                                             87
script. The OWL-S modeling approach, in contrast,                 things that transform objects. In most interesting and
supports top-down development using a formal mod-                 challenging systems structure and behavior are highly
eling language. Narayanan and McIlraith have used                 intertwined and hard to separate. Meeting this model-
Petri nets to compose Web services [14]. While Petri              ing challenge, stateful objects and processes that
nets are sufficient for modeling the dynamics and con-            transform them describe the function, structure and
trol flows of OWL-S modules, they are limited in de-              behavior aspects of the modeled system within a sin-
scribing static aspects of systems, like module alloca-           gle framework in a domain-independent manner with-
tions and their dependencies and structural relations             out highlighting one aspect at the expense of sup-
  [22]. Furthermore, lacking a refinement mechanism               pressing another.
that is essential for describing large-scale systems,             Contrary to the object-oriented approach, processes in
Petri nets are not directly scalable and are hence not            OPM can stand alone, allowing intuitive modeling of
widespread across the software engineering commu-                 the system's behavior that involves several object
nity.                                                             classes, possibly cutting across the system's structure.
Several OWL-S modeling methods rely on Unified                    Processes are connected to the involved objects
Modeling Language (UML) [12], the standard object-                through procedural links, which are classified into
oriented modeling language. Bose et. al. [3] have                 enabling links, transformation links, condition links,
suggested using UML for modeling the OWL-S Ser-                   and event links. The same and only diagram type pro-
vice Profile and Process Model ontologies. Class dia-             vides also for modeling the system's structure, includ-
grams represent the structure of the top level OWL-S              ing the fundamental aggregation, generalization, ex-
specification, i.e., the entities of the Service Profile.         hibition, and classification relations alongside any
Since OWL-S specifications include also the Process               other user-defined structural relation.
Model ontology, additional dynamic UML diagrams                   Two semantically equivalent modalities, one graphic
are needed to specify these behavioral aspects. The               and the other textual, jointly express the same OPM
need to use several diagram types necessitates the                model. A set of inter-related Object-Process Diagrams
development of a consistency management and pro-                  (OPDs) constitute the graphical, visual OPM formal-
tection mechanism that must be employed while the                 ism. Each OPM element is denoted in an OPD by a
multiple-view UML model is mapped onto the single                 graphic symbol, and the OPD syntax specifies correct
formal OWL-S specification.                                       and consistent ways by which entities can be linked.
DUET [7] is a software tool that implements an                    Table 1 lists the fundamental OPM elements along
OWL-S modeling solution based on UML activity                     with their symbols and semantics. The Object-Process
diagrams. Each process is represented by an activity,             Language (OPL) is the textual counterpart modality of
while composite processes contain descendant activi-              the graphical OPD set. As a dual-purpose language,
ties. Inputs and preconditions are modeled as entry               OPL is oriented towards humans as well as machines.
actions that occur when the activity is executed. Out-            Catering to human needs, OPL is designed as a con-
puts and effects are modeled as exit actions that are             strained subset of English, which serves domain ex-
executed when the activity ends. This modeling                    perts engaged in analyzing and designing a system (or
framework ignores several elements of the OWL-S                   a Web service). Every OPD construct is expressed by
Process Model ontology, such as conditions and con-               a semantically equivalent OPL sentence or phrase.
ditional outputs. Another drawback of this solution is            Designed also for machine interpretation, OPL pro-
that it is limited only to the Process Model ontology,            vides a solid basis for automatically generating the
neglecting the OWL-S Service Profile and Service                  designed application. This dual representation of
Grounding ontologies.                                             OPM increases the processing capability of humans
                                                                  according to Mayer's theory [13].
2.3 Object-Process Methodology (OPM)
Object-Process Methodology (OPM) [9] is a holistic,
integrated approach to the study and development of
systems in general and information systems in par-
ticular. The basic premise of the OPM paradigm is
that objects and processes are two types of equally
important classes of things. Objects are (physical or
informatical) things that exist, while processes are


                                                            -3-



                                                            88
    Table 1: Main OPM elements, their symbols and                                3. The OPM/S Framework
                     semantics                                                   The OPM/S modeling framework wraps OWL-S, re-
    Element Name         Symbol                Semantics                         flecting the characteristics and features of semantic
         Object                   A thing that has the potential of              Web services. Contrary to OWL-S, which requires
                                  unconditional existence                        using three different types of ontologies with overlap-
         Process                  A pattern of transformation that               ping concepts, OPM/S employs its single frame of
                                  objects undergo                                reference that can be presented at different abstraction
     Environmental                An environmental (external) thing
         thing                    (object or process) which communi-             levels. The combination of the single OPM view with
                                  cates with the system                          its bimodal presentation increases the accessibility
    Characterization              A relation representing that a thing           and usability of the OPM/S modeling framework to
                                  (object or process) exhibits another
                                  thing                                          humans as well as machines (e.g., code generators and
     Generalization               A relation denoting the fact that a            automatic translators).
                                  thing generalizes a set of specialized
                                  things                                         The OWL-S ontologies are mapped to OPM/S as fol-
      Aggregation                 A relation which denotes that a thing          lows. The Service Profile is represented in OPM/S as
                                  consists of other things                       the top level Object-Process Diagram (called the Sys-
    General structural            A general association between things
       relationship
                                                                                 tem Diagram, SD) along with its corresponding Ob-
     Instrument link              A link indicating that a process               ject-Process Language paragraph. The Process Model
                                  requires an (input) object for its             is expressed by zooming into the top-level specifica-
                                  execution
       Effect link                A link indicating that a process
                                                                                 tion to expose the process structure and flows. From
                                  changes an object                              the top-level processes and downwards in the process
    Result/ Consump-              A link indicating that a process               containment hierarchy of OWL-S, each composite
        tion link                 creates/consumes an object
     Invocation link              A link indicating that a process
                                                                                 process is in-zoomed in OPM/S to reveal its sub-
                                  activates (invokes) another process            processes and their IOPE sets. The Service Ground-
     Condition link
                         c
                                  A link representing a condition                ing ontology is expressed by the interfaces of the
                                  required for a process execution.
                                  While an enabling link has a
                                                                                 atomic processes, which are unfolded at the deepest
                                  "wait until" meaning, a condition              level of the process hierarchy. Table 2 summarizes the
                                  link has an "if" meaning                       mapping between each of the three OWL-S ontologies
       Agent link                 A link indicating that an external
                                  agent is required for the process
                                                                                 and the corresponding OPM/S concepts.
                                  execution
                                                                                  Table 2: Mapping OWL-S ontologies to OPM/S

OPM also exhibits three complexity management                                     OWL-S
                                                                                                OPM/S Representation
                                                                                                                                    OPD or OPL
mechanisms which enable refinement/abstraction of                                 Ontology                                          Script Level
                                                                                   Service
OPM models: (1) unfolding/folding is used for refin-                               Profile
                                                                                              The highest level of the OPM/S          0 (SD level)
                                                                                                           model
ing/abstracting the structural hierarchy of a thing; (2)
in-zooming/out-zooming exposes/hides the inner de-                                             Each process is represented by        k;0≤k≤N
                                                                                   Process    an OPD and an OPL paragraph,        where N is the deep-
tails of a thing within its frame; and (3) state express-                          Model      which refine (zoom into) its sub-     est level of the
ing/suppressing exposes/hides the states of an object.                                                   processes                  OPM/S model
Using flexible combinations of these mechanisms,                                   Service    Unfolding of the deepest atomic
OPM enables specifying a system to any desired level                                                                                       N
                                                                                  Grounding           process level
of detail without losing legibility and comprehension
of the resulting specification.                                                  Two mechanisms are employed in order to support the
                                                                                 dynamic and distributed nature of Web services:
OPM is supported by the OPCAT [11] (Object-                                      meta-libraries and transparent reuse. The rest of this
Process CAse Tool) modeling environment1. It has                                 section describes these mechanisms and explains their
also been applied and tested in various domains, in-                             application to modeling the Service Profile and the
cluding Web applications [19] and Semantic Web                                   Process Model in OPM/S. In order to demonstrate our
Information [10]. In this paper, we further extend                               approach, we use a running example of a book-buying
OPM to support the modeling of semantic Web ser-                                 service offered by the Web service provider Congo
vices. For future reference, this extension is called                            Inc. [6]. The OPM/S representation of the Service
OPM/S.                                                                           Grounding ontology is out of the scope of this paper.
1
    OPCAT can be downloaded from: http://www.objectprocess.org


                                                                           -4-



                                                                           89
3.1 The Service Profile Ontology                                      Output. This is expressed by the result links in the
Figure 1 is an OPM/S model of the Service Profile                     OPD and by the corresponding result sentence in the
ontology of the Congo Book Buying service. The top-                   OPL paragraph. The effect link between Buy Effect
level, main process in this model, Congo Book Buy-                    and the Congo Book Buying Service specifies that
ing Service, is surrounded by its inputs, outputs, pre-               the process changes the object during its execution.
conditions, and effects, which are all objects. These                 The service itself exhibits the attributes Service
objects are connected to the Congo Book Buying                        Name, Text Description, Contact Information, and
Service via procedural links that denote the role of                  several Quality Ratings. The Contact Information
each one of the objects in the top-level process.                     section can contain many points of contact, each rep-
                                                                      resented by an Actor. The Quality Ratings are matri-
                                                                      ces that express various quality measurement of the
                                                                      service. Multiple matrices can characterize the same
                                                                      service. The thick contours of Quality Rating and
                                                                      Actor indicate that further refinement of the objects
                                                                      exists, i.e., in our case they are unfolded in separate
                                                                      diagrams (not shown here due to space limitations) of
                                                                      their internal structure.

                                                                      3.2 The Process Model Ontology
                                                                      The Congo Book Buying Service is refined through
                                                                      zooming into two sub-processes, Full Congo Buy and
                                                                      Express Congo Buy, each describing different type
                                                                      of the Congo Book Buying Service. Express
                                                                      Congo Buy, which is an atomic process (not shown
Book Name is of type XS:string.
                                                                      here), is a "one shot" service for buying a book with
Congo Book Buying Service exhibits Service Name, Text De-             Congo, Inc. Figure 3 refines the composite process
scription, Contact Information, and many Quality Ratings.             Full Congo Buy as a two-step buying procedure, in
    Contact Information consists of many Actors.
Congo Book Buying Service occurs if Account exists and Credit
                                                                      which the book is first located (Locate Book) and
exists.                                                               then bought (Buy Book).
Congo Book Buying Service requires Book Name, Account Info,
Sign In Info, Credit Card Info, and Delivery Details.                 For comparison purposes, the OWL-S specification of
Congo Book Buying Service affects Buy Effect.                         the Full Congo Buy process is listed in Figure 3. The
Congo Book Buying Service yields Receipt, Shipping Order,
and Account Output.
                                                                      XML statements contain the process type and its con-
 Figure 1: An OPM/S model of the Service Profile                      trol flows. As noted, an OWL-S process can be of
                                                                      type composite, simple, or atomic. OPM/S, in con-
        of the Congo Book Buying Service
                                                                      trast, defines a single concept—a process class, the
As the condition links from the objects Credit and                    complexity of which is determined by its position in
Account to the Congo Book Buying Service proc-                        the process hierarchy of the OPM model. OPM/S
ess denote, the existence of these two objects is a pre-              processes that are refined into subprocesses are
condition for the execution of the Congo Book Buy-                    mapped to OWL-S composite processes. A refined
ing Service. The corresponding OPL sentence, which                    OPM/S process, such as Buy Book, is denoted by the
is "Congo Book Buying Service occurs if Account                       fact that the contour of its ellipse, which is originally
exists and Credit exists”, reinforces this condition                  thin, becomes thick. Processes that are not in-zoomed
semantics. Similarly, the objects Book Name, Ac-                      (and hence remain with thin contours) are mapped to
count Info, Sign In Info, Credit Card Info, and De-                   either atomic or simple OWL-S processes. Atomic
livery Details are the process inputs, as the instrument              processes differ from simple ones in that the former
links from each one of them to the Congo Book Buy-                    contain folded binding information (expressed in the
ing Service process denote. The equivalent OPL sen-                   service grounding ontology), while the latter do not.
tence is "Congo Book Buying Service requires
Book Name, Account Info, Sign In Info, Credit                         Another difference between OPM/S and OWL-S is
Card Info, and Delivery Details." The process out-                    the way they treat control flows. OWL-S enables ex-
puts are Receipt, Shipping Order, and Account                         plicit selection of a control flow construct for defining


                                                                -5-



                                                                90
an ordering or conditional execution of sub-processes.                  
                                                                         
Else, Iterate, Repeat-While, and Repeat-Until.                           
OPM/S, on the other hand, utilizes the limited set of                     
                                                                           
denoted by the relative vertical position of the sub-                      
                                                                             
processes, taking into account that the time line flows                        
from the top of the diagram downwards. In Figure 3,                               
Locate Book. Two processes with the same vertical                                 
position are executed in parallel or as alternatives. An                       
can override this convention [17].                                               
                                                                                   
                                                                                     
                                                                                    
                                                                                    
                                                                                   
                                                                                 
                                                                                
                                                                               
                                                                             
                                                                           
                                                                         Figure 3: OWL-S specification of the Full Congo
                                                                                         Buy service
                                                                        Conditional flow constructs, such as if-then-else or
                                                                        case statements, are specified in OPM/S by setting a
                                                                        decision object (which is Boolean for binary deci-
                                                                        sions). Each state of this object is linked via a condi-
                                                                        tion link to the process that needs to happen if the ob-
Book Name is of type XS:string.
                                                                        ject is at that state. In Figure 2, for example, Buy
Full Congo Buy zooms into Locate Book and Buy Book, as well             Book is executed only if Located Book exists, i.e.,
as Book Not Found and Located Book.                                     only if the book was found. OPM/S also supports
Located Book plays the role of Product of e-commerce.
Located Book exhibits Book ISBN and Book Description                    modeling of iterative control flows (such as loops) by
     Book ISBN plays the role of Identifier of e-commerce.              combining condition links to express the halting con-
     Book Description plays the role of Description e-commerce.         ditions and an invocation link to enable the iterations.
Locate Book requires Book Name.
Locate Book yields either Located Book or Book Not Found.               Adding an invocation link in Figure 2 from Buy Book
Buy Book plays the role of E-Commerce Process of e-                     to the complete Full Congo Buy specifies that this
commerce.                                                               process is executed until the requested book is not
Buy Book occurs if Located Book exists.
Buy Book requires Book ISBN, Credit Card Info, Sign                     found.
In Info, Account Info, and Delivery Details.
Buy Book yields Receipt, Shipping Order, and Account Output.            3.3 Consistency Maintenance of OPM/S Models
Receipt plays the role of Confirmation of e-commerce.                   OPM/S models are not only readable and comprehen-
  Figure 2: An OPM/S Process Model of the Full                          sible; they are also consistent across the various ab-
               Congo Buy Service                                        straction levels of the same Web service. The OPM
                                                                        consistency rules [9] require that the IOPE set of a
                                                                        process is either identical at any two consecutive re-
                                                                        finement levels of the process or is refined in the
                                                                        deeper level. For example, Delivery Details, which is
                                                                        connected in Figure 1 to the Congo Book Buying
                                                                        Service via an instrument (input) link, remains con-


                                                                  -6-



                                                                  91
nected through an instrument link to Buy Book of
Full Congo Buy, a sub-process of Congo Book Buy-
ing Service, in Figure 2. These rules are enforced by
OPCAT. Such consistency checks are difficult to en-
force in OWL-S, especially since they require verifi-
cation that involves two different ontologies: the Ser-
vice Profile and the Process Model.
The consistency of an OPM/S specification is con-
served also within the same Process Model displayed
at various refinement levels. For example, in Figure 4,
the Buy Book composite process is zoomed into, ex-
posing its Buy Sequence, Specify Delivery Details,
and Finalize Buy sub-processes. Buy Sequence, in
turn, is also a composite process, responsible for han-
dling shopping carts, customers, and accounts. Spec-               Buy Book plays the role of E-Commerce Process of e-
ify Delivery Details and Finalize Buy, on the other                commerce.
                                                                   Credit Card Info exhibits Credit Card Number and Credit Card
hand, are atomic processes. The single instrument link             Expiration.
from Delivery Details to Buy Book in Figure 2 is                             Credit Card Number is of type XS:string.
refined in Figure 4 into three instrument links from                         Credit Card Expiration plays the role of Instant of time.
                                                                   Delivery Details exhibits Delivery Address, Packaging Type, and
Delivery Address, Packaging Type, and Delivery                     Delivery Type.
Type (which are attributes of Delivery Details), to                          Delivery Address is of type XS:string.
Specify Delivery Details. Changing one of these                              Packaging Type can be gift wrap or ordinary.
                                                                             Delivery Type can be fedex one day, fedex 2-3 days,
links to an effect link will automatically change the                        ups, or ordinary mail.
link between Delivery Details and Buy Book in the                  Book ISBN plays the role of Identifier of e-commerce.
higher-level specification (shown in Figure 2) to an               Located Book plays the role of Product of e-commerce.
                                                                   Located Book exhibits Book ISBN.
effect link, denoting that Buy Book somehow                        Buy Book requires Located Book.
changes Delivery Details.                                          Buy Book zooms into Buy Sequence, Specify Delivery Details,
                                                                   and Finalize Buy.
3.4 OPM/S Typing Methods                                                     Buy Sequence requires Sign In Info, Credit Card Info,
                                                                             Account Info, and Book ISBN.
There are three kinds of OPM/S typing methods: basic                         Buy Sequence yields Account Output.
types, roles, and enumerations. These are demon-                             Specify Delivery Details requires Delivery Type,
                                                                             Delivery Address, and Packaging Type.
strated in Figure 4. Basic types includes all the primi-                     Specify Delivery Details yields Shipping Order.
tive types, such as xs:int and xs:string, and user-defined                   Finalize Buy yields Receipt.
types. The type of Credit Card Number and Delivery                           Receipt plays the role of Confirmation of e-commerce.
Address in Figure 4, for example, is XS:string.                     Figure 4: An OPM/S model of the Process Model
                                                                                    of Buy Book
Roles denote the ontological context, according to a
given meta-library. Credit Card Expiration, for exam-              3.5 Meta-Libraries
ple, is declared as an Instant from the Time ontology,             Meta-libraries are used to specify and utilize ontolo-
which is represented by an OWL meta-library. Role                  gies and domain knowledge in a dynamic and distrib-
names are recorded in the upper-left corner of an ob-              uted environment. A meta-library captures domain
ject box or a process ellipse.                                     knowledge as an OPM model or as an OWL specifica-
Enumerations are specified in OPM/S by states. States              tion. For instance, a meta-library concerning e-
define the set of possible situations an object can be at          commerce will contain concepts such as product, cus-
or legal values an object can assume. At any point in              tomer, order, invoice, and so fourth. It will also con-
time an object is in exactly one of its states or in tran-         tain static and dynamic constraints among these con-
sition between states. States can change only through              cepts, such as how many products can be ordered in a
the occurrence of a process. In the graphical OPD no-              single order, should the paying certification precede
tation, states are denoted as rounded-corner rectangles            the supplying process, etc.
inside an object. Packaging Type in Figure 4, for ex-
ample, can be gift-wrap or ordinary.



                                                             -7-



                                                             92
                                                                3.6 Transparent Reuse
                                                                The interoperability of semantic Web services is sup-
                                                                ported by applying OPM's transparent reuse method
                                                                   [20]. Transparent reuse enables dynamic bindings of
                                                                system models. Each model is saved separately and
                                                                can be modified throughout the entire development
                                                                lifecycle, enabling the percolation of its most updated
                                                                version to all the models that reuse it. This way,
                                                                transparent reuse supports development of a Web ser-
                                                                vice from external services that can be further en-
                                                                hanced and developed after they were integrated.
Product exhibits Identifier and Description.
      Description is of type Xs:string.                         When applying OPM's transparent reuse method,
E-Commerce Process requires many Products.                      elements from the reused service, which are symbol-
E-Commerce Process yields an optional Confirmation.
                                                                ized as environmental elements (“stubs”), are bound
      Figure 5: An E-Commerce meta-library                      to concrete (systemic) elements in the target Web ser-
Figure 5 is an OPM model of a simple e-commerce                 vice, using generalization relations. The environ-
meta-library. According to this e-commerce ontology,            mental elements of the reused Web service cannot be
Product exhibits two attributes, Identifier and De-             edited in the target model, and are loaded from their
scription. This e-commerce meta-library also intro-             sources (local files or Internet addresses) each time a
duces dynamic constraints on the E-Commerce                     design session is initiated. This way, any alteration in
Process: the process requires one or more Products              the reused Web service model will be reflected in all
and yields an optional Confirmation.                            the target Web services that reuse it.
When defining a Web service, one or more meta-                  As an example to the transparent reuse method, con-
libraries are imported by selecting a local file or a           sider a case in which Finalize Buy from Figure 4 is
URI, or by searching through UDDI registries. After             not specified in the Congo Book Buying Service. In
the meta-library is imported, the Web service model             this case, Finalize Buy would be marked as an envi-
dynamically references it. The references are re-               ronmental and, correspondingly, Receipt would be
freshed each time a design session is initiated, ensur-         marked as an environmental object (in all levels of the
ing that every change in the meta-library would be              OPM model), enabling the reuse of external services
reflected to all the Web service models that import it.         for finalizing a buy. An example of such a service can
                                                                be the FedEx Service, whose interface includes de-
Each element in a Web service model can be assigned             livery details (as an input) and a receipt (as an output)
to one or more roles each of which corresponds to an            in special formats. When binding the FedEx Service
element of the meta-library. Buy Book in Figure 2,              to the Congo Book Buying Service (as a Finalize
for example, plays the role of an E-Commerce Proc-              Buy process), the integrated Web service uses FedEx
ess. Hence, it requires Products, Located Books in              in order to deliver books from the Congo provider.
this case, and yields a Receipt, which plays the role
of a Certification. Buy Book also requires additional           A supervision mechanism is employed in order to de-
information (Credit Card Info, Sign In Info, Account            tect changes in Web services that might affect other
Info, and Delivery Details) and yields Shipping Or-             Web services. The designer receives a list of warnings
der and Account Output. Furthermore, the Located                regarding broken bindings between Web services, as
Book (input) object fulfills the structural constraints         well as suggestions to alternative substitutions for the
of a Product, enforces by the e-commerce meta-                  broken bindings.
library: it exhibits Book ISBN (the product identifier)
and Book Description (the product description). A               4. CONCLUSIONS
special algorithm (not described in this paper) vali-           The dynamic nature of the Web and its heterogeneous
dates that the Web service model fulfills the meta-             information formats require addressing semantic is-
library (static and dynamic) constraints.                       sues when searching and developing Web-based sys-
                                                                tems, such as Web services. Using OWL-S for speci-
                                                                fying semantic Web service holds great opportunities
                                                                for automating Web service discovery, invocation,


                                                          -8-



                                                          93
composition, interoperation, and execution monitor-            [4] Christensen, E., Curbera, F., Meredith, G., Weer-
ing. However, current OWL-S modeling and engi-                     awarana, S., Web Services Description Language
neering methods need to be improved in order to                    (WSDL) 1.1, 15 March 2001,
make them accessible and useful for humans as well.                http://www.w3.org/TR/2001/NOTE-wsdl-
This work has proposed OPM, which is a general sys-                20010315.
tem engineering method, as a convenient, intuitive,            [5] Connolly, D., Harmelen, F., Horrocks, I.,
yet formal language for wrapping and expressing                    McGuinness, D. L., Stein, L. A., DAML+OIL
OWL-S specifications. A small set of about a dozen                 Reference Description. W3C Note, 18 December
OPD symbols, along with a semi natural language,                   2001.
Object-Process Language (OPL), simplify the defini-            [6] DAML.org, Congo Buy Specification,
tion of Web services for humans. Ontologies and do-                http://www.daml.org/services/owl-
main knowledge are handled in the OPM/S modeling                   s/0.9/CongoService.owl
framework using meta-libraries which are dynami-               [7] DARPA, CODIP Project, DUET: DAML UML
cally imported and shared by multiple Web services.                Enhanced Tool,
In order to support interoperability between Web ser-              http://grcinet.grci.com/maria/www/CodipSite.
vices, OPM's transparent reuse method is adopted as a
way to integrate Web services. Transparent reuse en-           [8] Dean, M., Connolly, D., Harmelen, F., Hendler, J.,
                                                                   Horrocks, I., McGuinness, D. L., Patel-Schneider,
ables ongoing changes in the integrated models, while
                                                                   P. F., Stein, L. A., OWL Web Ontology Language
alerting the designer about influences of the changes              1.0 Reference, July 2002.
on other Web services.
                                                               [9] Dori, D., Object-Process Methodology - A Holis-
The usage of objects and processes in OPM along                    tic Systems Paradigm, Springer Verlag, 2002.
with its three built-in complexity mechanisms enable
modeling the Service Profile, Process Model, and               [10] Dori, D., Object-Process Methodology as a basis
                                                                    for the Visual Semantic Web. Proc. 14th Interna-
Service Grounding ontologies of a Web Service in a
                                                                    tional Conference on Database and Expert Sys-
single framework, using a single (bimodal) modeling                 tems Applications (DEXA 2003), IEEE Computer
language. The complexity management mechanisms                      Society Press, IEEE International Workshop on
also ensure that a Web service model is internally                  Web Semantics (WebS 2003), September 2003.
consistent.
                                                               [11] Dori, D. Reinhartz-Berger, I. and Sturm A.
OPM/S expressiveness should be further improved to                  OPCAT – A Bimodal Case Tool for Object-
support all types of OWL-S logical expressions, such                Process Based System Development. 5th Interna-
as complex branches. The research plans also include                tional Conference on Enterprise Information Sys-
implementing an OWL-S translator, which will enable                 tems (ICEIS 2003), pp. 286-291, 2003.
bi-directional conversion of OPM/S models to OWL-              [12] OMG, Unified Modeling Language 1.5 Specifica-
S specifications and vice versa. In addition, develop-              tion. OMG Document formal/03-03-01, March
ment guidelines will be defined for specifying seman-               2003.
tic Web services in OPM/S and OWL-S.
                                                               [13] Mayer, R.E. Multimedia Learning. Cambridge
                                                                    University Press, 2001.
REFERENCES
                                                               [14] Narayanan, S. McIlraith, S., Analysis and simula-
[1] Ankolenkar, M. Burstein, T. C. Son, J. Hobbs, O.                tion of Web services, Computer Networks, In
    Lassila, D. Martin, D. McDermott, S. McIlraith, S.              Press, Uncorrected Proof, Available online 10
    Narayanan, M. Paolucci, T. Payne, K. Sycara, and                April 2003.
    H. Zeng., OWL-S: Semantic Markup for Web Ser-              [15] Noy, N. F., Sintek, M., Decker, S., Crubezy, M.,
    vices, www.daml.org/services/, June 2002.                       Fergerson, R. W., Musen, M. A., Creating Seman-
[2] Berners-Lee, T., Hendler, J., Lassila, O., The Se-              tic Web Contents with Protege-2000. IEEE Intel-
    mantic Web, Scientific American, 284(5), 2001,                  ligent Systems 16(2), 2001, pp. 60-71,
    pp. 34-43.                                                      http://protege.stanford.edu.

[3] Bose, P., Kogut, P., Leung, Y.H., Woodward,                [16] Paolucci, M., Srinivasan, N., Sycara, K., Nishi-
    H.M., Applying UML to Model Web Service On-                     mura, T., Towards a Semantic Choreography of
    tologies for the Semantic Web, OMG Web Ser-                     Web Services: from WSDL to DAML-S, Proceed-
    vices Workshop, 3 July 02.


                                                         -9-



                                                         94
    ings of the The First International Conference on           [20] Reinhartz-Berger, I., Dori, D., Katz, S., Open Re-
    Web Services (ICWS'03), June 2003.                               use of Component Designs in OPM/Web, 26th
                                                                     annual international Computer Software and Ap-
[17] Peleg, M, and Dori, D. Representing Control Flow
                                                                     plications Conference (COMPSAC'02), pp. 19-26,
     Constructs in Object-Process Diagrams. Journal of
                                                                     2002.
     Object-Oriented Programming, 11, 3, pp. 58-71,
     1998.                                                      [21] Sabou M., Richards D., Splunter S. van, An ex-
                                                                     perience report on using DAML-S, Workshop on
[18] Peleg, M, and Dori, D., The Model Multi-plicity
                                                                     E-Services and the Semantic Web (ESSW '03),
     Problem: Experimenting with Real-Time Specifi-
                                                                     The Twelfth International World Wide Web Con-
     cation Methods. IEEE Transac-tion on Software
                                                                     ference. Budapest, Hungary, May 20, 2003.
     Engineering, 26, 8, pp. 742-759, 2000.
                                                                [22] Wirtz, G., Application of Petri Nets in Modelling
[19] Reinhartz-Berger, I., Dori, D., Katz, S.,
                                                                     Distributed Software Systems, MOCA01, Den-
     OPM/Web – Object-Process Methodology for
                                                                     mark, Aug. 2001
     Developing Web Applications. Annals of Soft-
     ware Engineering. 13, pp. 141–161, 2002.




                                                         -10-



                                                         95