You are on page 1of 5

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/220985361

Towards an XPDL Compliant Process Ontology

Conference Paper · July 2008


DOI: 10.1109/SERVICES-1.2008.71 · Source: DBLP

CITATIONS READS
15 109

3 authors, including:

Armin Haller Walid Gaaloul


Australian National University Institut Mines-Télécom
81 PUBLICATIONS   1,194 CITATIONS    170 PUBLICATIONS   1,768 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Workflowminer View project

edx course stat View project

All content following this page was uploaded by Walid Gaaloul on 03 June 2014.

The user has requested enhancement of the downloaded file.


2008 IEEE Congress on Services 2008 - Part I

Towards an XPDL compliant process ontology

Armin Haller, Walid Gaaloul and Mateusz Marmolowski


Digital Enterprise Research Institute
Galway, Ireland
firstname.lastname@deri.org

Abstract cess models between different applications and their


proprietary models and is currently supported by over
This paper presents initial results on oXPDL, a pro- seventy products1 . In contrast to BPEL, which can be
cess interchange ontology based on the standardised seen as the quasi-standard for process execution over
XML Process Definition Language (XPDL). XPDL Web services, it serves as a description language only
was introduced to allow process model exchange between and is not meant for execution.
information systems, most of which are based on pro- In this article, we focus on a business intelligence
prietary workflow models. Our process interchange on- scenario, where analysis data is gathered from several
tology oXPDL explicitly models the complete semantics process-aware systems. Since process data is combined
of XPDL process models in a standard Web ontology from different systems, the data needs to be integrated
language. The oXPDL process models may be used for before the business analysis can be performed. Fur-
integrated process analysis by querying and reasoning thermore, the process data should typically be com-
over multiple models and their instances in combina- bined with business information such as partner data,
tion with business rules described in background on- stock data, or other background knowledge.
tologies, each of which may originate from different in-
formation systems. 1.1 Motivating example
We illustrate these challenges with a simple XPDL
process of a quoting and purchasing scenario modelled
1 Introduction according to the definition in RosettaNet standard pro-
The majority of enterprise information systems are cesses PIP3A1 and PIP3A4. The BPMN representa-
process-aware, using some mechanism to support, con- tion of the process is shown on the left of Figure 1, an
trol, and monitor business processes [4]. Typical ex- excerpt of the corresponding XPDL document is shown
amples of such systems, driven by implicit or explicit on the right. In a business analysis scenario, we would
process models, are enterprise resource planning sys- like to answer a defined set of competency questions
tems (ERP), customer relationship management sys- [14] based on the process model and different back-
tems (CRM), groupware collaboration systems and ground ontologies. Due to space limitations we only
workflow management systems (WfMS), specifically present exemplary questions here, the full list can be
built for modelling and executing business processes. found in [8].
All these tools operate on workflow models, typi- 1. How many times has the “Purchase” process been
cally focused on control-flow captured in procedural suspended?
process notations. Some more standardised modelling 2. Which activities of a particular process belong to
languages exist, such as the Business Process Execu- some subprocess?
tion Language (BPEL), the Business Process Modelling 3. Does a message in PIP3A4 include some substi-
Notation (BPMN) and Event-Driven Process Chains tutable product?
(EPCs). Despite partial standardisation, no consen-
4. In which processes does John Doe participate in?
sus exists on the representation or conceptual model
of complete workflows [12], hampering interoperability, 5. Which partners should implement a web service
exchange and analysis of process models. operation in a process type?
The XML Process Definition Language (XPDL) [13]
has been developed for describing and exchanging pro- 1 See http://www.wfmc.org/standards/xpdl.htm

978-0-7695-3286-8/08 $25.00 © 2008 IEEE 83


DOI 10.1109/SERVICES-1.2008.71
  cess Manager. The approach is limited to deadline es-
<Activity Id=”1” Name=”Process RFQ”>
<Implementation>
<ApplicationType Id=”webservice PIP3A4”>
timation exception prediction and does not propose a
<WebService Id=”webservice PIP3A4 receive”>
<WebServiceOperation Id=”
model for more generic business intelligence operations.
PurchaseOrderRequestAction 1”>
<Partner Type=”PIP3A4 requester partner”>
<PartnerLinkId>PIP3A4 seller</
PartnerLinkId>
3 oXPDL ontology
<RoleType>MyRole</RoleType>
</Partner>
<Service>
The ontology covers all of XPDL and consists of
<PortName>RA PortType</PortName>
</Service>
around 125 concepts and some 50 logical axioms. Our
</WebServiceOperation>
<InputMsgName>PIP3A4 request</
ontology and the modelling approach are agnostic of
InputMsgName>
</WebService>
the choice for a particular ontology language. Without
</ApplicationType>
</Implementation>
loss of generality for the overall approach, we chose the
</Activity>
  WSML [2] ontology language as modelling language
and output of the XPDL translator. The ontology
Figure 1: RosettaNet quoting and purchasing process and translation could also be implemented with an-
other Web ontology language. As mentioned before,
the ontology is not designed for manual process mod-
1.2 Approach: ontologising XPDL elling: our tool automatically translates exported pro-
cess instances to oXPDL and allows analysis through
We explicitly represent the informal underlying se-
query answering and reasoning. For readability we
mantics of XPDL in a formal and expressive Web on-
present the complete ontology in five sections, focusing
tology language. We do not impose our interpreta-
on respectively the functional, control, informational,
tion on process models, but carefully formalise the se-
organisational, and operational aspects [9]. The com-
mantics specified in the XPDL standard. Formalis-
plete ontology and the translation tool can be found
ing the XPDL standard allows automatic translation
online2 .
of XPDL models (instance documents) into Web docu-
ments based on standardised Web ontology languages 3.1 Functional Aspect
such as OWL or WSML. Based on these Web ontol-
ogy languages, the ontologised process models can be The functional aspect provides modelling facilities
interlinked and enriched with business knowledge in to define workflow hierarchies and generic properties
existing background ontologies. We further propose to of workflow models. The majority of functional prop-
extend the oXPDL model with instance related proper- erties in the oXPDL model are referenced through the
ties (oXPDL+). These extensions can model the events PackageHeader concept, defining the hierarchical lay-
taking place during the execution of a process model. ering of workflows, the type declarations, applications
The concepts in oXPDL dealing with run-time informa- and artifacts shared between process models, and the
tion are based upon standard workflow log meta models properties related to the graphical layout to represent
such as the one described in MXML [3]. a BPMN model or a proprietary graph-based model.
Additional information required to model process in-
2 Related work stances in oXPDL+ are mainly concerned with status
information, data and performative aspects of a pro-
Our work is partially based on PSL [6], a first-order cess. Most importantly, a OccurrenceStatus concept is
logic process ontology: the PSL axiomatisation can be used to model the execution state of the entire pro-
used for behavioural reasoning in our ontology. In con- cess or parts of it. The status information (i.e. occur-
trast to our work, PSL does not facilitate integration rence states such as active, suspended, resumed, can-
and reuse of other ontologies with background knowl- celled, aborted, assigned etc.) can be used to determine
edge in Web ontologies. the current state of execution (if queried at runtime)
Other process interchange formats include the Petri or to analyse the execution results of individual tasks
Net Markup Language [1], the XML Metadata Inter- or the entire process after completion of the process.
change specification [11] and the Graph eXchange Lan- Our competency question #1 (“How many times has
guage [15]. However, these have only informal seman- the “Purchase” process being suspended?”) can be an-
tics, focus on control-flow with little attention to data swered with a query ranging over status properties as
modelling or organisational modelling, and do not in- shown in listing 1.
tegrate with background knowledge.
Business intelligence techniques based on process
models have been proposed by Grigori et al. [5], who
describe a process mining toolset on top of HP’s Pro- 2 See http://www.m3pe.org/oXPDL/

84
 
XPDL are only referenced by an external identifier, in
?a[isOccurrenceOf hasValue PurchaseProcess] memberOf
ProcessOccurrence and
?a[hasStatus hasValue suspended] memberOf ProcessOccurrence.
oXPDL such identifiers can point to an external mes-
  sage ontology. This allows one not only to use the type
Listing 1: Answering competency question #1 hierarchy of the message in the evaluation of expres-
sions or in the oXPDL mapping class, but control flow
3.2 Control Aspect or event triggers can actually be based on an evaluation
The control aspect is concerned with the task or- of the message content. For our motivating example we
dering in a process model and the routing along those can reuse a RosettaNet message ontology to reference
tasks. In XDPL as well as in the proposed ontolo- the types of the PIP3A1 and PIP3A4 messages. This
gisation in oXPDL, the Process type constitutes the approach, however, requires that there is an infrastruc-
primary modelling element. It groups related activi- ture in place that translates the actual XML messages
ties, data, and resources together. Activities in XPDL used in the communication to ontology instances as
represent the reusable task behaviour in a process and described in Haller et al. [7]. If such an approach is
take one of the following types, a triggered event, a followed and the RosettaNet ontology is imported, we
route activity that constrains the ordering of activities can query our model for the competency question #3
or a block activity. In oXPDL all activity types are (does a message in PIP3A4 include some substitutable
modelled accordingly. product) with the query shown in Listing 3.
   
instance PurchaseProcess memberOf ProcessType PIP3A4 send[hasMessage hasValue ?a] memberOf TaskSend and
hasName hasValue string(”PIP3A4”) ?a[hasIdentifier hasValue ?b] memberOf MessageType and
hasActivity hasValue Activity48 ?b[pip3a4:hasSubstituteProductReference hasValue pip3a4:ProductLineItemType]
memberOf pip3a4:ProductLineItemType
hasActivity hasValue Activity49
hasActivitySet hasValue ActivitySet2  
instance ActivitySet1 memberOf ActivitySet
hasActivity hasValue Activity48
Listing 4: Answering competency question #3
hasActivity hasValue Activity5
instance ActivitySet2 memberOf ActivitySet
hasActivity hasValue Activity49 This query is useful to determine if the provider (the
  process owner in our motivating example) quotes a sub-
Listing 2: Subprocesses and their associated activities
stitutable product that is a replaceable to the initially
  requested product.
PurchaseProcess[hasActivity hasValue ?a] memberOf ProcessType and
?b[hasActivity memberOf ?a] memberOf ActivitySet
  3.4 Organisational Aspect
Listing 3: Answering competency question #2
The organisational aspect defines who is responsible
Listing 2 shows an example snippet from our trans-
to perform a task in a workflow and gives the mod-
lated motivating example process including subpro-
eler means to assign constraints on the agent (be it a
cesses (ActivitySets) used within these processes. If
human or a machine). The organisational aspect in
we query for one of our competency questions (which
an XPDL document is only weakly defined; a process
activities belong to a subprocess), as shown in Listing
participant is simply a token of the following types: re-
3, the answers contain not only activities belonging to
source set, resource, organisational unit, role, human,
ActivitySets which are directly linked from the Pur-
or system. In oXPDL these types are modelled as in-
chaseProcess, but also activities which belong to an
dependent classes based on representations in the Sug-
ActivitySet in any other ProcessType. This query is for
gested Upper Merged Ontology (SUMO) [10], a richly
example useful for a process modeler to know in what
axiomatised formal ontology. Modelling the organisa-
context the activity is used in other workflow models.
tional properties semantically allows one to query the
The actual control flow in XPDL is modelled via ex-
knowledge base for competency question #4 (in which
plicit transitions between elements, including the rout-
processes does John Doe participate) with the query
ing activities modelling control flow constructs such as
shown in Listing 5.
Loop and Split. Due to space limitations we refer to  
Haller et al. [8] for details on the semantics of the rout- ?a[hasParticipant hasValue ?b] memberOf ProcessType and
?b[hasParticipantType hasValue ?c] memberOf Participant and
ing relations. ?c[hasType hasValue ?d] memberOf ParticipantType and
?d[seeAlso hasValue ”http://example.org/˜johndoe/foaf.rdf”]
memberOf Person
3.3 Informational Aspect  
Listing 5: Answering competency question #4
The informational aspect deals with data produc-
tion and data consumption, i.e. the data flow between 3.5 Operational Aspect
tasks. We provide a direct mapping from all data types The operational aspect deals with the modelling of
to the ontology. However, more importantly, the mod- applications to be managed and invoked by the WfMS.
elling of messages can significantly benefit from an on- These applications can be very different in nature, but
tological modelling approach. Whereas messages in the technical details of the application programs are

85
always kept transparent in the workflow model. Al-
though XPDL models different application types, such
as EJBs, Java Objects, XSLT scripts, Forms and Busi-
ness Rules, the most important modelling element are
Web Services. The Web Service modelling in oXPDL
was enriched as follows. First, the associated Input
and Output messages are referenced as a type Mes-
sage. Second, PartnerLinks and PartnerLinkTypes are
explicitly linked, similarly to the modelling of Web Ser-
vices in BPEL. In oXPDL the PartnerLink modelled in
the PackageHeader, as described in section 3.1, refer-
ences this partnerLinkType and defines which role is
taken by the process itself and which role is taken by
a partner. In this way, the partnerLinkType describes Figure 2: Processing steps of the conversion algorithm
a contract between two partners in terms of their roles
(which in oXDPL are also related to the Pool concept) References
and the corresponding WSDL portTypes the partners
have to provide. [1] J. Billington, S. Christensen, K. M. van Hee, E. Kindler,
Through the explicit referencing of messages and the et al. The petri net markup language: Concepts, technol-
PartnerLinkType we can query the model for compe- ogy, and tools. In Proc. of ICATPN. 2003.
tency question #5 (which partners should implement a [2] J. de Bruijn, H. Lausen, A. Polleres, and D. Fensel. The
web service modeling language WSML: An overview. In
web service operation in ProcessType2) with the query Proc. of ESWC. 2006.
shown in Listing 6. [3] B. F. van Dongen and W. M. P. van der Aalst. A meta
  model for process mining data. In Proc. of INTEROP.
PurchaseProcess[hasApplication hasValue ?a] memberOf ProcessType and
?a[hasType hasValue ?b] memberOf Application and 2005.
?b[hasWebService hasValue ?c] memberOf ApplicationType and
?c[hasWebServiceOperation hasValue ?d] memberOf WebService and [4] M. Dumas, W. M. P. van der Aalst, and A. H. ter Hofstede.
?d[hasPartner hasValue ?e] memberOf WebServiceOperation Process Aware Information Systems: Bridging People and
 
Software Through Process Technology. John Wiley & Sons,
Listing 6: Answering competency question #5 Ltd, Hoboken, New Jersey, 2005.
[5] D. Grigori, F. Casati, M. Castellanos, U. Dayal, et al.
4 Converter Implementation Business process intelligence. Computers in Industry,
53(3):321–343, 2004.
[6] M. Gruninger. Ontology of the process specification lan-
The process model conversion involves two steps. guage. In S. Staab and R. Studer, (eds.) Handbook on
First, the oXPDL ontology is loaded, serving as the lan- Ontologies, pp. 575–592. Springer-Verlag, 2004.
guage grammar including the concept hierarchy, its at- [7] A. Haller, J. Gontarczyk, and P. Kotinurmi. Towards a
complete SCM Ontology - The Case of ontologising Roset-
tributes and their cardinalities and second, the XPDL
taNet. In Proc. of SAC. 2008.
instance are analysed. The complete conversion al- [8] A. Haller, W. Gaaloul, and M. Marmolowski. Analysis and
gorithm of an XML instance according to the XPDL mining of ontological process model instances. Tech. Rep.
schema is illustrated in the activity diagram in figure DERI-TR-2007-04-01, DERI, 2008.
2. The result of the conversion process is a knowledge [9] S. Jablonski. Mobile: A modular workflow model and ar-
base with the set of classes and properties from oXPDL chitecture. In Proc. of DYNMOD. 1994.
and the associated instances created based on the XML [10] I. Niles and A. Pease. Towards a standard upper ontology.
In Proc. of FOIS. 2001.
input.
[11] OMG. Mof 2.0/xmi mapping specification, v2.1. 2001.
[12] A. P. Sheth, W. M. P. van der Aalst, and I. B. Arpinar.
5 Conclusion Processes driving the networked economy. IEEE Concur-
rency, 7(3):18–31, 1999.
We have presented an approach to ontologise the [13] WfMC. Workflow Standard Process Definition Interface –
XPDL standard, resulting in our oXPDL ontology, ex- XML Process Definition Language. TR WFMC-TC-1025,
WfMC, 2005.
tended with workflow log modelling capabilities defined
[14] M. Uschold and M. Grüninger. Ontologies: principles,
in oXPDL+. We have explained the ontologisation
methods, and applications. Knowledge Engineering Re-
methodology based on a guiding set of “competence view, 11(2):93–155, 1996.
questions”, and have shown how oXPDL models can [15] A. Winter and C. Simon. Using gxl for exchanging busi-
answer these questions on an automatically translated ness process models. Inf. Syst. E-Business Management,
XPDL process model. 4(3):285–307, 2006.

86

View publication stats

You might also like