In prostate brachytherapy, the analysis of the 3D pose information of each individual implanted seed is one of the critical issues for dose calculation and procedure quality assessment. This paper addresses the development of an automatic image processing solution for the separation, localization and 3D orientation estimation of prostate seeds. This solution combines an initial detection of a set of seed candidates in CT images (using a thresholding and connected component method) with an orientation estimation using components analysis (PCA). The main originality of the work is the ability to classify the detected objects based on a priori intensity and volume information and to separate groups of seeds using a modified k-means method. Experiments were carried out on CT images of a phantom and a patient aiming to compare the proposed solution with manual segmentation or other previous work in terms of detection performance and calculation time.

I. INTRODUCTION

ith an incidence rate of 152 per 100,000 men worldwide per year for 2006-2010, prostate cancer is the second most frequently diagnosed cancer in men (cf. SEER Cancer Statistics Review). The improvement of the diagnostic and therapeutic methods for prostate cancer has become increasingly important. The low-risk prostate brachytherapy treatment, that uses low dose rate radioactive seeds, is a common and highly effective method to manage localized prostate cancer. Lines of seeds, loose or stranded, are inserted through parallel needles into the prostate. In practice, the number of seeds implanted in the prostate commonly range from 40 to 100. The goal of a successful operation is to position the seeds in order to get the proper dose coverage throughout the prostate while limiting the risk for the neighboring organs. In theory, seeds are aligned in the needle insertion direction. However, in practice the seed implantation depends on many biomechanical factors as well as human experience. Hence, the seeds may be dropped out of position in spite of any special care or effort used when placing the needles and delivering the seeds. This may also result in groups of closely spaced seeds. We name such a group a union-seed (Fig. 1). For treatment quality assessment, a CT-based post-implant dosimetry is generally performed one month after the intervention once any inflammatory modification of the prostate has disappeared. The CT examination often shows that seeds are not aligned in the W  *This work is supported by INSERM Dorgipro project. (1) These authors are with UJF-Grenoble 1 / CNRS / TIMC-IMAG UMR 5525, Grenoble, F-38041, France. (2) These authors are with Radiotherapy department, Grenoble University Hospital, 38100 Grenoble, France. implantation direction with also a possible migration of the seeds [START_REF] Gao | Effects of seed migration on post-implant dosimetry of prostate brachytherapy[END_REF]. Although it has been recommended by the American Association of Physicists in Medicine [START_REF] Rivard | Update of aapm task group no. 43 report: A revised aapm protocol for brachytherapy dose calculations[END_REF] to determine the 3D dose distributions of brachytherapy seeds based on real seed positions and orientations, most treatment planning software still work with the assumption that all seeds are aligned with the CT axis. The optimal location and orientation of the seeds, including the ability to separate union-seeds, have therefore been reported as a major challenge for the evaluation of prostate brachytherapy [START_REF] Lee | Prostate Brachytherapy Seed Localization with Gaussian Blurring and Camera Self-calibration[END_REF][START_REF] Chng | Prostate brachytherapy postimplant dosimetry: Seed orientation and the impact of dosimetric anisotropy in stranded implants[END_REF][START_REF] Corbett | The effect of seed orientation deviations on the quality of 125i prostate implants[END_REF][START_REF] Kuo | Mri-based prostate brachytherapy seed localization[END_REF][START_REF] Wei | Automated localization of implanted seeds in 3d trus images used for prostate brachytherapy[END_REF].

Thus seed localization has been largely studied and published. For example, a blob detection using Laplacian of Gaussian was considered in [START_REF] Kuo | Mri-based prostate brachytherapy seed localization[END_REF] to determinate the location of seeds in IRON images (Inversion-Recovery with On-Resonant Water Suppression) with no explicit mention of the seed orientations.Wei et al [START_REF] Wei | Automated localization of implanted seeds in 3d trus images used for prostate brachytherapy[END_REF] segmented the seeds from the subtraction map between background and post-implant ultrasound images and then applied a PCA method for orientation detection. Meaningful advances were also reported for seed localization in X-ray images such as volume reconstruction using Gaussian-blurred images in [START_REF] Lee | Prostate Brachytherapy Seed Localization with Gaussian Blurring and Camera Self-calibration[END_REF]. Chng et al. [START_REF] Chng | Prostate brachytherapy postimplant dosimetry: Seed orientation and the impact of dosimetric anisotropy in stranded implants[END_REF] estimated the seed orientations from the tangent vector to the curve of a seed strand identified in postimplant CT at each seed's position. A large collection of papers consider stranded seeds whose real orientation is generally closer to the planned one. These types of seeds, however, limit the clinician's ability to sculpt the dose to the treatment constraints. Moreover, these methods do not manage union-seeds.

We have begun developing post-implant image processing software at our institution, emphasizing the need for small computational complexity and high effectiveness of seed detection. In this study, we exploit the high intensity appearance of radioactive seeds in CT images for a solution based on thresholding and connected component segmentation [START_REF] Shapiro | Computer Vision[END_REF]. In addition to the main objective of

Huu-Giao Nguyen 1 , Celine Fouard 1 , Francois Meneu 2 , Jean-Yves Giraud 2 and Jocelyne Troccaz 1

Automatic 3D seed location and orientation detection in CT image

for prostate brachytherapy accurate seed localization and orientation, we also handle the separation of union-seeds. Here, the PCA method [START_REF] Jolliffe | Principal Component Analysis[END_REF] is used for orientation estimation and the k-means segmentation method [START_REF] Han | Data Mining: Concepts and Techniques[END_REF] is improved. This paper is organized as follows: in Section II, the materials used during this work are presented. In Section III we described the proposed solution.

Evaluation is reported for datasets coming from a phantom and one anonymous patient in Section IV. We then discuss main contributions and potential extensions of the proposed approach in Section V.

II.MATERIALS

The clinical team of the Grenoble University Hospital uses BEBIG IsoSeed®I-125 seeds. A seed is made of a cylindrical-shaped ceramic material, saturated with radioactive iodine-125 compound and a gold marker located in the center, which are all enclosed by a laser-sealed titanium tube. The outer physical dimensions of the seed are l=4.5±0.2mm length and r=0.4±0.02mm external radius. The iodine-125 isotope emits photons at a maximum energy of 35keV and has a half-life of 59.46 days. This information is provided by the manufacturer [START_REF]IsoSeedI-125 (I25.S06) Instructions for Use[END_REF].

The 3D CT images were obtained using a GE Lightspeed RT16 scanner with the default X-ray tube parameters: 120kVp, 380-440mA.s. The slice width was 0.625mm with 16frames/sec for each slice. The image reconstruction matrices were 512x512 archived in DICOM 3.0 format with 16-bit gray-level intensities.

III. METHODS

A. Seed localization using connected object segmentation

The initial step consists in detecting a list of candidate seeds using segmentation methods. Numerous approaches in image processing have been proposed to segment individual objects in images, e.g. watershed transformation [START_REF] Vincent | Watersheds in digital spaces: an efficient algorithm based on immersion simulation[END_REF] and Level Set [START_REF] Osher | Geometric Level Set Methods in Imaging Vision and Graphics[END_REF]. In this paper, the connected component labeling method [START_REF] Shapiro | Computer Vision[END_REF] is considered because of its simplicity and its computational efficiency with only an intensity threshold parameter t. Indeed, we first threshold the original volume in accordance with a value t, then each connected component (using 26-connectivity) is assigned a label i. All the voxels corresponding to a connected component have the same label, unique to its particular component. The location of each component is determined as its center of mass ci.

In this work, the choice of intensity threshold t can be heuristically set based on the image characteristics and the physical characteristics of the X-ray absorption of the seeds. Fig. 2 shows an example of the connected components detected in the CT image of a patient. We can assume that the pelvic bones are the very large components with volumes more 100 times bigger than the real volume of the seeds (denoted as RV=r 2 πl). In contrast, noise is composed of tiny components, with volumes less than one third of RV. The pelvic bones and noise are removed. The other components are kept as the candidate seeds consisting of two types: single seeds and union-seeds. The union-seeds are classified based on their volume compared to a single seed (denoted Vsingle). In practice, up to 4 or 5 seeds can be included in a union-seed. In this first stage, the union-seeds cannot be separated. In practice, the union-seeds always lead to potential inaccuracies in location and orientation estimation. Hence, we propose an extension of this method with a separation step presented in Section III.C.

B. Orientation estimation using PCA method

Considering the set of n detected voxels for each component, this second stage aims at estimating the 3D orientation of the components. Numerous approaches have been proposed including 3D Hough plane transforms [START_REF] Qiu | Needle segmentation using 3d hough transform in 3d trus guided prostate transperineal therapy[END_REF] or minimal enclosing bounding boxes [START_REF] Lahanas | Optimized bounding boxes for three-dimensional treatment planning in brachytherapy[END_REF]. However, these methods are not suited for recognition in medical images because of their complexity and the high impact of image artifacts. In this work, we focused on a solution for 3D orientation estimation that would improve both aspects, by investigating the PCA method [START_REF] Jolliffe | Principal Component Analysis[END_REF]. The PCA method is the simplest and most robust mathematical procedure for compressing and extracting the description of a set of correlated observations by rejecting low variance features. Considering p-dimensional feature vectors (in our case, 3D), the PCA method will be the projection of this data onto q principal components. The first principal component v1 is the feature space along which projections have the largest eigenvalue λ1 of the covariance matrix C of the point cloud. This is chosen as the orientation of the object. The second principal component v2 is the direction which maximizes variance among all directions orthogonal to the first one.

C. Union-seed separation using the clustering method

Given the set of voxels of each union-seed detected by the connected component labeling, we investigate an unsupervised partitioning method using the k-means clustering method [START_REF] Han | Data Mining: Concepts and Techniques[END_REF]. We separate the components into k single seeds by relabeling each voxel as belonging to the cluster with the nearest mean. The number k of seeds grouped in a union-seed is obtained by comparing the component volume V to Vsingle : k=V/Vsingle, rounded to the nearest integer value. We first randomly select k points as the initial cluster centroids. Then, each voxel is assigned to the closest centroid. We iterate this process until all centroids do not change any more.

K-means algorithm shows its computational simplicity in many classification applications. However, there are some limitations of k-means because the resulting clusters strongly depend on the selection of the initial centroids and size and shape differences of the regions shared by the clusters. In practice, the biggest inaccuracies of this classical k-means method occur when separating groups of parallel seeds (see Section IV). Hence, we propose an improvement to choose the initial cluster of the k-means algorithm by exploiting the information given by the PCA. We denote k-means-FS (kmeans-for-seeds), the method detailed as follows. We first estimate two main directions {v1,v2} of the union-seed using the PCA method. Then, (k-1) parallel planes are defined by the main direction v1 of the union-seed and the distance d = λ2/k between them (see Fig. 3), where λ2 the second eigenvalue of matrix C of the union-seed. These parallel planes divided the union-seed's space into k partitions. Finally, we apply the k-means clustering algorithm with the initial cluster centers that are the centroids of these k partitions.

In this work, we experimented with both the classical kmeans method with different initial cluster centroids and the k-means-FS method. The cylindrical form, corresponding to the model of the seed, was reconstructed from the centroid and orientation information for each individual seed detected in the union-seed. The sum of the number of voxels common to these cylindrical forms and the union-seed was then calculated for each solution. The solution with the greatest sum was chosen as the best one.

IV. RESULTS

A. Experimental setup

The validation of the proposed method was done using CT images of radioactive iodine-125 seeds implanted into: 1) a specially created phantom and 2) data from a real patient provided by the Grenoble University Hospital. Eleven seeds were manually positioned at the surface of the one-slab phantom (dimension 9x9x0.5cm 3 ). Pairs of seeds were placed in contact with each other at different orientations ranging from perpendicular to parallel, the main goal being to evaluate the ability to separate various types of unionseeds. The reference position of the seeds in the phantom was based on manual detection (Fig. 4). The patient data consisted of 72 seeds implanted during a prostate brachytherapy. The CT scanner image considered in this second experiment was taken one month after the seed implantation (Fig. 1). The reference position of the seeds in the prostate was manually reconstructed using clinical treatment planning software. In order to compare the reference location and orientation of seeds to their detected position and orientation, we used the Euclidean distance between their centroids c1,c2 and the dot product of their orientation vectors v1,v2 (Eq.1).

Δ d =√∑ i =1 3 (c 1i -c 2i ) 2 Δ θ=acos ( v 1 . v 2 ∥v1∥∥v2∥ ) (1)
where ||vi|| is the magnitude of the vector vi, the unit of distance Δd is mm, and of Δθ is degrees.

B. Phantom experiment

Table II shows the details of the orientation difference Δθ and distance Δd of detected seeds compared to their reference positions using the intensity threshold t = 1400.

Fig. 1 .

 1 Fig. 1. Example of implanted seeds as visible in one slice of CT image.

Fig. 2 .

 2 Fig. 2. Example of connected component detection in a 3D CT image with 190 objects detected using an intensity threshold of 700 (16-bit graylevel intensity).

  Image size(mm) Voxel size(mm) Max intensity Min intensity (1) 512 x 512 x 61 0.19 x 0.19 x 0The characteristics of the phantom (1) and patient (2) images. The implementation of the proposed solution was built on our open-source framework CamiTK [16] (using C++ with VTK and ITK libraries) on a 3.4GHz Intel Core i7-2600 CPU. More information about the DICOM images can be found in Tab.I. The voxel intensity, in Hounsfield Units, for each type of material in the CT images were: phantom material [0,400], patient soft tissues [0,400], patient bones [0,1350] and seeds [500,max].

Fig. 4 :Fig. 3 :

 43 Fig. 4: 3D CT scanner image of the phantom (left) and the distribution of the 11 seeds (right): the reference position (respectively detected position) of the seeds are painted in green (respectively, red). The seeds located from left to right at the bottom are numbered from 1 to 10. The single seed on top is numbered 11.

V. CONCLUSION

In this study, an accurate, reliable and fast approach for location and orientation estimation of brachytherapy seeds in CT images has been presented. It also enables to automatically and reliably separate union-seeds. These results provide the potential for improving dose calculation accuracy and procedure quality assessment. The dose impact of such accuracy has still to be demonstrated and a study with this objective in mind has been launched based on a series of patients. It will be separately published. Future work will extend to an automatic choice of an optimal intensity threshold and a robust solution of seed localization for other prostate image modalities such as ultrasound.

The best detection was obtained with the single seed no.11 where Δθ=0.23 o and Δd=0.02mm. In contrast, the most difficult case for orientation estimation was the parallel union-seeds, i.e. the seeds are nearly aligned in the same orientation (in our case, seeds no.5 and 6). The greatest error in distance occurred with the "T" configuration, where one seed was orthogonal to the other (seeds no.1 and 2). Δd 0.14 0.27 0.08 0.14 0.25 0.06 0.14 0.12 0.14 0.07 0.02

Table II: The details of the orientation difference Δθ and distance Δd between the detected seeds and their reference positions and orientations (t=1400).

The orientation difference Δθ and distance Δd with their standard deviations are also reported in Table III for 3 different choices of the intensity threshold spanning through the range of seed intensities ([500,1400,7431]). Overall, we ran this experiment for over 20 choices of t. The mean distance was 0.13±0.07mm compared to 0.3mm of Chng's method [START_REF] Chng | Prostate brachytherapy postimplant dosimetry: Seed orientation and the impact of dosimetric anisotropy in stranded implants[END_REF]. The mean orientation was 1.32 o ±0.9 compared to 2 o of Chng's method. The calculation time was 3.15s±0.3 compared to 9s of Chng's method and more than 30 minutes of manual determination of reference data. These comparisons must be interpreted carefully since the phantoms and computer systems are different. Note also that union-seed separation was not considered in Chng's method.

C. Patient experiment

Table III and Fig. 5 show the results of the proposed method of seed localization in the case of a real prostate brachytherapy. All 72 seeds were detected. The best result was obtained with t=1400, where there was no false detection and the orientation difference and distance to their reference values were smallest. The mean calculation time was 10.1s over 20 runs with different intensity thresholds t. It is a fast solution when compared to the half day of the manual detection used for the determination of reference data. From these experiment results, we suggest choosing the intensity threshold in the interval of [1300,1700]. Table III: The orientation difference Δθ, distance Δd with their standard deviations and the number of single seeds, union-seeds and false detection (FD) using the different choices of intensity threshold t for: phantom(1) and patient [START_REF] Rivard | Update of aapm task group no. 43 report: A revised aapm protocol for brachytherapy dose calculations[END_REF]. The false detection will be manually deleted in our software.


Thi-Hoa-Hue Nguyen
email: nguyenth@i3s.unice.fr

Nhan Le-Thanh
email: nhan.le-thanh@unice.fr

An Ontology-enabled Approach for Modelling Business Processes

Keywords: Business Process, CPN, Manipulation Operation, OWL DL Ontology, Representing

Coloured Petri Nets (CPNs) have formal semantics and can describe any type of workflow system, behavioral and syntax wise simultaneously. They are widely studied and successfully applied in modelling of workflows and workflow systems. There is an inherent problem regarding business processes modelled with CPNs sharing and subsequently their reuse need to be considered. The Semantic Web technologies, such as ontologies, with their characteristics demonstrate that they can play an important role in this scenario. In this paper, we propose an ontological approach for representing business models in a meta-knowledge base. Firstly, the CPN ontology is defined to represent CPNs with OWL DL. Secondly, we introduce four basic types of manipulation operations on process models used to develop and modify business workflow patterns. To the best of our knowledge, representing business process definitions and business workflow patterns as knowledge based upon ontologies is a novel approach.

Introduction

To date, software systems that automate business processes have been becoming more and more available and advanced. According to [START_REF]OMG: Workflow management facility specification[END_REF], process models, which are first designed during built-time phase on the basis of design requirements, are then automated by software systems during run-time. Therefore, grasping the requirements properly and then transforming them without losing any information into a semantically rich specification play an important role in supporting business process management. However, the existing practice of modelling business processes is mostly manual and is thus vulnerable to human error, resulting in a considerable number of failed projects. Consequently, it is desirable to develop an alternative approach, which ensures high quality and semantically rich business process definitions.

On one hand, Coloured Petri Nets (CPNs) [START_REF] Kristensen | The practitioner's guide to coloured petri nets[END_REF] have been developed into a full-fledged language for the design, specification, simulation, validation and implementation of large software systems. CPNs are a well-proven language suitable for modelling of workflows or work processes [START_REF] Jørgensen | From task descriptions via colored petri nets towards an implementation of a new electronic patient record workflow system[END_REF]. Although CPNs are widely studied and successfully applied in modelling of workflows and workflow systems, the lack of semantic representation of CPN components can make business processes difficult to interoperate, share and reuse.

On the other hand, an ontology with its components, which can provide machine-readable definitions of concepts, plays a pivotal role in representing semantically rich business process definitions. Once business process semantics are machine-processable, IT experts can easily develop their appropriate software systems from business process definitions.

Our objective, outlined in Fig. 1, is to represent Control flow-based Business Workflow Patterns (CBWPs) in a meta-knowledge base which intend to make them easy to be shared and reused among process-implementing software components. We focus on proposing an ontological model to represent Coloured Petri Nets (CPNs) with OWL DL. We first define a meta-knowledge base for CBWPs management. We then introduce manipulation operations on process models for the purpose of developing and modifying CBWPs. Our ongoing work is developing a graphical interface to design and simulate CBWPs. To the best of our knowledge, this is a novel approach for representing business process definitions and patterns as knowledge based upon ontologies. The rest of this paper is structured as follows: In Section 2, we recall the main notions of CPNs and ontologies. In Section 3, we introduce a novel ontology for CPNs. We then elucidate the realization of our ontology. In Section 4, we introduce four basic types of manipulation operations to support the creation and modification of CBWPs. We present related work in Section 5. Finally, Section 6 concludes the paper with an outlook on the future research.

Foundations

In this section, the main notions of CPNs and ontologies are introduced. On this basis, we will present an ontology for business processes in the upcoming Section.

Coloured Petri Nets

Coloured Petri Nets (CPNs) are extended from Petri nets with colour, time and expressions attached to arcs and transitions. A CPN, which is a directed bipartite, consists of places (drawn as ellipses) and transitions (drawn as rectangles) connected by directed arcs (drawn as arrows). Each place holds a set of markers called tokens. The number of tokens in a place can vary over time. Each token can carry both a data value called its colour and a time-stamp. The type of tokens in a place is the same type as the type of the place.

Since transitions may consume and produce tokens, it is necessary to use arc expressions to determine the input-output relations. An incoming arc indicates that tokens may be removed by the transition from the corresponding place while an outgoing arc indicates that tokens may be added by the transition.

In addition, CPNs allow us to structure the descriptions in a hierarchical way. Large models may be divided into sub-models, also known as sub-processes or modules, in order to get a layered hierarchical description. As a result, submodels can be reused. For more details on CPNs, please refer to [START_REF] Kristensen | The practitioner's guide to coloured petri nets[END_REF].

The Workflow Management Coalition (WfMC) [START_REF]WFMC: Workflow management coalition terminology and glossary (wfmc-tc-1011)[END_REF] identified four routing constructs including sequential, parallel, conditional and iteration. We use five building blocks, i.e., Sequence, Andsplit, Andjoin, Xorsplit, Xorjoin to model these types of routing. Consequently, a routing construct might contain control nodes (transitions in the building blocks) and activity nodes (other transitions). An example of a business process modelled with CPNs is shown in Fig. 2. This process model comprises the activity nodes T 1 , T 3 , T 4 , T 6 , T 8 , T 9 and T 11 connected by four control nodes T 2 , T 5 , T 7 , T 10 .

Fig. 2: An example of an order management process

Ontologies

Ontology definition languages such as RDFS1 , OIL2 or OWL3 can be used to define ontologies. Here, we focus on the Web Ontology Language (OWL), a W3C Recommendation, which is "a family of knowledge representation languages for authoring ontologies" [START_REF]Web ontology language[END_REF]. OWL ontologies can be categorised into three sublanguages OWL Lite, OWL DL, and OWL Full.

OWL DL, which stands for OWL Description Logic, is equivalent to Description Logic SHOIN (D). OWL DL supports all OWL language constructs with restrictions (e.g., type separation), provides maximum expressiveness while always keeping computational completeness and decidability. Therefore, we choose OWL DL language for our work with the aim of taking advantage of off-the-shelf reasoning technologies. For more details on OWL DL, please refer to [6].

It is important to underline that an ontology consists of several different components including classes (concepts), individuals (instances), attributes, relations and axioms, etc. Therefore, by using OWL DL language to formulate an ontology, we get an OWL DL ontology that contains a set of OWL DL (class, individual, data range, object property, data type property) identifiers, and a set of axioms used to represent the ontology structure and the ontology instances.

An Ontology for Business Processes modelled with

Coloured Petri Nets

Representation of Coloured Petri Net with OWL DL Ontology

In this subsection, we define semantic metadata for business processes modelled with CPNs. The main purpose is to facilitate business process models easy to be shared and reused among process-implementing software components. We continue our work at [START_REF] Nguyen | Representation of coloured workflow nets with owl dl ontoloty[END_REF], [START_REF] Nguyen | Representation of rdf-oriented composition with owl dl ontology[END_REF] to develop the CPN ontology. Each element of CPNs is concisely translated into a corresponding OWL concept. Fig. 3 depicts the core concepts of our CPN ontology. In the next step, we will describe the main constructs of the ontology modelled with OWL DL.

The CPN ontology comprises the concepts: CPNOnt defined for all possible CPNs; Place defined for all places; Transition defined for all transitions; InputArc defined for all directed arcs from places to transitions; OutputArc defined for all directed arcs from transitions to places; Token defined for all tokens inside places (We consider the case of one place containing no more than one token at one time); GuardFunction defined for all transition expressions; CtrlNode defined for occurrence condition in control nodes; ActNode defined for occurrence activity in activity nodes, Delete and Insert defined for all expressions in input arcs and output arcs, respectively; Attribute defined for all attributes of individuals); Value defined for all subsets of I 1 ×I 2 ×. . .×I n where I i is a set of individuals. Properties between the concepts in the CPN ontology are also indicated in Fig. 3. For example, a class P lace has two properties hasM arking and connectsT rans. Consequently, the concept P lace can be glossed as 'The class P lace is defined as the intersection of: (i) any class having at least one property connectsT rans whose value is equal to the class T ransition and; (ii) any class having one property hasM arking whose value is restricted to the class T oken'.

Realization

We rely on OWL DL and use Protégé4 , an OWL editor, to create our CPN ontology. We here describe some axioms created for the CPN ontology.

It is necessary to note that two OWL classes, owl : T hing and owl : N othing, are particularly predefined. The class extension of owl : T hing is employed to denote the set of all individuals. The class extension of owl : N othing is the empty set. As a result, each user-defined class is absolutely a subclass of owl : T hing.

• The class P lace comprises two properties connectsT rans and hasM arking.

The class axiom is created as follows: Class(P lace complete restriction(connectsT rans hasV alue(T ransition)) restriction(hasM arking allV aluesF rom(T oken) qualif iedCardinality(1))); • The class P lace is a sub-concept of the class CP N Ont. The class axiom is created as follows: SubClassOf (P lace CP N Ont); • The classes P lace and T ransition are mutual disjoint. The class axiom is created as follows: DisjointClasses(P lace T ransition);

• The domain of the property connectionsT rans is a union of the class P lace with the class InputArc. The range of this property is a union of the class T ransition with the class OutputArc. In addition, the properties connects-T rans and connectsP lace are inverse properties. We create the property axiom for connecsT rans as follows:

ObjectP roperty(connectsT rans domain(unionOf (P lace InputArc)) range(unionOf (T ransition OutputArc)) inverseOf (connectsP lace)); • The class Attribute contains at least one V alue. We create the class axiom for Attribute as follows:

EquivalentClasses(Attribute restriction(valueAtt allV aluesF rom(V alue) minQualif iedCardinality(1)));

After presenting some axioms created for Classes and P roperties of our ontology, we now introduce the modelling of Individuals being the third OWL element. Individuals or instances are generated based on the modeller and depend on the modelling objective. For example, Fig. 4 shows the mapping of the transition receive request named T 1 , which is depicted in Fig. 2, to the classes and properties of the CPN ontology.

<Transition rdf:ID="T_1"> <hasGuardFunction rdf:resource="#Guard_Request"/> <connectsPlace rdf:resource="#Received"/> </Transition> We have been introducing the CPN ontology represented in OWL DL. In order to develop or modify CBWPs (CPN models), in the next Section, we will present manipulation operations on their elements. We also introduce the corresponding manipulation statements written in the SPARQL language 5 to store concrete CBWPs (CPN models) in RDF6 .

Manipulation Operations on Basic Business Process Models

For the purpose of modelling basis business processes with CPNs, the following basic types of manipulation operations on its elements are required:

1. Inserting new elements (i.e., places, transitions or arcs, etc.) into a process model. 2. Deleting existing elements from a process model.

3.

Updating existing elements for adapting to a process model. 4. Editing the order of existing elements in a process model.

More complex operations can be developed based upon these basic operations. For example, merging two separate CBWPs, which represent two process models into one, can be considered as inserting all places, transitions and arcs from one pattern to the other. Besides, one new arc is also inserted in order to link these CBWPs.

We next define the basic manipulation statements by the corresponding pseudocodes. With the aim of storing CBWPs in RDF, we introduce the SPARQL statements being suitable to the manipulation statements. in the SPARQL query language fits for inserting new elements into the RDF file format. As an example, in Fig. 5, a new place, which contains a token and is connected to a transition, is inserted into a process model 7 .

INSERT DATA{ myWF:NameOfPlace a CPNOntology:Place; CPNOntology:hasMarking myWF:NameOfToken. myWF:NameOfWF CPNOntology:hasPlace myWF:NameOfPlace.}

Related work

As of today, many workflow modelling languages have been proposed, some of which have become widely accepted, used and replacing others. Most of them are based upon textual programming languages or graphical notations. For example, the Business Process Execution Language (BPEL) [START_REF] Andrews | Business process execution language for web services version 1[END_REF] is a standard way of orchestrating Web service execution in a business domain; the Business Process Model and Notation (BPMN) [START_REF]OMG: Business process model and notation[END_REF] is the de-facto standard for business process modelling; the Yet Another Workflow Language (YAWL) [11] is a domain specific language based on rigorous analysis of workflow patterns [START_REF]The workflow patterns home page[END_REF]; Petri Nets [13] and its extensions are well applied process modelling and analysis, etc. However, they use different concepts and different terminologies. This makes them difficult to inter-operate, share or reuse different workflow systems. As a result, it is a need for the semantics of concepts and their relationships.

We know that the ontology-based approach for modelling business process is not a new idea. There are some works made efforts to build business workflow ontologies, such as [START_REF] Gasevic | Reusing petri nets through the semantic web[END_REF], [START_REF] Gasevic | Interoperable petri net models via ontology[END_REF], [START_REF] Hepp | An ontology framework for semantic business process management[END_REF], [START_REF] Koschmider | Ontology based business process description[END_REF], [START_REF] Salimifard | Petri net-based modelling of workflow systems: An overview[END_REF], [START_REF] Sebastian | A generic ontology for collaborative ontology-development workflows[END_REF], [START_REF] Sebastian | Customizable workflow support for collaborative ontology development[END_REF], [START_REF] Zhang | Representation of petri net with owl dl ontology[END_REF], etc., to support (semi-)automatic system collaboration, provide machine-readable definitions of concepts and interpretable format. In [START_REF] Koschmider | Ontology based business process description[END_REF], the authors defined an ontology for Petri Nets based business process description. Their ontology aims to facilitate the semantic interconnectivity of semantic business processes allowing information exchange. Our CPN ontology is very close to the one proposed by [START_REF] Koschmider | Ontology based business process description[END_REF], however there are some differences. Our work focuses on representing process models in a meta-knowledge base, which is defined based upon the CPN ontology, in order to share and reuse them.

Conclusion

In this paper, we have introduced an ontological approach for modelling business processes. We defined the CPN ontology to represent CPNs with OWL DL. Firstly, each element of CPNs was translated into a corresponding OWL concept. Secondly, some of the axioms created for Classes and P roperties in the CPN ontology were presented. The third OWL element, Individuals was also considered. As a result, the combination of CPNs and ontologies provides not only semantically rich business process definitions but also machine-processable ones.

In order to model business processes, four basic types of manipulation operations on the elements of process models are required. Therefore, we introduced the basic manipulation statements written in the pseudo code. The SPARQL statements, which correspond to those statements, were indicated to store CB-WPs in the RDF file format. In spite of lacking the graphics, layout and GUI descriptions, the RDF files afterwards could be sent to other process-implementing systems to share and reuse them.

For validating CBWPs, we are planning to develop a run-time environment, which relies on the CORESE [START_REF] Corby | Corese/kgram[END_REF] semantic engine answering SPAQRL queries asked against an RDF knowledge base.

Fig. 1 :

 1 Fig. 1: An overall approach for representing Control flow-based Business Workflow Patterns (CBWPs) in knowledge base

  Fig. 3: CPN ontology expressed in a description logic

Fig. 4 :

 4 Fig. 4: Mapping Individuals to Classes and Properties of the CPN ontology

Fig. 5 :

 5 Fig. 5: An example of the INSERT DATA statement

•

  Inserting new elements into a process model. IN SERT ELEM EN T {e 1 , e 2 , . . . , e n } IN T O P ROCESS wf [W HERE cond 1 , cond 2 , . . . , cond m ]; (n ≥ 1, m ≥ 1) This statement means that elements e 1 , e 2 , . . . , e n , each of which has been created, are inserted into a process model named wf . Conditions cond 1 , cond 2 , . . . , cond m in the W HERE clause (if any) specify how to insert these new elements in the process model wf . The INSERT DATA statement or the INSERT WHERE statement

•

  Deleting existing elements from a process model. DELET E ELEM EN T {e 1 , e 2 , . . . , e n } F ROM P ROCESS wf ; (n ≥ 1) This statement means that existing elements e 1 , e 2 , . . . , e n are completely deleted from a process model named wf . The DELETE DATA statement or the DELETE WHERE statement in the SPARQL query language fits for deleting existing elements from the RDF file format. • Updating existing elements for adapting to a process model. U P DAT E ELEM EN T {e 1 , e 2 , . . . , e n } ON P ROCESS wf HERE cond 1 , cond 2 , . . . , cond m ]; (n ≥ 1, m ≥ 1) This statement means that elements e 1 , e 2 , . . . , e n in a process model named wf , each of which has been created, are updated. Conditions cond 1 , cond 2 , . . . , cond m in the W HERE clause (if any) specify how to update these elements in the process model wf . In this case, some statements in the SPARQL query language can be used, such as the INSERT DATA statement, the INSERT WHERE statement or the DELETE INSERT WHERE statement. • Editing the order of existing elements in a process model. M ODIF Y P ROCESS wf W HERE cond 1 , cond 2 , . . . , cond n REP LACE condR 1 , condR 2 , . . . , condR m ; (n ≥ 1, m ≥ 1) This statement is used to edit ordering relationships in a process model. No element inserted, deleted or updated in the model. The DELETE INSERT DATA statement is used to edit the order of existing elements in the RDF file format.

	[W
	7 Two prefixes are assumed as:
	P REF IX CP N Ontology : < http : //myOnt.tutorial.org/2013# >
	P REF IX myW F : < http : //myOnt.tutorial.org/2013 -instances# >

http://www.w3.org/2001/sw/wiki/RDFS

http://www.w3.org/TR/daml+oil-reference

http://www.w3.org/2004/OWL/

http://protege.stanford.edu/

http://www.w3.org/TR/sparql11-query/

http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/

Acknowledgments. This research is conducted within the UCN@Sophia Labex.


Thi-Hoa-Hue Nguyen
email: nguyenth@i3s.unice.fr

Nhan Le Thanh
email: nhan.le-thanh@unice.fr

Coloured Petri Nets-based Approach for Manipulating RDF Data

Keywords: CPN, knowledge base, OWL DL ontology, RDF Data manipulation, RDF

This paper introduces a solution for controlling RDF data manipulation operations. We propose a formal approach to manage any modification, query or adaptation of the data to satisfy end-user/application criteria (e.g., RDF filtering). An overview of the RDF data manipulation framework with its main components is first presented. We then introduce the RDF-oriented Composition Definition Language (RDFCDL) including the syntax and its graphical representations defined based on CPNs. The language aims to support both expert and non-expert developers to create/compose RDF manipulation operations. Besides, an ontology for representing processes modelled with the RDFCDL language is developed in order to share and reuse the processes more easily. To the best of our knowledge, this is the first approach providing a means for end-users to create activity nodes over RDF data based upon systemdefined functions and allowing manipulating processes to be stored in RDF file format.

I. INTRODUCTION

A knowledge base is an organized information repository. It provides a means for manipulating information, such as collecting, organizing, sharing, searching and using. According to [START_REF]Knowledge Base[END_REF], a knowledge base can be either machine-readable or intended for human use. Here we pay particular attention to the case of machine-readable knowledge bases designed for automated deductive reasoning. We consider ontologies expressed in RDF(S) or/and OWL that are a means of representing semantic knowledge.

The world is constantly full of changes, therefore it does generally not fit into a fixed, predetermined logic system. To explain this, especially to deal with the uncertainty inherent in the physical world, it is necessary to have different models of human reasoning. We focus on taking account domain experts in support of end-users to reason and make a decision in order to solve their problem.

On one hand, Coloured Petri Nets (CPNs) [START_REF] Jensen | Coloured Petri Nets. Basic Concepts, Analysis Methods and Practical Use[END_REF] have been developed to be a full-fledged language for design, specification, simulation, validation and implementation of large software systems. Moreover, CPNs are a wellproven language that is suitable for modelling of Manuscript received November 23, 2013; revised Januray 30, 2014.

workflows or work processes [START_REF] Jørgensen | From task descriptions via colored Petri nets towards an implementation of a new electronic patient record workflow system[END_REF]. However, the lack of semantic representation of CPN components can make business processes difficult to interoperate, share and reuse.

On the other hand, an ontology can provide machinereadable definitions of concepts, and therefore can represent semantically rich business process definitions. Consequently, Knowledge Engineering, Coloured Petri Nets and Semantic Web technologies can play an important role in this scenario to provide models and techniques to simplify control RDF data manipulation operations. We propose a formal framework which allows both novice and expert developers to process any modification, query or adaptation of the data to satisfy end-user/application criteria (e.g., RDF filtering).

In essence, existing techniques are applied to solve the problems related to each manipulation operation on a percase basis or usually involving a high level of expertise in their respective fields. Our approach allows end-users to handle any RDF data-oriented operation in a simple and expressive way and thus overcomes the limitations mentioned above.

In this paper, we introduce the RDF data manipulation framework and particularly describe activity nodes. To achieve that, the rest of this paper is structured as follows: In Section 2, we introduce a few motivating scenarios. In Section 3, related work is discussed. We then present our approach in Section 4. Finally, Section 5 shows conclusions and ongoing works.

II. MOTIVATING SCENARIOS

Consider a construction project involving different stakeholders (e.g., experts in the construction industry, external regulatory bodies; company management; customers, etc.). Different manipulation/control scenarios are expected for distinct purposes of each stakeholder.

A. Information Gathering

A customer would like to know the details of a ceiling light installed.

In order to achieve this, one technique would be required:

 RDF data Filtering: Filter RDF data based on concepts (e.g., )

B. Related Information Gathering

An expert working in the company management is checking the lighting system in a construction project. The expert wishes to acquire all related technical information of the existing lighting components. Initially, high-level information (name the type of component, for example,

) is asked for and then the search engine has to seek all information involved in each component.

In order to achieve this, several techniques would be required:

 RDF data Filtering: Filter RDF data based on concepts.  RDF Structural Search: Check RDF data if the component contains one or more elements based on the definition of giving concepts. All these elements (if any) matching to the nomenclature of the component are browsed. A result that contains all matching elements will be returned.

C. Content Modification

The project is modified and some new components are added in. The components may be relevant to different domains. Domain experts wish to analyze and modify the structure and content of knowledge bases. Consequently, they can ensure the correctness of modified knowledge bases.

In order to achieve this, several techniques would be required:



D. Validation by Matching between Regulations and Ontological Knowledge Bases

An officer who works for the local government is checking the installations of an emergency lighting system. It is expected to comply with the emergency lighting system criteria established. The officer wishes to test the system with all of their rules and receive semantic annotations of the conformity checking results.

In order to achieve this, several techniques would be required:

 Query Execution: Execute user queries to check the conformance of ontological knowledge bases to the specified regulations.  Automated RDF annotation generation:

Generate an RDF file reporting the conformity checking results.

E. Conformity checking Processes Based on Know-How

Practices Domain experts contribute to the development of knowledge bases in general and ontologies in particular. They define and validate all the concepts and relations of the knowledge bases, which are independent to conformity checking processes. Domain experts also formulate algorithms of effective checking. However, in some cases, their algorithms are not sufficient to cover the whole complexity of the real usage-driven conformity checking knowledge [START_REF] Yurchyshyna | An ontology based approach for modelling the process of conformity checking in construction[END_REF]. For example, in order to check the technical information of an entrance, the ground floor will be considered. This is because the entrance is normally defined as a door situated on the ground floor. But in fact, buildings located in the mountainous area in France, there are two entrance levels on the ground floor and on the second floor.

Therefore, it is necessary to take into account knowhow practices for checking the conformance.

In order to achieve this, several techniques would be required:

 RDF data Filtering: Filter RDF data based on concepts.  RDF Structural and Content Search: Search for definitions of a component and for the semantic content of RDF data stored.  Query Execution: Execute user queries to check the conformance of ontological knowledge bases to the specified regulations.

 Automated RDF file format generation:

Generate an RDF file reporting the conformity checking results. Consequently, it is necessary to implement various techniques (i.e., content search, filtering, asking, etc.) together in order to provide a means for both non-expert and expert end-users to solve the mentioned requirements over RDF data. As far as we know, no framework has been created referring these matters simultaneously.

III. RELATED WORK

A. Coloured Petri Nets and Semantic Business Process

CPNs are extended from Petri nets [START_REF] Net | [END_REF] with colour, time and expressions attached to arcs and transitions. They have a very well-defined semantics and have a graphical representation. Their notation that is similar to existing workflow languages can describe any type of workflow system. In addition, CPNs provide hierarchical descriptions. They offer interactive simulations where the CPN diagram can present the results directly. Consequently, there are many benefits to using CPNs as a modelling language.

Up to now, the combination of Petri Nets/high-level Petri Nets and ontologies has been studied in some research works [START_REF] Gašević | Reusing Petri Nets Through the Semantic Web[END_REF], [START_REF] Gašević | Interoperable Petri net models via ontology[END_REF], [START_REF] Koschmider | Ontology based business process description[END_REF], [START_REF] Zhang | Representation of Petri net with OWL DL ontology[END_REF] to support (semi-) automatic system collaboration, provide machinereadable definitions of concepts and interpretable format. Unfortunately, existing approaches/techniques do not focus on modelling RDF data manipulation operations. We here propose an approach to manipulate RDF data based upon CPNs and represent RDF-oriented compositions with ontologies.

B. Validation of Ontological Knowledge Bases

Historically, most researches on compliance modelling of functions of a system and on modelling of regulations and conformity constraints have been carried out in parallel [START_REF] Yurchyshyna | An ontology based approach for modelling the process of conformity checking in construction[END_REF]. There is a rich history in the field of regulatory (performance concept) modelling in the research literature and existing standards documents [START_REF] Bouzidi | Semantic web approach to ease regulation compliance checking in construction industry[END_REF], [START_REF] Kerrigan | Logic-based regulation complianceassistance[END_REF], [START_REF] Nazarenko | Integrating written policies in business rule management systems[END_REF], etc.

In [START_REF] Bouzidi | Semantic web approach to ease regulation compliance checking in construction industry[END_REF], the regulatory requirements written in natural language were reformulated in a controlled and formal language of SBVR [START_REF]SBVR (Semantics of Business Vocabulary and Business Rules[END_REF] (Semantics of Business Vocabulary and Business Rules) and then SPARQL [START_REF]SPARQL 1.1 Query Language[END_REF]. They structured their control process based on expert practices.

In [START_REF] Kerrigan | Logic-based regulation complianceassistance[END_REF], the REFNet application was created for the purpose of developing an information infrastructure to determine the applicability of regulations in several conditions, based on a question and answer interface. Their compliance assistance system is based on an XML framework representing regulations and associated metadata.

In addition, "performance rules" are defined by regulatory bodies, informational or cultural standards, it would be clearly useful to check the conformity of all existing and/or potential systems to these recommended "performance rules". To date, various efforts have been made to check the conformance of a product according to defined rules [START_REF] Yurchyshyna | An ontology based approach for modelling the process of conformity checking in construction[END_REF], [START_REF] Eastman | Automatic rule-based checking of building designs[END_REF].

In [START_REF] Yurchyshyna | An ontology based approach for modelling the process of conformity checking in construction[END_REF], by taking into account expert knowledge in construction, the authors developed an ontology-based conformity checking model that allows (semi-) automating the conformity-checking process. In order to implement and validate that model, they proposed the C3R (Conformity Checking in Construction: Reasoning) conceptual framework and developed the C3R prototype respectively. The prototype is implemented with their ontology and methodology using the Semantic Web methods and tools used by professionals of the construction domain. Nonetheless, there is still significant room for improvement, for instance, allowing end-users to create/compose conformity checking processes.

C. Data Flow Visual Programming Languages

Data flow Visual Programming Language (DFVPL) is known as a programming language based upon the data flow computing model [START_REF] Abe | Plumber -A higher order data flow visual programming language in Lisp[END_REF]. Since data flow languages are programming paradigms and share some features of functional languages, DFVPLs are also primarily based upon functional composition. DFVPLs have essentially developed with the aim of allowing non-expert users, mostly scientists, to manipulate scientific data by means of visual compositions. According to [START_REF] Johnston | Advances in dataflow programming languages[END_REF], in a DFVPL, the distinction between language and environment is not clear. In addition, the distinction between the requirements, design, testing and coding of DFVPLbased software is blurred. This blurring thus makes DFVPLs easier for rapid prototyping. To date, various DFVPLs have been developed, e.g., LabView [18], Taverna [19], etc., which allow end-users to create their manipulation operations by providing a well-defined visual syntax. However, to the best of our knowledge, there is no existing approach adopting DFVPLs in RDF data manipulations.

IV. OUR PROPOSAL

Our approach, called RDF data manipulation (RDFDM) framework, aims at enabling end-users to control RDF data manipulation operations. Ontologies expressed in RDF/S and/or OWL, which represent business processes, are subject to the RDFDM approach. As mentioned previously, some of our objectives of the RDFDM approach can be resolved by the existing approaches/techniques but not all of them. The RDFDM framework supports users to develop, modify, query or adapt RDF data in a provably rational and consistent manner. It can include simple operations as well as complex ones, such as RDF filtering, change operations, conformity checking of RDF data, etc.

The general idea of the approach is to define the RDFDM framework permitting activity nodes to be described and deployed in order to represent Control flow-based Business Workflow Patterns (CBWPs) in a knowledge base. There are three main components in the framework (Fig. 1).  The RDFDM platform is the most essential part and the main contribution of our work. We develop the RDFCDL (RDF-oriented Composition Definition Language) that allows end-users to create/compose their workflow patterns. A pattern represents a combination of procedures/functions used to perform a business process. Our platform relies on the graphical representations and allows textual descriptions. After defining, modifying or adapting a pattern, the output of the platform, which is an RDFDM document, is transmitted to the RDFDM compiler. Note that we build the CPN Ontology for representing RDF data manipulation operations modelled with the RDFCDL language. This contributes to improve the semantic communication among process-implementing software components.  The RDFDM compiler is placed between the platform and the environment. It is responsible for transforming an output of the platform into a machine code executable and validating that output.  The RDFDM environment defines an environment for executing the resulting patterns created on the platform. In addition, we define a component to transform all patterns deployed in the environment into the RDF file format for the purpose of reusing and sharing the business processes.

In the following subsections, we introduce an overview of the RDFCDL and the CPN Ontology and our prototype.

A. RDF-Oriented Composition Definition Language

Overview RDFCDL allows end-users to create/compose RDForiented manipulation operations using ANodes. The main goals of the RDFCDL are:

 serving end-users having or not having programming skills;  allowing end-users to describe not only simple compositions but also complex ones;  permitting end-users to define new operations based upon ANodes;  being suitable for processing RDF data and enabling its integration to different systems (e.g., web or desktop application, etc.). There are three main parts in the RDFCDL as follows:

 The Inputs are ontologies expressed in RDF/S and/or OWL. They are a representation of a project, for example a construction project.  The ANodes and the compositions which compose the RDFCDL core. They are defined as CPNs.  The Outputs are stored in RDF file format. They are RDF annotations of manipulating processes. The syntax and semantics of the RDFCDL core are based upon the grammar RDFNet (RDF-oriented Composition Grammar Net) defined using CPNs. Consequently, the RDFCDL inherits the computations and operational semantics from CPNs, e.g., the firing rule.

Definition  is an initialization function associating initial values to places. It is defined from into such that: . Since is added to the initial CPN definition and has no effect on the CPN's functionality, in the rest of the definitions based upon CPNs it is bypassed.

We introduce the following definition of that designates an RDF (Resource Description Framework) [START_REF]Resource Description Framework: Concepts and Abstract Syntax)[END_REF]  RDFNode:Literal defines the RDF literal type.  RDFNode:Blank defines the RDF blank node type.

The ANodes and the compositions, which follow the grammar RDFNet, are defined based upon CPNs. Consequently, the inputs and outputs of ANodes are defined as places and drawn as ellipses. Note that in this study, a function can have an input and an output. Each place has a single colour defining its type. A transition, which is drawn as a rectangle, represents the operation of the function. It operates on the input and sends the result to the output. The input and output places are linked to transitions via directed arcs drawn as arrows. A directed arc connects a place with a transition or vice versa. Several sample functions are shown in Fig. 2. is the value of the token in .  is an initialization function associating initial values to input places. A composition is defined by a mapping between the outputs and the inputs of ANodes. It is expressed by a combination of graphical functions via operators. A suitable operator is used for one link between some functions related to each other. Because a composition might be sequential, parallel or conditional, we use the operators including Sequence, And-split, And-join, Xorsplit and Xor-join (Fig. 3) to create the compositions. These operators are defined based upon CPNs, which are compliant to RDFNet.

B. CPN Ontology

We now define semantic metadata for processes of controlling RDF data-oriented operations modelled with the RDFCDL language. This facilitates it particularly easy to (semi-) automate the interoperability, share and reuse among process-implementing software components.

We continue our work at [START_REF] Nguyen | Representation of coloured workflow nets with OWL DL ontology[END_REF], [START_REF] Nguyen | Representation of RDF-Oriented Composition with OWL DL Ontology[END_REF] to translate key components of the RDFCDL language into classes, properties and axioms of OWL DL ontologies.

OWL DL, which stands for OWL Description Logic, is equivalent to Description Logic SHOIN(D). OWL DL supports all OWL language constructs with restrictions (e.g., type separation), provides maximum expressiveness while always keeping computational completeness and decidability. Therefore, we choose the OWL DL language to represent RDFNet. For more details on OWL DL, please refer to [START_REF]OWL Web Ontology Language Overview[END_REF].

Since RDFNet presents the grammar of the RDFCDL based upon CPNs, the RDFNet structure thus consists places, transitions and directed arcs. We start to construct their corresponding classes, for example, a place is translated into a class. The core concepts of our CPN Ontology are depicted in Fig. 4. The CPN Ontology is very close to the one proposed by A. Koschmider and A. Oberweis [START_REF] Koschmider | Ontology based business process description[END_REF]. However there are some differences.

In order to help different systems interacting with the CPN Ontology to understand what is represented by each element in the ontology, in the next step we describe the meaning of its main elements.

The CPN Ontology comprises the concepts: CPNOnt defined for all possible CPNs; Place defined for all places; Transition defined for all transitions; InputArc defined for all directed arcs from places to transitions; OutputArc defined for all directed arcs from transitions to places; Token defined for all tokens inside in places; GuardFunction defined for all transition expressions; CtrlNode defined for occurrence condition in operators; ActNode defined for occurrence activity in activity nodes; Delete and Insert defined for all expressions in input arcs and output arcs, respectively; Attribute defined for all attributes of individuals; Value defined for all subsets of where is a set of individuals.

Properties between the concepts in the CPN Ontology are also shown in Fig. 4. We define two properties hasMarking and connectsTrans, for example, for the concept Place as illustrated in Fig. 5.

C. Prototype: The RDFCD Platform

For the purpose of validating our approach, we have implemented a Java based prototype named RDFDM. A screen shot of this prototype is shown in Fig. 6. We set up the prototype with the RDFNet defined based upon CPN mentioned previously. We now illustrate how it works by considering the scenario D presented in the Motivating scenarios Section. In this scenario, an officer wants to check the conformance of the installations of an emergency lighting system in a construction project to the regulations defined. For example, the system has to ensure that the luminaires are located at mandatory "points of emphasis":

"Specific locations where a luminaire must be provided are: [START_REF]Knowledge Base[END_REF] At each exit door; (2) All safety exit signs; (3) Outside and near each final exit; (4) Near stairs so that each tread receives direct light; [START_REF] Net | [END_REF] At each change of direction; [START_REF] Gašević | Reusing Petri Nets Through the Semantic Web[END_REF] Near each first aid post; [START_REF] Gašević | Interoperable Petri net models via ontology[END_REF] Near any other change of floor level; [START_REF] Koschmider | Ontology based business process description[END_REF] At each intersection of corridors; [START_REF] Zhang | Representation of Petri net with OWL DL ontology[END_REF] Near each piece of fire fighting equipment and call point" [START_REF][END_REF].

To create the corresponding composition, we first have to define the input and output content description structures. The inputs are expressed in ontologies representing the construction project. The output is generated as RDF annotations of the manipulating process. In the next subsection, we introduce our RDF file format.

As we can see, in Fig. 6, ANodes along with composition operators are provided graphically. In the case of checking the conformity of locating luminaires, we visually compose two required ANodes and one operator. This work has done without the aid of expert programmers.

D. RDF File Format

After modelling the processes of RDF data manipulations with the RDFCDL language, the models are mapped to the CPN Ontology and exported automatically to OWL syntax. In spite of lacking the graphics, layout and GUI descriptions, our file format afterwards could be sent to other RDF data-oriented process-implementing systems to reuse and share it. Fig. 7 depicts an excerpted RDF serialization of the scenario D.

V. CONCLUSIONS

In this paper, we have introduced an overview of the RDFDM framework with three main components supporting users to control manipulation operations. We presented an overview of the RDFCDL language allowing end-users to create/compose RDF manipulation operations. We defined RDFNet based on CPNs being the grammar of the RDFCDL.

We developed the CPN Ontology for representing CPNs with OWL, which aims to share and reuse the processes of manipulating RDF data not only in the Semantic Web, but also in workflow systems.

A prototype named RDFDM have been implemented to valid our approach. Our ongoing works focus on refining our prototype. To execute the components of the RDFCDL language, we are planning to develop a runtime environment, which relies on the CORESE [25] semantic engine that answers SPAQRL queries asked against an RDF/OWL knowledge base.

-Figure 1 .

 1 Figure 1. The components in the RDFDM framework

component. Definition 2 (

 2 RDFNode): RDFNode contains three subtypes that are RDFNode:URI, RDFNode:Literal and RDFNode:Blank, where: RDFNode:URI defines the RDF URI reference type.

Figure 2 .

 2 Figure 2. Some sample functions defined in RDFCDL

Figure 3 .

 3 Figure 3. Operators are defined in RDFCDL

Figure 4 .

 4 Figure 4. CPN ontology.

Figure 5 .

 5 Figure 5. The definitions of two properties and

Figure 6 .

 6 Figure 6. An illustration of scenario D of RDFDM

  <rdfnet:Place rdf:ID="Place_ID01"> <rdfnet:hasMarking> <rdfnet:Token rdf:ID="Token_ID04"> <rdfnet:hasValue> <rdfnet:Value rdf:ID="Value_ID05"> <rdfnet:valueRef> PREFIX lsOnt: <http://www.semanticweb.org /myOntology/ont#> SELECT ?x WHERE {?x rdf:type lsOnt:EmergencyExit} </rdfnet:valueRef> </rdfnet:Value> </rdfnet:hasValue> </rdfnet:Token> </rdfnet:hasMarking> <rdfnet:connectsTrans rdf:resource="#Trans_ID03"/> </rdfnet:Place>

Figure 7 .

 7 Figure 7. Representing semantic process of RDF data manipulations in RDF syntax (excerpt)

RDF Structural Search: Search

	for definitions of
	a component in the ontological knowledge bases.
	 RDF Content Search: Search for the semantic
	content of RDF data stored.
	 RDF Structural Modification: Modify the
	structure of an ontological knowledge base and
	ensure that the new components are defined
	correctly.
	

RDF Content Addition: Add exactly new information about the new components to the ontological knowledge bases.

  1 (RDFNet): RDFNet represents the grammar of the RDFCDL in compliance with CPNs. It is defined as a 9-tuple: String, Integer, Double, Boolean, Date are standard types and RDFNode is a super-

		type (see Definition 2).
		is a finite set of places.	and
		Denote the input and output states of the function
		used in RDFCDL respectively. The number of
		tokens in place :
		is a finite set of transitions. The behavior of the
		functions and operators in RDFCDL is represented
		by transitions.
			is a set of directed arcs
		connecting input places to transitions or transitions
		to output places.	and	stand for the
		place and transition linked by , respectively.
		is a set of operators/functions available in the
		libraries.
		is a colour function. Each place has only
		one type from :		.
		is a guard function associating an
		operation to a transition.
		is an arc expression function. It is
		defined from into	such that:

where:

  is a finite set of non-empty types available in the RDFCDL, called colour sets:

where ,

  Definition 3 (Activity node): ANode is a function defined based upon CPNs. It describes an operation and is defined as:

	where:
		is a finite set of non-empty types available in the
		ANode, where:	.
			is a finite set of places defining the
		input and output states of the ANode.
		and	are the set of input and output places
		respectively where:
			is a finite set of transitions denoting the
		behavior of the ANode. Transition contains the
		operation to be performed.
			is a set of directed arcs
		connecting input places to transition t or transition
		t to output places.
			is a colour function associating a type to
		each place. It is defined from to .
			is a guard function associating an
		operation to transition . It is defined from
			into F where:
			is an arc expression function where
		is a set of expressions. It is defined from
		into	where:

ACKNOWLEDGMENT

This research is conducted within the UCN@Sophia Labex.