1 enterprise service oriented architecture (soa)...
TRANSCRIPT
1
Enterprise Service Oriented Architecture (SOA)
课程名:以服务为中心的软件开发设计与实现
2
Outline
• Enterprise Service Bus
• Semantic Web Service
3
Core Concepts: • Message oriented middleware (MOM)• Intelligent routing
Enterprise Service Bus
4
Problems in IT Integration
• Isolated information in different Business Unit• Various Info system platforms and applications• Fixed business process • New information systems are introduced• …..
Infrastracture
OR
The enterprise is currently not well connected. - Only 10% of applications are linked (Gartner Report).
- Of these, only 15% use any kind of middleware. Expensive integration broker projects of the late 1990s have had nominal success.
- Integration projects average 20+ months to complete- Fewer than 35% of projects finish on time and on budget- 35% of software maintenance budget is spent maintaining point-to-point application links- In 2003, Global 3500 was expected to spend an average of $6.4 million on integration projects
by Forrester Research, “Reducing Integration Cost”, 12/2001.
5
What is ESB?
“A new form of enterprise service bus (ESB) infrastructure – combing message-oriented middleware, web services, transformation and routing intelligence – will be running in the majority of enterprise by 2005.
These high-function, low-cost ESBs are well suited to be the backbone for service-oriented architectures and the enterprise nervous system.”
Roy Schulte, Gartner Report, 2002. EDA Web Service
ESB
SOA Principles
6
The ESB Story
7
ESB Key Components• Message Oriented Middleware
– Robust, reliable transport– Efficient movement of data across abstract data channels– End-to-end reliability
• Web services– Service Oriented Architecture (SOA)– Abstract business services
• Intelligent routing– Message routing based on content and context– Message routing based on business process rules– Business process orchestration based on a rules language such
BPEL4WS• XML transformation
• Highly distributed, scalable service containers• Event-driven service invocation• Centralized management of distributed integration
configurations• Diverse client connectivity and support for multiple
protocols• Seamless, dynamic routing of data across physical
deployment boundaries• Unified security and access control model• Distributed configuration and caching of deployment
resources• Scriptable and declarative environment• Changeable behavior of integration components
based on configuration and rules.
8
Tightly Coupled Versus Loosely Coupled Interfaces
• Tightly coupled interfaces– Each application needs to
know the intimate details of how every other application wants to be communicated with
– The number of interfaces becomes unwieldy when the system scale up: n(n-1)/2
• Loosely coupled interface– Self-contained, stand alone unit– Asynchronous message: – Reduces the number of
interfaces from O(n2) to O(n)
9
Message Oriented Middleware (MOM)• Virtual channels that an ESB uses to route messages• Self-contained units of information (messages)• Asynchronous communication• Applications are abstractly decoupled • Messaging system supports the management of connection
points between multiple messaging clients, and of multiple channels of communication between connection points.– Message server– Message broker
10
Message
• The header– Basic information
• Destination, reply-to, message type, etc.
• Properties– Application-defined
name/value pairs– For filtering by consumer or
routers
• Body– Plain text, raw data, XML
message
11
MOM Concepts• Abstract Decoupling
– The producer and consumer do not know each other• Messaging Models
– Publish-and-Subscribe • one to many broadcast of information
– Point-to-Point• One-to-one communication between two specific applications
12
Asynchronous Reliability
• Message autonomy– Messages are self-contained, autonomous entities– Producer sends a message– Messaging system guarantees that it is received by
any interested parties– ESB ensures that it arrives in the desired data
format
13
Asynchronous Reliability
• Store and Forward– Message queuing and guaranteed delivery
• Exactly once• At least once• At most once
– Message ordering • Messages are delivered to the receiver in the same order in which
they are sent by the sender
14
Asynchronous Reliability
• Message Acknowledgment– Allow the messaging system to monitor the
progress of a message so that it knows whether the message was successfully produced and consumed.
15
Reliable Messaging Models
• Reliable Publish-and-Subscribe– Persistent messages– Durable subscriptions
16
Reliable Messaging Models
• Multi-step store-and-forward– Each message server uses store-and-forward and message
acknowledgements to get the message to the next server in the chain. – Each link can be secure, authenticated and capable of traversing
through firewall boundaries.
17
Transacted Messages
Receive and Send operations can be grouped together in a single local transaction
Multiple resources participate in a two-phase-commit Transaction
An ESB Removes the Low-Level Complexities
18
Messaging Standards
• Java Message Service (JMS)– Messaging Specification, 1998– Defines the API and a set of rules that govern message
delivery semantics in a MOM environment for both reliable and unreliable messaging.
• Simple Object Access Protocol (SOAP)
19
Summary• MOM provides the backbone for enterprise data
exchange– Message acknowledgement, message persistence, and
transactions. • Message systems ensure reliable message exchange
– Contract between producer and message server: ensure reliable message delivery
– Contract between message server and consumer: ensure reliable message acceptance
• ESB can encapsulate the low-level details in a container-managed environment
20
Intelligent routing – Why?
• The key importance of the ESB approach to SOA is that the service definition is separated from the mechanism for location and invoking services.
• ESB = Router – Service routing of requests from service requesters to the
relevant service provider based on a routing table– Protocol transformation, to allow the decoupling of the
protocol that is used between the service requesters and service providers.
21
Itinerary-Based Routing• A message itinerary is analogous to a travel itinerary that you
carry when going on a trip. • the itinerary are stored as XML metadata and carried with the
message as it travels across the bus from one service container to the next
• The itinerary represents a set of discrete message routing operations (endpoints)
Sub process
22
Content-Based Routing
• To control where messages go based on message properties or message content
• Metadata describing the possible branches and rules are evaluated at remote container, not by a centralized rules engine
23
ESB Products – J2EE Components• JBI: Java Business Integration
– Describe the way integration components, such as ESB services, can be plugged together in a vendor-neutral and portable fashion.
• JCA: J2EE Connector Architecture– Define the use of a standard set of interface contracts for
creating adapters to connect into, and interact with, enterprise applications.
• JMX: Java Management eXtensions– Remote management of configuration data, commands for
controlling lifecycle, and runtime alerts and event notifications for statistics gather and monitoring.
24
Known ESB Vendors
• BEA Aqualogic• Cape Clear• Sonic• Fiorano• IBM• Iona
25
WebSphere Application Server V6
26
WebSphere Application Server V6 • Messaging:
– request/response and publish/subscribe – message reliability (persistence/Store and forward Transaction control)
• Routing:– Dynamic service and port selection– Web service requests converted from one WSDL definition to another– Internet routing with proxy
• Transformation– Protocol transformation :SOAP/HTTP - SOAP/JMS– Content transforming: format, augmenting messages, aggregation and
correlation
27
WebSphere Application Server V6
• Container– Support web Service
• hosts published provider Web services • hosts applications consume Web services
– Connection to JCA, JDBC– Administration tools and support– Web service performance minitoring by Performance
Monitoring Infrastructure (PMI)– Integration to system management and administration
tooling, in particular IBM Tivoli® products
28
Open Source ESB• Celtix (Iona), Mar 31, 2006 beta 1.0
– Web Services, XML transformation, routing, asynchrony, JMS, through JMX integrate with J2EE, basic JBI & SCA
– Future: develop integration capability (JBI)• ServiceMix (LogicBlaze ), Nov 2005, version 2.0
– Based on ActiveMQ– Fully JBI ccontainer– In new version, BPEL, high-performance router directory, XPath ttransfer
engine ,RSS and JCA• Mule, version 1.3 rc2
– Based on J2EE1.4 and Universal Message Object (SEDA)– Web Service (Axis/Glue)– Model Integrate with ‘Spring’ framework as ESB container– Future: support JBI and BPEL .etc
29
References
• David A. Chappell, “Enterprise Service Bus”, O’Reilly, 2004.• Bruce Silver Associates, “Enterprise Service Bus Technology
for Real-World Solutions”, Industry trend reports, Aug. 2004. • BEA, “Service Infrastructure Overview”, July 2005. • Cape Clear, “Cape Clear’s Enterprise Service Bus (ESB)”,
2005.
30
Core Concepts: • SWS Markup language• Combine SW with WS
Semantic Web Services
31
Proposing of Semantic Web
• Web was “invented” by Tim Berners-Lee , a physicist working at CERN• TBL’s original vision of the Web was much more ambitious than the
reality of the existing (syntactic) Web:
• TBL (and others) have since been working towards realising this vision, which has become known as the Semantic Web– E.g., article in May 2001 issue of Scientific American…
“... a goal of the Web was that, if the interaction between person and hypertext could be so intuitive that the machine-readable information space gave an accurate representation of the state of people's thoughts, interactions, and work patterns, then machine analysis could become a very powerful management tool, seeing patterns in our work and facilitating our working together through the typical problems which beset the management of large organizations.”
32
本体层1. 以谓词演算为基础的语言KIF-based Ontolingua,CycL,
Loom,Frame-Logic
2. 基于 XML 的本体表示语言SHOE,XOL,OML&CKML,RDFS,
Riboweb,OIL,DAML+OIL,OWL
规则层RuleML 、 HornML 、 DLML
逻辑框架层FOL 、 HOL 、 DL 、Horn-logic 、 OMDoc
下四层已经发展的比较成熟与完善 1.数据格式层
2.信息表示层
3.元数据表示层
4.元数据定义层
5.本体层
6.规则层
7.逻辑框架层
8.证据层
9.高信度Web层
Architecture and Standards of Semantic Web
We are here!
33
Definition of Ontology
• What is a concept? – Different communities have different notions on what a
concept means: • formal concepts • concept label • terminology • frame or OO
• There is m:n relationship between words and concepts– different words may refer to the same concepts– a word may refer to several concepts
• Ontology languages should provide means for making this difference explicit
34
Main components of an Ontology
• Classes– concepts of the domain or tasks, which are usually organized
in taxonomies– in univ-ontology: student and professor are two classes
• Relations– a type of interaction between concepts of the domain– such as: subclass-of, is-a
35
• Functions– A special case of relations in which the n-th element of the relationship
is unique for the n-1 preceding elements– Such as: Price-of-a-used-car can define the calculation of the price of
the second-hand car on the car-model, manufacturing data and kilometers
• Axioms– Model sentences that are always true– Such as: if the student attends both A and B course, then he or she
must be a second year student• Instances
– represent specific elements– such as: Student called Peter is an instance of Student class
Main components of an Ontology
36
RDF
• RDF data model– Resources
• A resource is a thing you talk about (can reference)• Resources have URI’s (Uniform Resource Identifiers)• RDF definitions are themselves Resources
– Properties• A special kind of resources, describe relations
between resources. – (subject, predicate, object)
37
RDF
<rdf:Description rdf:about="CIT1111"><uni:courseName>Discrete Mathematics</uni:courseName><uni:isTaughtBy>
<rdf:Description rdf:about="949318"><uni:name>David Billington</uni:name><uni:title>Associate
Professor</uni:title></rdf:Description>
</uni:isTaughtBy></rdf:Description>
38
RDF schema
• Some important terminologies in RDFS– rdf:type– rdfs:subClassOf– rdfs:subPropertyOf– Rdfs:domain– Rdfs:range
39
RDF and RDFS relationship
40
• Requirements for ontology language– a well-defined syntax– a formal semantics (convenient to reason)– convenience of expression– efficient reasoning support– sufficient expressive power
OWL(Web Ontology Language)
41
OWL
• OWL is built on top of RDF • OWL is for processing information on the web • OWL was designed to be interpreted by
computers • OWL was not designed for being read by
people • OWL is written in XML • OWL is a web standard
42
Origins of OWL
DAML
DAML+OIL
DAML = DARPA Agent Markup LanguageOIL = Ontology Inference Layer
OWL is now a W3C Recommendation!
OIL
OWL
RDF
All were influenced by RDF
OWL
43
Layered language of OWLLogic foundation of OWL: Description Language• OWL Lite:
– Classification hierarchy– Simple constraints
• OWL DL:– Maximal expressiveness– While maintaining tractability– Standard formalisation
• OWL Full:– Very high expressiveness– Loosing tractability– Non-standard formalisation– All syntactic freedom of RDF
(self-modifying)
Syntactic layeringSemantic layering
Syntactic layeringSemantic layering
Full
DL
Lite
44
OWL
45
OWL
46
OWL Example: animals
<?xml version="1.0"?><rdf:RDFxmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:base="http://wasp.cs.vu.nl/sekt/ontology/animal"> <owl:Ontology rdf:about=“animal"/> <owl:Class rdf:ID="Eagle"> <rdfs:subClassOf><owl:Class rdf:about="#Bird"/> </rdfs:subClassOf></owl:Class><owl:Class rdf:ID="Animal"/> <owl:Class rdf:ID="Fly"><owl:disjointWith> <owl:Class rdf:about="#Penguin"/></owl:disjointWith> <rdfs:subClassOf rdf:resource="#Animal"/> </owl:Class><owl:Class rdf:ID="Bird"> <rdfs:subClassOf rdf:resource="#Fly"/> </owl:Class> <owl:Class rdf:ID="Penguin"> <rdfs:subClassOf rdf:resource="#Bird"/> <owl:disjointWith rdf:resource="#Fly"/> </owl:Class></rdf:RDF>
47
WWWURI, HTML, HTTP
Bringing the web to its full potential
Semantic WebRDF, RDF(S), OWL
Dynamic Web ServicesUDDI, WSDL, SOAP
Static
Semantic WebServices
What is Semantic Web Service?
48
Semantic Web Technology
+
Web Service Technology
Semantic Web Services
=
Semantic Web Services
• allow machine supported data interpretation• ontologies as data model
automated discovery, selection, composition, and web-based execution of services
as integrated solution for realizing the vision ofthe next generation of the Web.
49
Semantic Web Services
• Define exhaustive description frameworks for describing Web Services and related aspects (Web Service Description Ontologies)
• Support ontologies as underlying data model to allow machine supported data interpretation (Semantic Web aspect)
• Define semantically driven technologies for automation of the Web Service usage process (Web Service aspect)
50
Semantic Web Services
Usage Process:• Publication: Make the available description of the capability of a
service • Discovery: Locate different services suitable for a given task • Selection: Choose the most appropriate services among the
available ones • Composition: Combine services to achieve a goal• Mediation: Solve mismatches (data, protocol, process) among
the combined • Execution: Invoke services following programmatic conventions
51
Semantic Web Services
Execution support:
• Monitoring: Control the execution process
• Compensation: Provide transactional support and undo or mitigate unwanted effects
• Replacement: Facilitate the substitution of services by equivalent ones
• Auditing: Verify that service execution occurred in the expected way
52
Semantic Web Services
With Semantic: – Not only an interface description, but also the
capability of the service.– Logic reasoning enhanced service discovery and
composition.– Can be done automatically.
53
Semantic Web Service Markup Language
• OWL-S• WSML• WSDL-S• …
54
OWL-S
• Ontology– OWL-S is an OWL ontology to describe Web services– OWL-S leverages on OWL to
• Support capability based discovery of Web services• Support automatic composition of Web Services• Support automatic invocation of Web services
"Complete do not compete"• OWL-S does not aim to replace the Web services standards
rather OWL-S attempts to provide a semantic layer – OWL-S relies on WSDL for Web service invocation (see
Grounding)– OWL-s Expands UDDI for Web service discovery (OWL-S/UDDI
mapping)
55
OWL-S
• Mapping to WSDL• communication protocol (RPC, HTTP, …)• marshalling/serialization• transformation to and from XSD to OWL
• Control flow of the service• Black/Grey/Glass Box view
• Protocol Specification• Abstract Messages
• Capability specification• General features of the Service
• Quality of Service• Classification in Service
taxonomies
• Upper Ontology
56
Service Profile– Presented by a service.– Represents
what the service provides– Two main uses:
1. Advertisements of Web Services capabilities (non-functional properties, QoS, Description, classification, etc.)
2. Request of Web services with a given set of capabilities• Profile does not specify use/invocation!
• Service Profiles
OWL-S
57
• Process Model
• Process Model– Describes how a service works:
internal processes of the service– Specifies service interaction
protocol– Specifies abstract messages:
ontological type of information transmitted
• Facilitates– Web service invocation– Composition of Web services– Monitoring of interaction
OWL-S
58
• Service Grounding
• Service Grounding– Provides a specification of service
access information.– Service Model + Grounding give
everything needed for using the service
– Builds upon WSDL to define message structure and physical binding layer
• Specifies:– communication protocols, transport
mechanisms, communication languages, etc.
OWL-S
59
OWL-S• Some superficial comments
– OWL-S itself is an OWL Ontology,– Combined with SWRL for preconditions and effects.– Inputs/Outputs subclasses of SWRL variables– Possible candidates for logicical language used: SWRL, SWRL-FOL, (KIF, DRS)
– However: Dicsovery, composition approaches published so far operate purely on description logic reasoning
60
WSML
• WSML-Core• WSML-Flight• WSML-Rule• WSML-DL• WSML-Full
61
WSML
• Examples(Mediator)
ooMediator <<http://www.wsmo.org/2004/d3/d3.3/v0.1/owlAddressMediator.wsml>> nonFunctionalProperties…… source <<http://daml.umbc.edu/ontologies/ittalks/address>> target <<http://www.wsmo.org/ontologies/location>> mediationService <http://138.232.65.151:8080/TranslatorService/OWL2WSML/>>
ggMediator <<http://www.wsmo.org/2004/d3/d3.3/v0.1/20041008/resources/ggm1.wsml>> nonFunctionalProperties…… source <<http://www.wsmo.org/2004/d3/d3.3/v0.1/20041008/resources/goal1.wsml>> target <<http://www.wsmo.org/2004/d3/d3.3/v0.1/20041008/resources/goal.wsml>>
62
WSML vs OWL
• The relation between WSML and OWL+SWRL is still to be completely worked out:
• WSML-Core is a subset of OWL Lite (DL Å Datalog)• WSML-DL is equivalent to OWL DL• WSML-Flight (refers to "F-Logic" and "Light" ;-) and
extends to the LP variant of F-Logic)
but for other languages the relation is still unknown.
63
Relation to Web Services Technology
OWL-S WSMLWeb Services Infrastructure
DiscoveryWhat it does
Profile Web Services (capability) UDDI API
ChoreographyHow is done
Process Model Orchestration + choreography BPEL4WS
InvocationHow to invoke
Grounding+ WSDL/SOAP Grounding WSDL/SOAP
• OWL-S and WSMO map to UDDI API adding semantic annotation• OWL-S and WSMO share a default WSDL/SOAP Grounding • BPEL4WS could be mapped into WSMO orchestration and choreography• Mapping still unclear at the level of choreography/orchestration
– In OWL-S, multi-party interaction is obtained through automatic composition and invocation of multiple parties
– BPEL allows hardcoded representation of many Web services in the same specification.– Trade-off: OWL-S support substitution of Web services at run time, such substitution is
virtually impossible in BPEL.
64
Semantic Web Service Framework
• WSMF• METEOR-S • …
65
WSMF
• Principles and Top Level Concepts– Strong Decoupling & Strong Mediation
• autonomous components with mediators for interoperability– Interface vs. Implementation:
• distinguish interface (= description) from implementation (=program)
Objectives that a client may havewhen consulting a Web Service
Provide the formally specified terminologyof the information used by all other components
Semantic description of Web Services
Connectors between components with mediation facilities for handling heterogeneities
66
WSMF• WSMO、WSML、WSMX
– WSMO: an ontology and conceptual framework to describe Web services and related aspects
– WSML:markup language– WSMX: execution environment
A Conceptual Model for SWS
A Formal Language for WSMO
Execution Environment for WSMO
67
WSMF
• consists of– WSMF-Foundation
• defines rules for defining interface of managed objects– WS-Events
• Web Services-based event subsystem• subscription (push/pull) to event notifications
– WSMF-WSM: WSMF Web Services Management• instance of WSMF-F for managing Web Services• managing Web Services through Web Services
– Extensible by design: future domain specific instances of
WSMF-F
68
WSMF
• Foundation– Managed object:
• represents a manageable resource• implements management interfaces• may support events
– Management interface:• exposes set of related management capabilities,
described in WSDL• categories (extensible): identity, configuration,
monitoring, discovery, control, collection
69
WSMX: The Web Service EXecution Environment
• A service oriented architecture.• See more details in the infrastructure section.
Internet
Message
MessagePeerPeer
Internet
Message
Message
Bas
eSe
rvic
es
Reasoner Semantic Repository Triple Space
Data Mediation Communication Choreography
Negotiation and Contracting
Orchestration Planning
Management Discovery Process Mediation
App
licat
ion
Serv
ices
End
Use
r
Applications
Management & Monitoring
Dev
elop
er
Ontology Editor
Process Editor
Goal Editor
Mapping Editor
Vertical Services
Ver
tica
l Ser
vice
s
70
METEOR-S
• WSDL-S: Adding Semantics to WSDL
• MWSAF - METEOR-S Web Service Annotation Framework
• METEOR-S Web Service Discovery Infrastructure
• METEOR-S Web Process Composition Framework
71
METEOR-S
• WSDL-S
Name
Year
Date
Duration
City
Outputs
Interfaces
Inputs
Area
Coordinates
City Forrest
XML Schema Data type hierarchy
Temporal-Entity
TimeInterval
Time-Point
Date Time
TimeDomain
Event
Scientific-Event
Calendar-Date
{absolute_time}
{hour, minute, second}
{millisecond}
{year, month, day}
{dayOftheWeek, monthOftheYear}
= Time - Ontology
= Local ontology
{name}
{x, y}
Get ConferenceInformation
Ontologies
Web Service
QoS OntologyQoS Ontology
<xsd:complexType name=“Date"><xsd:sequence> <xsd:element name=“year" type="xsd:integer" /> <xsd:element name=“month" type="xsd:integer" /> <xsd:element name=“day" type="xsd:byte" /> </xsd:sequence></xsd:complexType>
Conference Information Functions
Information Function
Get Information
Get Date
Data Semantics
FunctionalSemantics
WSDL
WSDL
QoSSemantics
Min
Quality
72
METEOR-S
• MWSAF
SOAP over HTTP
XML
Client
Server
Internet
SO
AP
ove
r H
TT
P
XM
L
<soap:Body>
<m:GetPrice xmlns:m="http://www.w3schools.com/prices"> <m:Item>Apples</m:Item>
</m:GetPrice></soap:Body> …</soap:Envelope>
Data SemanticsData Semantics
73
METEOR-S
• MWSDI
Data Semantics
FunctionalSemantics
QoSSemantics
DurationDuration
RepudiationRepudiation
PricePrice
AvailabilityAvailability
SecuritySecurity
ReliabilityReliability
CostCost
TimeTime
FidelityFidelity
WS8:function_foo(x..y)
Client
Local
Receipt
Itinerary
Tourism
Inputs OutputsQoS
Internet
Semantic UDDI
WS4
WS2 WS7
WS9
Marketplaces, search engines, and business apps query
Registry entry
74
METEOR-S
• MWSDI
WSDL
<Operation>
<Input1>
<Output1>
Service Template
Operation:buyTicket
Input1:TravelDetails
Output1:Confirmation
Annotations
Publish
Search
UDDI
Class
TravelServices
Class
DataClass
Operations
subClassOf subClassOf
subClassOfsubClassOf subClassOf subClassOf
ClassTicket
Information
ClassTicket
Booking
ClassTicket
Cancellation
ClassConfirmation
Message
Operation:cancelTicket
Input1:TravelDetails
Output1:Confirmation
For simplicity of depicting, the ontology is shown with classes for both operation and dataAdding Semantics to Web Services Standards
75
METEOR-S
• MWSCF
TemplateBuilder
ActivityInterfaces
ProcessTemplates
UDDI
UDDI
UDDI
UDDIUDDI UDDI
Ontologies
ExecutionEngine
ProcessGenerator
Process Designer
Repositories
Discovery Infrastructure
(MWSDI)
Repositories are used to store 1. Web Service Interfaces 2. Ontologies 3. Process Templates
Process Designer 1. Template Construction activity specification using - interfaces - services - semantic activity templates - other details 2. Process Generation - Service discovery (automatic)
and selection (semi-automatic) - Data flow
Process Execution 1. Validation and deployment 2. Executing the process using a client
76
Semantic Web Service Toolkits
• Protégé• WSMX• METEOR-S
77
Protégé
• An Ontology Editor
78
Protégé
• And Ontology Annotaion
79
WSMX
• Overview
80
WSMX
• Overview
Message
Ontology
Interface
Invocation
Network
Mediation
?Name goes here? ?Name goes here?
System
System
System
81
WSMX
• Architecture
82
WSMX
• Architecture
Partner: E1Partner: E2Ontology1: POOntology3: PORN
E1 uses Ontology1E2 uses OntologyRNMed Ont1.PO – Ont2.PORN
E1 E2…
Very specific ontology definition specifying a complex task to be carried out
Mediator
Invoker
Ontology
Compiler
History
Integration instances
Create PO1234Mediate PO1234, PORN
Invoke E2, PORN
AddHistory PORN
“Integ A”
For Compile Receive PORN
::AddHistory
Second Enterprise
12345: execute(“IntegA”, PO1234)23456: execute(“IntegB”, PO3897)
Once compiled, the instructions can be stored by the WSMX for reuse
“Integ A”
Invoke stored execution instances using input parameters
A set of declarative instructions that can be interpreted by the WSMX.
“IntegA”
83
WSMX
• Components– User Interface - WSML
Editor– WSMX Manager– Compiler– Message Parser– Resource Manager– Repository– Events Manager
– WSMO Registry– Execution Engine– Matchmaker– Selector– OO Mediator & XML
Converter– Invoker
84
METEOR-S(Eclipse plugins)
• Start Meteor-S
85
METEOR-S(Eclipse plugins)
• Main Interface
86
METEOR-S(Eclipse plugins)
• Process Design
87
Summary• Semantic Web and Ontology
– RDF– OWL
• Introduction Of Semantic Web Service• Semantic Web Service Markup Language
– OWL-S– WSML– SWSL
• Semantic Web Service Framework– WSMF– METEOR-S – SWSF
• Semantic Web Service Toolkits– Protégé– WSMX– METEOR-S
88
References
• http://www.daml.org/services/
• http://www.w3.org/2001/sw/
• http://protege.stanford.edu/
• http://www.msmo.org/
• http://lsdis.cs.uga.edu/projects/meteor-s/
• http://www.w3.org/Submission/OWL-S/
• http://www.daml.org/services/owl-s/1.0/
89
Thanks!
HP: http://keg.cs.tsinghua.edu.cn/persons/tj/
Arnet: http://jietang.arnetminer.org/