<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">BPAL: A Platform for Managing Business Process Knowledge Bases via Logic Programming</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Fabrizio</forename><surname>Smith</surname></persName>
							<email>fabrizio.smith@iasi.cnr.it</email>
							<affiliation key="aff0">
								<orgName type="department">National Research Council</orgName>
								<orgName type="institution">IASI &quot;Antonio</orgName>
								<address>
									<addrLine>Ruberti&quot; -Viale Manzoni 30</addrLine>
									<postCode>00185</postCode>
									<settlement>Roma</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Dario</forename><surname>De Sanctis</surname></persName>
							<email>dario.desanctis@iasi.cnr.it</email>
							<affiliation key="aff0">
								<orgName type="department">National Research Council</orgName>
								<orgName type="institution">IASI &quot;Antonio</orgName>
								<address>
									<addrLine>Ruberti&quot; -Viale Manzoni 30</addrLine>
									<postCode>00185</postCode>
									<settlement>Roma</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Maurizio</forename><surname>Proietti</surname></persName>
							<email>maurizio.proietti@iasi.cnr.it</email>
							<affiliation key="aff0">
								<orgName type="department">National Research Council</orgName>
								<orgName type="institution">IASI &quot;Antonio</orgName>
								<address>
									<addrLine>Ruberti&quot; -Viale Manzoni 30</addrLine>
									<postCode>00185</postCode>
									<settlement>Roma</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">BPAL: A Platform for Managing Business Process Knowledge Bases via Logic Programming</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">7A45EA7920B2900B0C8126389C2FB529</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T23:59+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract/>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>The adoption of structured approaches for the management of the Business Processes (BPs) operating within an organization is constantly gaining popularity. Nevertheless, their further automation is severely hampered by the fact that standard approaches are an insufficient means for capturing the complex process-related knowledge and making it available in a machine-accessible form <ref type="bibr" target="#b0">[1]</ref>. As a result, many tasks, such as process analysis, verification, retrieval and composition, still require great manual efforts. In this scenario, the application of well-established techniques stemming from the area of Knowledge Representation has been shown as a promising approach for the enhancement of BP and Web Service <ref type="bibr" target="#b0">[1,</ref><ref type="bibr" target="#b1">2]</ref> management systems.</p><p>While several tools are today available for the modeling, verification, simulation, and execution (e.g., Intalio, Tibco, YAWL, Enhydra Shark), no commercial tool enables the semantic annotation of BP models, nor semantics-based reasoning services. Although several approaches have been proposed in literature to enable the exploitation of semantic facilities (see, e.g., the seminal work in <ref type="bibr" target="#b1">[2,</ref><ref type="bibr" target="#b2">3]</ref>, and recent proposals <ref type="bibr" target="#b3">[4,</ref><ref type="bibr" target="#b4">5]</ref>), very few implemented tools (e.g., <ref type="bibr" target="#b5">[6,</ref><ref type="bibr" target="#b6">7]</ref>) give a (limited) support to the integrated management of the structural definition of a flow model, the formal definition of its behavior, and the domain knowledge related to the business scenario where it operates.</p><p>The BPAL platform implements a BP modeling and reasoning environment where the procedural knowledge of a BP can be enriched through ontology-based annotations. The theoretical basis of the tool is the Business Process Abstract Language <ref type="bibr" target="#b7">[8]</ref>, a language grounded in Logic Programming (LP) for representing and reasoning on various facets of process knowledge: (i) the meta-model of a BP schema (BPS), which covers a core of the BPMN notation, (ii) the BPS execution semantics, specified in a specialized version of the Fluent Calculus, a well-known LP-based action language, (iii) the behavioral properties of process executions, expressed by means of the CTL temporal logic, and (iv) the domain specific semantics of individual activities occurring in a BP, defined via OWL annotations (falling within the OWL 2 RL fragment) along the line of Semantic Web Services proposals.</p><p>The BPAL platform provides a graphical user interface to ease the definition of a BP Knowledge Base (BPKB) that collects the various pieces of process knowledge. BPAL also provides a reasoner implementing services for the enactment, verification, retrieval, and composition of processes in the BPKB. Complex queries combining different aspects of process knowledge can be expressed in QuBPAL <ref type="bibr" target="#b8">[9]</ref>, a query language based on the SELECT-WHERE paradigm. QuBPAL queries are translated into clausal form and answered through an efficient, sound and complete LP query evaluation mechanism.</p><p>2 An Overview of the Functionalities of BPAL Management of BP Repositories. The platform provides functionalities for managing BP repositories, such as: (1) creating a new BPS, (2) importing an existing BPS from an XML serialization of a BPMN diagram, and (3) editing a BPS via a graphical editor. Semantic Annotation. Two kinds of annotations enable the enrichment of a BPS with domain related knowledge defined in a given reference ontology: (1) terminological annotations, which associate BPS elements with concept expressions, and (2) functional annotations, which define the conditions under which flow elements can be executed and the effects of their execution on the state of the world. Enactment. The execution of a BP is modeled as an execution trace, corresponding to a plan in the Fluent Calculus, i.e., a sequence of actions of the form [begin(e 1 ), . . . , complete(e n )] where e i represents a flow elements. Execution traces correspond to process logs, which are commonly stored by BPM systems to record the enactment of BP instances. BPAL can verify whether a trace can be generated by a BP enactment (i.e., the compliance of a trace w.r.t. a given BPS) and, by exploiting the LP inference mechanism, the rules defining the trace semantics can also be used to generate the traces of a BPS satisfying some given (behavioral and/or ontological) property. Verification. BPAL enables the verification of properties that depend on the interaction between the operational behavior of the process and the ontology-based semantic annotation. Thus, besides well-known correctness criteria typically addressed in the workflow community (e.g., soundness), the tool is also able to verify that, during a BP enactment, no semantics-related constraint is violated. For instance, given a BPS named p, we can define the following predicate:</p><p>holds(not(ef(false)), bps(p)) meaning that no state is reachable (expressed by the temporal operator ef 'exists finally') where the false concept can be inferred from functional annotations specifying the effects of execution (e.g., o : approvedPO and o : rejectedPO) and executionindependent OWL axioms (e.g., approvedPO rejectedPO false). Compliance. Temporal queries can also be used for analyzing the compliance with business rules, i.e., directives expressing internal policies and regulations of an enterprise. In an eProcurement scenario, one such compliance rule may be that every order is eventually closed. This rule can be expressed by the following predicate meaning that it is not possible to reach the final state of the process where some order is not closed: holds(not(ef(final(p) and nonclosedP0)), bps(p)) Here nonclosedP0 holds in a given state if, for some O, the OWL assertion O : order holds and the OWL assertion O : closedP0 does not hold. Retrieval. The LP inference mechanism based on resolution can be also used for computing, via unification, substitutions for variables occurring in queries. BPAL exploits this query answering mechanism and provides a reasoning service for the retrieval of process fragments described in a declarative way. In particular, the WHERE clause of a QuBPAL query can specify a combination of ontological, structural, and behavioral properties. For instance, if we want to retrieve all activities that must precede a delivery and require an authorization by the sales manager, then we may issue the following query (names prefixed by '?' denote variables):</p><p>SELECT ?a WHERE precedes(?a, delivering, p) AND requiresSalesMgrAuth(?a) where (i) precedes(a, b, p) is a predicate, defined by using the CTL temporal operators, which means that in any enactment of process p, activity a precedes activity b, and (ii) requiresSalesMgrAuth(?a) holds if the (terminological) annotation of ?a is a concept subsuming the OWL assertion ∃ requiresAuth.salesMgr. Composition. The tool allows the user to specify a process skeleton, which constitutes a high level definition of a new BP to be composed by retrieving subprocesses from a given BP repository <ref type="bibr" target="#b9">[10]</ref>. Tasks appearing in the skeleton are associated with local constraints, which express requirements for the selection of the corresponding subprocesses to be retrieved, and global constraints, specifying the requirements on the composed BPS as a whole. Local and global constraints are expressed as QuBPAL queries and evaluated over the BPKB in order to compute possible compositions. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Tool Description</head><p>The BPAL platform is implemented as an Eclipse Plug-in <ref type="foot" target="#foot_0">1</ref> , whose main components are depicted in the functional view in Figure <ref type="figure" target="#fig_1">2</ref>.</p><p>The BPKB Editor provides a graphical user interface to define a BPKB and to interact with the BPAL Reasoner. It encompasses: a tree view of the available resources (Fig. <ref type="figure" target="#fig_0">1a</ref>), the STP<ref type="foot" target="#foot_1">2</ref> BPMN Modeler (Fig. <ref type="figure" target="#fig_0">1b</ref>), a browser for the visualization of OWL ontologies (Fig. <ref type="figure" target="#fig_0">1c</ref>), an annotation panel (Fig. <ref type="figure" target="#fig_0">1d</ref>), and finally a query prompt (Fig. <ref type="figure" target="#fig_0">1e</ref>) to submit queries and collect the results (Fig. <ref type="figure" target="#fig_0">1f</ref>).</p><p>The BPAL Reasoner provides the means to process and query the BPKB. Process schemas are imported into the BPKB from BPMN process models via the BPMN2BPAL interface. In order to ease the sharing and re-use of semantic meta-data, semantic information used and produced during the annotation process (i.e., reference ontologies and semantic annotations) can be exported and imported from OWL/RDF files by means of the RDF I/O module. The underlying rule-based reasoner can deal indifferently with RDF, RDFS and OWL (restricted to the RL profile). The BPKB Manager handles the set-up and the interaction with the LP engine by initializing and updating a BPKB. After populating the BPKB, inference is essentially performed by posing queries to the XSB Prolog engine<ref type="foot" target="#foot_2">3</ref> , connected through a Java/Prolog interface. XSB extends conventional Prolog systems with an operational semantics based on tabling, i.e., a mechanism for storing intermediate results and avoiding to prove sub-goals more than once. In our setting, XSB has a crucial advantage with respect to other Prolog systems, because tabling ensures the termination of query evaluation over a BPKB. Finally, the Query Manager exposes functionalities to translate QuBPAL queries into LP queries, evaluate them, and collect the results in a textual form or export them in an XML serialization. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Discussion</head><p>The BPAL platform presented in this paper enables the combination of the procedural and ontological perspectives related to process knowledge in a very smooth and natural way. BPAL provides a uniform framework for modeling and semantically enriching BP models, in order to reason on properties that depend on the sequence of operations that occur during process enactment and also on the domain where the process operates. In doing this, our approach does not introduce a new BP modeling paradigm, but provides a framework where one can map and integrate knowledge represented by means of existing formalisms. This is very important from a pragmatic point of view, as one can express process-related knowledge by using standard modeling languages such as BPMN for BP models and OWL for ontologies, and then automatically translate this knowledge into logic programs (see <ref type="bibr" target="#b7">[8]</ref> for details), thus allowing the use of standard LP methods and tools to perform reasoning. This LP translation also enables the application of further, very sophisticated reasoning techniques recently developed in the field of logic programming. In this respect, interesting directions of future work include the enhancement of our framework with: (i) process mining facilities, by adopting Inductive Logic Programming techniques, such as the ones presented in <ref type="bibr" target="#b10">[11]</ref>, and (ii) verification techniques for BPs in the presence of data constraints, by following approaches based on Constraint Logic Programming such as, for instance, the one proposed in <ref type="bibr" target="#b11">[12]</ref>.</p><p>The approach has been applied to real-world scenarios coming from end-users involved in the European Project BIVEE <ref type="foot" target="#foot_3">4</ref> and from the pilot conducted within a collaboration between the italian CNR and SOGEI (ICT Company of the Italian Ministry of Finance). The former is related to the modeling of production processes in manufacturing oriented networked-enterprises, while the latter regards the procedural modeling of legislative decrees in the tax domain. The experiments we have conducted are encouraging and revealed the practical usability of the tool and its acceptance by business experts. On a more technical side, the LP reasoner based on the XSB system shown a significant efficiency, since very sophisticated reasoning tasks have been performed on BPs of small-to-medium size (about one hundred of activities and several thousands of reachable states) in an acceptable amount of time and memory resources.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig. 1 :</head><label>1</label><figDesc>Fig. 1: GUI of the BPAL platform</figDesc><graphic coords="3,134.76,337.13,340.15,176.61" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Fig. 2 :</head><label>2</label><figDesc>Fig. 2: Functional view of the BPAL platform</figDesc><graphic coords="4,177.28,345.38,255.12,140.66" type="bitmap" /></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">http://www.eclipse.org/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_1">http://www.eclipse.org/soa BPAL: A Platform for Managing Business Process Knowledge Bases</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_2">http://xsb.sourceforge.net/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_3">BIVEE: Business Innovation and Virtual Enterprise Environment (FoF-ICT-2011.7.3-285746)   </note>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Semantic Business Process Management: A Vision Towards Using Semantic Web Services for BPM</title>
		<author>
			<persName><forename type="first">M</forename><surname>Hepp</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of Int. Conf. on e-Business Engineering</title>
				<meeting>of Int. Conf. on e-Business Engineering</meeting>
		<imprint>
			<publisher>IEEE</publisher>
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<title level="m" type="main">Enabling Semantic Web Services: The Web Service Modeling Ontology</title>
		<author>
			<persName><forename type="first">D</forename><surname>Fensel</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2006">2006</date>
			<publisher>Springer</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">OWL-S: Semantic Markup for Web Services</title>
		<author>
			<persName><forename type="first">M</forename><surname>Burstein</surname></persName>
		</author>
		<ptr target="http://www.w3.org/Submission/OWL-S/" />
	</analytic>
	<monogr>
		<title level="m">W3C Member Submission</title>
				<imprint>
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">WSSL: A Fluent Calculus-Based Language for Web Service Specifications</title>
		<author>
			<persName><forename type="first">G</forename><surname>Baryannis</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Plexousakis</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the 25th CAiSE Conference</title>
				<meeting>of the 25th CAiSE Conference</meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2013">2013. 7908</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Ontology-Based Governance of Data-Aware Processes</title>
		<author>
			<persName><forename type="first">D</forename><surname>Calvanese</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the 6th Int. Conf. on Web Reasoning and Rule Systems</title>
		<title level="s">LNCS</title>
		<meeting>of the 6th Int. Conf. on Web Reasoning and Rule Systems</meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2012">2012</date>
			<biblScope unit="volume">7497</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">WSMO Studio: A Semantic Web Services Modelling Environment for WSMO</title>
		<author>
			<persName><forename type="first">M</forename><surname>Dimitrov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the 4th European Conf. on the Semantic Web. LNCS</title>
				<meeting>of the 4th European Conf. on the Semantic Web. LNCS</meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2007">2007</date>
			<biblScope unit="volume">4519</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Supporting Execution-level Business Process Modeling with Semantic Technologies</title>
		<author>
			<persName><forename type="first">M</forename><surname>Born</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the 14th DASFAA Conference. LNCS</title>
				<meeting>of the 14th DASFAA Conference. LNCS</meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2009">2009</date>
			<biblScope unit="volume">5463</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Rule-based Behavioral Reasoning on Semantic Business Processes</title>
		<author>
			<persName><forename type="first">F</forename><surname>Smith</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Proietti</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the 5th Int. Conf. on Agents and Artificial Intelligence, SciTePress</title>
				<meeting>of the 5th Int. Conf. on Agents and Artificial Intelligence, SciTePress</meeting>
		<imprint>
			<date type="published" when="2013">2013</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Ontology-Based Querying of Composite Services</title>
		<author>
			<persName><forename type="first">F</forename><surname>Smith</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Missikoff</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Proietti</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Business System Management and Engineering</title>
				<meeting><address><addrLine>BSME</addrLine></address></meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2010">2012. 2010</date>
			<biblScope unit="volume">7350</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Semi-Automatic Process Composition via Semantics-Enabled Sub-Process Selection and Ranking</title>
		<author>
			<persName><forename type="first">F</forename><surname>Smith</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Bianchini</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Enterprise Interoperability V, I-ESA&apos;12</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Applying Inductive Logic Programming to Process Mining</title>
		<author>
			<persName><forename type="first">E</forename><surname>Lamma</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the 17th Int. Conf. on Inductive Logic Programming</title>
				<meeting>of the 17th Int. Conf. on Inductive Logic Programming</meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2008">2008</date>
			<biblScope unit="volume">4894</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Generalization strategies for the verification of infinite state systems</title>
		<author>
			<persName><forename type="first">F</forename><surname>Fioravanti</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Pettorossi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Proietti</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Senni</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Theo. Pract. Log. Prog</title>
		<imprint>
			<biblScope unit="volume">13</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="175" to="199" />
			<date type="published" when="2013">2013</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
