1 proposal on mfi-5: process model registration based on ontology (mfi4process) he keqing wang chong...
TRANSCRIPT
1
Proposal on MFI-5: Proposal on MFI-5: Process model registration Process model registration
based on ontology based on ontology (MFI4Process)(MFI4Process)
He KeqingWang Chong 2006/08/29
2
ContentContent
Background ISO Process Specification Language W3C OWL-S
MFI4Process & other standards Overall design of MFI4Process Future work
3
Why we need MFI4Process (1/2)Why we need MFI4Process (1/2) Process model
Modeling processes A process is one or more activities that occurs over a period of time in
which objects participate.* Dynamic features
Data flow State changing ……
Ontology: a knowledge representation mechanism for semantics.
Semantic annotation Constraints
Process model registration based on ontology Effective discovery and sharing Process model management within or across enterprises and
domains* from “ISO 18629: A standardized language for specifying and exchanging process information”
4
Why we need MFI4Process (2/2)Why we need MFI4Process (2/2) Web service
one of the important resources on the semantic web characterized with dynamic features and processes.
Current version of MFI concentrates on the registration of ontology and static models, rather than semantic web service or annotated process models.
Register process models based on ontology Govern the construction of customized services Reduce the cost of service development
Extending MFI
5
Brief introduction of OWL-S (1/3)Brief introduction of OWL-S (1/3)-- Layered approach to language development-- Layered approach to language development
SWRL (Rules)
XML (Extensible Markup Language)
RDF (Resource Description Framework)
RDFS (RDF Schema)
OWL ([DLP], Light, DL, Full)
OWL-S (Services)
OWL-S (W3C) is an extended ontology
language a specific OWL profile for Web
Service
SWRL: Semantic Web Rule Language (W3C)
6
Brief introduction of OWL-S (2/3)Brief introduction of OWL-S (2/3)
(from W3C, OWL Web Ontology Language for Services (OWL-s) Specification)
OWL-s is used as a language for describing services, reflecting the fact that it provides a standard vocabulary that can be used together with the other aspects of the OWL description languages to create service description.
7
Brief introduction of OWL-S (3/3)Brief introduction of OWL-S (3/3)--Top level of the Process Ontology--Top level of the Process Ontology
8
Process Specification Language (1/3)Process Specification Language (1/3)
• Process Specification Language (PSL, ISO18629)
• PSL is a modular, extensible ontology capturing concepts required for process specification
• In PSL, ontology is defined as a specification– in a given domain of a set of concepts, of their relation and
of the rules that apply to them.
From ISO 18629
9
What PSL will be : a language enabling interoperability of process information among industrial applications
What is a process ?What is a process ? A process is one or more activities that occurs over a period of time in which objects participate
PSL
ObjectTimePointActivity
Inf-Inf+
Process Specification Language (2/3)Process Specification Language (2/3)
From “ISO 18629: A standardized language for specifying and exchanging process information”
10
Process Specification Language (3/3)Process Specification Language (3/3)
From ISO 18629-12
11
ContentContent
Background MFI4Process & other standards
MFI4Process & MFI Core MFI4Process & MFI4Onto
Overall design of MFI4Process Future work
12
MFI4Process & MFI & PSLMFI4Process & MFI & PSL
ISO18629(PSL) MFI CoreModel
MFI4OntologyMFI4Process MFI4Mapping MFI4Modeling Construct
13
MFI4Process & MFI CoreMFI4Process & MFI Core
from MFI Core from MFI4Process
ModelSign ModelConcept
ModelSelection ModelInstance
ModelDomainProfile
ModelClassifier
ModelComponent
subProcess
Process_Unit
Process
has
concept
selecting
associatedBy
expressing
specifiedBy
specifiedBy
14
MFI4Process & MFI4OntoMFI4Process & MFI4Onto
from MFI4Process from MFI4Onto
Process subProcess
1 *
Process_Uni t
1 *
Arti fact Control _Construct
Ontol ogy
1 *
Ontol ogy_Component
1 *
Ontol ogy_Atomi c_Construct
*
*
*
***
15
ContentContent
Background MFI4Process & other standards Overall design of MFI4Process
Basic idea of MFI4Process Models in MFI4Process Example
Future work
16
Basic Idea of MFI4ProcessBasic Idea of MFI4Process
17
Registration information (1)Registration information (1)
Process Input (precondition) Output (postcondition) subProcess
subProcess Atomic process
Input/Output Composite process
Input/Output Component (subProcess)
Process_Unit : the smallest, reusable and undecomposable element in process model
Control construct Connecting subProcess formed as an ordered n-tuple
Artifact
I/O of Composite Process= I/O of Atomic Processes + I/O of smaller Composite Processe
s - the ones that Inputi = Outputj
18
Atomic Process & Composite ProcessAtomic Process & Composite Process
Input Output
Atomic Process 1
Atomic Process 2
Input1
Input2Input3
Output1
Output3
Output4
Output2
Input4
Input5
Atomic Process 1
Atomic Process 2
Composite Process
Input1, Input2, Input3, Input5
Output1, Output3, Output4
19
Registration information (2)Registration information (2)
OccurrenceTree – to record and manage the execution of processes OccurrenceNode
Process (root) Atomic Process Composite Process
OccurrenceFlow Input (with corresponding artifact) Output (with corresponding artifact)
20
OccurrenceTree (1/3)OccurrenceTree (1/3)
Process
Atomic Process 1 Atomic Process 2 Composite Process 1
Atomic Process 3 Atomic Process 4
occurrence flow
21
OccurrenceTree (2/3)OccurrenceTree (2/3)- <process:CompositeProcess rdf:ID="BravoAir_Process"> <rdfs:label>This is the top level process for BravoAir</rdfs:label> <rdfs:comment>BravoAir_Process is a composite process. It is comp
osed of a sequence whose components are 2 atomic processes, GetDesiredFlightDetails and SelectAvailableFlight, and a composite process, BookFlight.</rdfs:comment>
<process:invocable rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">true</process:invocable>
<service:describes rdf:resource="http://www.daml.org/services/owl-s/1.1/BravoAirService.owl#BravoAir_ReservationAgent" />
- <process:hasInput>- <process:Input rdf:ID="DepartureAirport"> <process:parameterType rdf:datatype="http://www.w3.org/2001/XM
LSchema#anyURI">http://www.daml.org/services/owl-s/1.1/Concepts.owl#Airport</process:parameterType>
</process:Input> </process:hasInput>- <process:hasInput>- <process:Input rdf:ID="ArrivalAirport"> <process:parameterType rdf:datatype="http://www.w3.org/2001/XM
LSchema#anyURI">http://www.daml.org/services/owl-s/1.1/Concepts.owl#Airport</process:parameterType>
</process:Input> ……
- <process:composedOf>- <process:Sequence>- <process:components>- <process:ControlConstructList>- <list:first>- <process:Perform rdf:ID="PerformGetDesiredFlightDetails"> <process:process rdf:resource="#GetDesiredFlightDetails" /> - <process:hasDataFrom>- <process:InputBinding> <process:toParam rdf:resource="#GetDesiredFlightDetails_DepartureAirp
ort" /> - <process:valueSource>- <process:ValueOf>……- <process:Perform rdf:ID="PerformSelectAvailableFlight"> <process:process rdf:resource="#SelectAvailableFlight" /> - <process:hasDataFrom>- <process:InputBinding> <process:toParam rdf:resource="#SelectAvailableFlight_FlightsAvailable"
/> - <process:valueSource> </process:valueSource> </process:InputBinding> </process:hasDataFrom> </process:Perform> </list:first>- <list:rest>- <process:ControlConstructList>- <list:first>- <process:Perform rdf:ID="PerformBookFlight"> <process:process rdf:resource="#BookFlight" /> - <process:hasDataFrom>- <process:InputBinding> <process:toParam rdf:resource="#BookFlight_SelectedFlight" />
22
OccurrenceTree (3/3)OccurrenceTree (3/3)
……
……
……
23
Key concepts in MFI4Process (1/3)Key concepts in MFI4Process (1/3)
Control Construct: specify how the process is organized.
Anyorder Choice
If-then-else Sequence Merge
Split Split-Join
24
Key concepts in MFI4Process (2/3)Key concepts in MFI4Process (2/3)
Control Construct Anyorder Choice
If-then-else Sequence Merge
Split Split-Join
Actor: the role that one process plays in process execution
Client: the agent that requests services. Server: the agent that provides services.
25
Key concepts in MFI4Process (3/3)Key concepts in MFI4Process (3/3)
Control Construct Anyorder Choice
If-then-else Sequence Merge
Split Split-Join
Artifact: the resources that participate in one process
predefined concepts in relevant OWL document
datatype elements from XML schema
Actor the role that one process
plays in process execution Client Server
<rdfs:subClassOf rdf:resource="&xsd;#integer"/>
26
Models in MFI4ProcessModels in MFI4Process
27
Overview of MFI4ProcessOverview of MFI4Process
dependency
MFI4Process
Process Core Model Process Control Model
Control Construct Model
28
Process Core ModelProcess Core Model
from Process Core Model from PSL
Process_Descri pti on_Language
Process subProcess Process_Uni t
1 * 1*
Composi te_Process
Atomi c_Process
Arti factControl _Construct
Obj ect(from PSL)
Acti vi ty(from PSL)
Actor
1
*
29
Process Control ModelProcess Control Model
from Process Core Model from PSL from Process Control Model
Control _Construct
Excepti on
Occurrence_Tree
Occurrence_Node
Process
Composi te_Process
1*
InputOutput
Precondi ti on Postcondi ti on
Arti fact
Occurrence_Fl ow
1*
Occtree(from PSL)
Atomi c_Process
State_Of_Node
di scState(from PSL)
30
Control Construct ModelControl Construct Model
Control _Construct
Anyorder MergeSequence Choi ce
Spl i t
Spl i t-Joi n
I f-Then-El se
from Process Core Model from Control Construct Model
31
ExampleExample-- BravoAir Reservation Service-- BravoAir Reservation Service
from W3C, http://www.daml.org/services/owl-s/1.0/examples.html
32
BravoAir Reservation ServiceBravoAir Reservation Service
BookFlight
GetDesiredFlightDetails
SelectAvailableFlight
LogIn
CompleteReservation
ConfirmReservation
Begin
LogIn_Fail
End
LogIn_True
LogIn_False
33
For process modelFor process model
Process Ontology: BravoAirReservation_ProcessModel
attribute of Process Ontology Value
name BravoAir_ProcessModel
URI URI_ BravoAir_ProcessModel
administration_Record #
modelType OWL-S
consistsOf AtomicProcess: GetDesiredFlightDetails
AtomicProcess: SelectAvailableFlight
CompositeProcess: BookFlight
34
For subProcessFor subProcess
CompositeProcess: BookFlight
attribute of CompositeProcess Value
name BookFlight
URI URI_ BookFlight
administration_Record #
modelType OWL-S
consistsOf AtomicProcess: Login
CompositeProcess: CompleteReservation
AtomicProcess: GetDesiredFlightDetails
attribute of AtomicProcess Value
name GetDesiredFlightDetails
URI URI_ GetDesiredFlightDetails
administration_Record #
modelType OWL-S
consistsOf Input: DepartureAirport_In
……
Output: FlightsFound
……
35
For Process_UnitFor Process_Unit
Process_Unit01
attribute of Process_Unit Control_Construct
name If_Then
URI URI_ If_then
administration_Record #
modelType OWL-S
connecting LogIn
ConfirmReservation
Process_Unit02
attribute of Process_Unit Artifact
name Airport
URI http://www.w3.org/2001/XMLSchema#anyURI">http://www.daml.org/services/owl-s/1.1/Concepts.owl#Airport
36
For OccurrenceTree (1/3)For OccurrenceTree (1/3) OccurrenceNode
GetDesiredFlightDetails SelectAvailableFlight BookFlight ……
OccurrenceFlow Input: DepartureAirport_In Output: FlightsFound ……
StateOfNode: Precondition: none Postcondition: hasFlightItinerary
37
For OccurrenceTree (2/3)For OccurrenceTree (2/3)
OccurrenceTree: BravoAir_Process
name BravoAir_Process
URI URI_ BravoAir_Process
administration_Record #
modelType OWL-S
consistsOf OccurrenceFlow01: BookFlight_PerferredFlightItinerary
……
Process_Unit03:Sequence
……
OccurrenceNode: GetDesiredFlightDetails
OccurrenceNode:SelectAvailableFlight
OccurrenceNode:BookFlight
……
38
For OccurrenceTree (3/3)For OccurrenceTree (3/3)
OccurrenceNode
attributeOfOccurrenceNode value
name BookFlight
URI URI_ BookFlight
administration_Record #
modelType OWL-S
precondition none
Postcondition hasFlightItinerary
OccurrenceFlow
attributeOfOccurrenceFlow value
name BravoAir_Process
URI URI_ BravoAir_Process
administration_Record #
modelType OWL-S
fromProcess BookFlight
toParameter PerferredFlightPerferred
39
ContentContent
Background MFI4Process & other standards Overall design of MFI4Process Future work
40
Future workFuture work
MFI4Process Improve these models in detail
Applications Logistics domain Other domains