Chapter 6: Modeling and Representation Service-Oriented Computing: Semantics, Processes, Agents –...
-
Upload
bella-warr -
Category
Documents
-
view
226 -
download
1
Transcript of Chapter 6: Modeling and Representation Service-Oriented Computing: Semantics, Processes, Agents –...
Chapter 6:Modeling and Representation
Service-Oriented Computing: Semantics, Processes, Agents– Munindar P. Singh and Michael N. Huhns, Wiley, 2005
Chapter 6 2Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Highlights of this Chapter
Integration versus Interoperation Common Ontologies Knowledge Representations Relationships Hierarchies Modeling Fundamentals Unified Modeling Language (UML)
Chapter 6 3Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Integration versus Interoperation
Application
Transform
Application Application Application Application
Integration EDI XML Portal + Workflow Solution
APIsolution
Standard DataFormat
XML-Based DataExchange Format
Application Application Application Application Application
Distributed application: XML +Web services + workflow
TransformationTransformation
Transform Transform Transform Transform
Transform Transform Transform Transform Transform
Tight coupling Loose coupling
Chapter 6 4Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Modeling and Composing ServicesEmphasis on the Conceptual Model or Schema
RequirementsAnalysis
ConceptualSchema
BackgroundKnowledge
Universe ofDiscourse
Universe ofDiscourse
RequirementsAnalysis
CO
MP
RE
HE
ND
ConceptualSchema
ServiceInterface
ServiceInterface
DesignService
Implementation
DesignService
Implementation
MA
P
INT
ER
OP
ER
AT
E
Chapter 6 5Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Dimensions of Abstraction: 1
Descriptions of services that have a bearing on interoperation
Constraints that we must discover, represent, and reason about
Data Domain specifications Value ranges, e.g., Price >= 0 Allow or disallow null values
Chapter 6 6Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Dimensions of Abstraction: 2
Structure Specializations and generalizations of
domain concepts Taxonomic representations and relationships such
as in schemas and views, e.g., securities are stocks
Semantics of data Some stock price databases consider daily
averages; others closing prices Value maps, e.g., S&P A+ rating corresponds to
Moody’s A rating Integrity constraints
Each stock must have a unique SEC identifier Cardinality constraints
Chapter 6 7Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Dimensions of Abstraction: 3
Process Procedures, i.e., how to process information,
e.g., how to decide what stock to recommend
Flow, e.g., where to forward requests or results Temporal constraints, e.g., report tax data every
quarter Preferences for accessing and updating
information Dealing with data replication (recency or
accuracy) Updating views
Contingency strategies, e.g., whether to ignore, redo, or compensate
Contingency procedures, i.e., how to compensate transactions
Chapter 6 8Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Dimensions of Abstraction: 4
Policy Privileges, i.e., who has rights to what
service E.g., owners can access all of their accounts,
except blind trusts Authentication, i.e., how to establish
identity E.g., passwords, retinal scans, or smart cards
Bookkeeping E.g., logging all accesses
Chapter 6 9Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Value Maps: 1
A value map relates the values expressed by different services
Key properties Totality or coverage Order preservation or monotonicity Consistent inversion or triple
negation
Chapter 6 10Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Value Maps: 2
A++
Aaa
A.M. Best Moody’s
A+
Aa1
A
Aa2
A-
Aa3
B++
A1
B+
A2
B
A3
B-
Baa1
C++
Baa2
C+
Baa3
C
Ba1
C-
Ba2
D
Ba3
E
B1
F
B2
B3
Caa
Ca
C
A++
Aaa
A.M. Best Moody’s
A+
Aa1
A
Aa2
A-
Aa3
B++
A1
B+
A2
B
A3
B-
Baa1
C++
Baa2
C+
Baa3
C
Ba1
C-
Ba2
D
Ba3
E
B1
F
B2
B3
Caa
Ca
C
(a) A consistent value map (b) A value map that violates consistent inversion
Chapter 6 11Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Ontology A specification of a conceptualization or a set
of knowledge terms for a particular domain, including
The vocabulary: concepts and relationships The semantic interconnections: relationships among
concepts and relationships Some simple rules of inference and logic
Some representation languages for ontologies: Unified Modeling Language (UML) Class
Diagrams Resource Description Framework Language
Schema (RDFS) Web Ontology Language (OWL)
Some ontology editors: Protégé, Webonto, OilEd
Chapter 6 12Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Common Ontologies
A shared representation is essential to successful communication and interoperation For humans: physical, biological, and social
world For computational agents: common
ontology (terms used in communication) Representative efforts are
Cyc (and Opencyc) WordNet (Princeton); LDOCE; OED Several upper-level ontologies, including by
IEEE Mostly stable concepts such as space, time,
person, which can be used within various domains
Chapter 6 13Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Ontologies and Articulation Axioms
SeatingArrangement
Airplane
TransportationDevice
nonNegativeInteger
seats
nonNegativeInteger
range
numpassengers
Airliner
Flight
Airport
to from
equipment
CommercialTransportation
Device
PublicTransportation
Device
Itinerary
LocationClass ofService
classto Leg
from
uses
1*
Boeing777
JumboJet
CommonOntology
Travel Agent Service
User’s Agent
Mapping by hand, but with tool support
Developing a common ontology:• All at once (top down)• Incrementally via
consensus (bottom up)
Chapter 6 14Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Knowledge Representation Expressive power Procedural (how) versus declarative
(what) Declarative pros: enables standardization,
optimization, improved productivity of developers
Declarative cons: nontrivial to achieve and causes short-term loss of performance
Trade-offs shifted by Web to favor declarative modeling
Because of heterogeneity
Chapter 6 15Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Frames versus Descriptions
Frame-based approaches are intuitive Like O-O Rely on names of classes and
properties to indicate meaning Description logics provide a
computationally rigorous means to represent meaning; difficult for people
Managing this trade-off is a major challenge for Knowledge Representation
Chapter 6 16Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Exercise: Which Conceptualization is Most Expressive and Flexible?
awg22SolidBlueWire(ID5) blueWire(ID5, AWG22, Solid) solidWire(ID5, AWG22, Blue) wire(ID5, AWG22, Solid, Blue) wire(ID5)^size(ID5,
AWG22)^type(ID5, solid)^color(ID5, Blue)
Chapter 6 17Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Mappings among Ontologies
Term-to-term (one-to-one), e.g.,hookupWireO1 wireO2
Many-to-one, e.g.,solidWireO1(x, size, color) Ɩ strandedWireO1(x, size, color)
wireO2(x, size, color, (Stranded | Solid))
Many-to-many, e.g.,solidBlueWireO1(x, size) Ɩ
solidRedWireO1(x, size) Ɩ
strandedBlueWireO1(x, size) Ɩ
strandedRedWireO1(x, size)
solidWireO2(x, size, (Red | Blue)) Ɩ
strandedWireO2(x, size, (Red | Blue))
Chapter 6 18Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Unified Modeling Language (UML) for Ontologies
PurchaseOrder ShippingDetail
BillingDetailItemDetail
Seller Buyer Account
Organization Person
1 *
1*
1*
1* 1 *1 *
Class diagrams without members
Chapter 6 19Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Comparison of Modeling Languages
Chapter 6 20Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and
Michael Huhns
Chapter 6 Summary
Shared models are essential for interoperation Based on shared ontologies or
conceptualizations Good models must accommodate several
important considerations Modeling requires several subtle
considerations Declarative representations facilitate
reasoning about and managing models Formalization enables ensuring
correctness of models and using them for interoperation