Semantic Web - Knowledge Engineering Group

advertisement
Semantic Management of
Web Services
Steffen Staab
Prague
May 19, 2005
Steffen Staab
ISWeb – Information Systems & Semantic Web
Hopes
• Describe a goal –
let the work be done by
Semantic Web Services
(previously „agents“, „PSMs“,…)
• Projects like
– EU: DIP, ASG, Ibrow, …
– IBM India: see WWW2005
– US: OWL-S
Steffen Staab
ISWeb – Information Systems & Semantic Web
Hopes
Costs
high
RPC
WS*
Management
Costs
SWS
low
coarse
fine
Steffen Staab
ISWeb – Information Systems & Semantic Web
Granularity
of Modelling
Humbleness in Front of Total Costs
Costs
SWS
high
Total
Costs
RPC
WS*
Management
Costs
Modelling
Costs
low
coarse
fine
Steffen Staab
ISWeb – Information Systems & Semantic Web
Granularity
of Modelling
Humbleness
• What are the most urgent problems?
• Where are the largest benefits
Where is this huge need for
• Analogy/Pseudoquote
from Mohan
Semantic Web Services?
(Sigmod Record, 2004):
„Relational Databases were so successful, because people would have to write 20
Better
be incremental!
times more code if they would not
use them.
Therefore, people could do things that they were not able to do otherwise, because
they would not have been able to write 20 times more code.
Therefore, people put up with early relational database mgmt systems, which were
unstable, had many problems, etc.“
Steffen Staab
ISWeb – Information Systems & Semantic Web
Hope, Humbleness and Hope again…
• Web Services
• Middleware
» They are a huge mess!
» Though they have clear conceptual underpinnings,
they are complex beasts!
» Semantic Technologies can do something for them!
» Let‘s backtrack how!
Steffen Staab
ISWeb – Information Systems & Semantic Web
Situation AIFB 1999
– not about Web Services
Portal4
...
Portal3
Semantic
Web Service x
Semantic Web
External
Portal1
Portal2
Internal
Knowledge
Management
App
Steffen Staab
ISWeb – Information Systems & Semantic Web
Contribution of this talk
Application Server for
the Semantic Web
helps
Semantic Web
helps
ASSW
Semantic Web
helps
 ASSW facilitates application
development in the Semantic
Web
 Semantic Web technology is
used within the ASSW
Web Services
helps
 Web Services facilitate
application development
(in the Semantic Web)
 Semantic Web technology is
useful for Web Services
Steffen Staab
ISWeb – Information Systems & Semantic Web
Agenda
• Application Server
– Semantic Web for Application Server
• Problem
• Ontology
• Use Cases
– Development Time
– Run Time
•
•
•
•
•
Ontology Design
Architecture
Implementation
Relationship to MDA
Conclusion
– App Server for Semantic Web
• Semantic Management of Web Services
Steffen Staab
ISWeb – Information Systems & Semantic Web
Problem
Resources
<web-app>
<servlet>
Dependencies
Access
<servlet-name>JMXInvokerServlet...
<servlet-class>org.jboss....</servlet-class>
<init-param> ... </init-param>
Users
<load-on-startup>1</load-on-startup>
...
<security-constraint>
...
</security-constraint>
Complexity in Application
... Servers
Multitude of XML-DTDs
Ontology
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>HTTP Invoker</realm-name>
</login-config>
web.xml
application.xml
<security-role>
<role-name>HttpInvoker</role-name>
</security-role>
...
ejb-jar.xml
.htaccess
MLETs
Steffen Staab
ISWeb – Information Systems & Semantic Web
Rights
...
login-config.xml
Ontology
• Ontology is explicit conceptual model
• Formalizes properties, relationships and
behaviors of components
• Aims at conceptualizing „shared“
understanding
• Logics-based formal semantics
Component
• Axioms
Ontology
Schema level
EnterpriseBean MBean
• Allows reasoning
instOf
Instance level
Semantic
Metadata
• Allows conceptual querying
CustomerEJB
Steffen Staab
ISWeb – Information Systems & Semantic Web
Use Cases Development Time
• Component dependencies and versioning
...
RecommenderServlet
WebShopServlet
Lib
Lib
Lib
• Licensing
Customer Entity Bean
NewsServlet
...
Lib
– model development constraints
Lib
• Capability descriptions
– make component capabilities explicit
• Semantics of parameters
– associate names with ontology
• Automatic generation of component and service metadata
– beyond java2wsdl
Steffen Staab
ISWeb – Information Systems & Semantic Web
Use Cases Run Time
• Access Rights
– E.g. indirect permissions...
WebShopServlet
Anonymous
Context
Switch
Customer
Customer Entity Bean
• Error handling
– Avoid exceptions thrown to the user
• Transactional settings
– Discover components that do not support
transactions
• Secure communication
– Discover non-encrypting components
Steffen Staab
ISWeb – Information Systems & Semantic Web
Admin
Ontology Design
Ontology Design
– Syntactic vs. Semantic Metadata
– Generic vs. Domain Knowledge
– Modular
Generality
Container
Semantics of parameters
Automatic generation
Capability
Descriptions
ontology module
uses module
Syntactic vs.
Semantics
Semantic
Metadata
Generic
Component
Profile
API Description
Grounding
IDL
Domain Knowledge
Domain
Domain
API Description
Profiles
Domain Ontology Modules
Steffen Staab
ISWeb – Information Systems & Semantic Web
application.xml
web.xml
ejb-jar.xml
...
Syntactic
Metadata
Implementation
Domain

Implementation details
Mapping to source code
Architecture
Application Server Core Services
Naming
Security
Transaction
Manager
Administration
Inference
Engine
Security
Management
Version
Management
Component
Loader
Ontology
...
web.xml
application.xml
login-config.xml
ejb-jar.xml
.htaccess
MLETs
Steffen Staab
ISWeb – Information Systems & Semantic Web
KAON SERVER
• Prototype of an
ontology-based Application Server
• Part of KArlsruhe ONtology and
Semantic Web Toolsuite (KAON)
• Uses KAON ontology language
and inference engine
• Makes obsolete several description files
• Uses JMX/JBossMX
• Inference engine as additional MBean
• Additionally facilitates development
http://kaon.semanticweb.org
of Semantic Web applications
[ACM TOIT 5(2)]
Steffen Staab
ISWeb – Information Systems & Semantic Web
Relationship to MDA
• OMG‘s Model Driven Architecture
• Separates conceptual from
implementation concerns
• Not applied for run time aspects so far
• Lack of formal semantics
• No reasoning capability
Steffen Staab
ISWeb – Information Systems & Semantic Web
Agenda
• Application Server
– Semantic Web for Application Server
– App Server for Semantic Web
• Semantic Management of Web Services
Steffen Staab
ISWeb – Information Systems & Semantic Web
Analysis
• Megaprogramming
Informa tion cha in
Ontology Editor
APPLICATION
Person
Gra dua te-Student
Portal
Aca demicSta ff
USES
SOFTWARE
MODULE
XML Schema
Va lidator
Person
Rule-based
system
DL
reasoner
xsi:da teTime
Person
birthda y
Gra dua te-Student
Aca demicSta ff
Ontology
Store
• Semantic Web Layer Cake
coopera tesWith(Y,X) < ->
coopera tesWith(X,Y)
Trust
Proof
Logic
Ontology
RDF + RDFS
XML + Namespaces
Unicode
Steffen Staab
ISWeb – Information Systems & Semantic Web
URI
Requirements
1. Flexible handling of modules
Extensibility, Dependencies, …
2. Static part of the Semantic Web
Language Support, Ontology Mapping, …
3. Dynamic part of the Semantic Web
Finding, Accessing, Modifying and Storing of ontologies
Transactions and Rollbacks, Evolution and Versioning, Inferencing and
Verification, …
4. Semantic enhancement of the server
Component capability descriptions and discovery, Semantic API
descriptions, Component classification, automatic generation of
semantic web service descriptions, etc.
5. Common Application Server functionality
Steffen Staab
ISWeb – Information Systems & Semantic Web
Requirements in the Architecture
Design element
Requirement
Language Support
Semantic Interoperability
x
Ontology Mapping
Ontology Modularization
x
x
Finding, Accessing, Storing
Transactions, Rollbacks
Evolution, Versioning
Inferencing, Verification
Connectivity, Security
Extensibility
x
x
x
x
x
x
x
Discovery
Dependencies
x
x
Steffen Staab
ISWeb – Information Systems & Semantic Web
x
x
x
x
x
x
x
x
x
Design
1. Flexible handling of modules
→ Microkernel and component approach
Functionality: simple management operations
(start, stop, monitor, ...)
Microkernel
...
Modules must be instrumented -> components
Component
1)
2)
Software Module
Software Module
Instrumentation
Instrumentation
Software Module
Proxy
Component
Steffen Staab
ISWeb – Information Systems & Semantic Web
External
Module
Design
2. Static part of the Semantic Web
→ functional components
3. Dynamic part of the Semantic Web
→ functional components
4. Semantic enhancement of the server
→ ontological registry with inference capability
→ system component
5. Common Application Server functionality
→ Reuse existing Application Server as far as possible
Steffen Staab
ISWeb – Information Systems & Semantic Web
Architecture
Client
Surrogate1
Surrogate2
Steffen Staab
ISWeb – Information Systems & Semantic Web
Implementation
Kernel
KAON SERVER
MBeans
MBeanServer
Java Mgmt Extensions (JMX)
JBossMX
Steffen Staab
ISWeb – Information Systems & Semantic Web
Implementation
Components
Design
Application Server
for the Semantic Web
Starting the Server/Mgmt Console
Steffen Staab
ISWeb – Information Systems & Semantic Web
Browsing and querying the registry
KAON OIModeler
Generic KAON ontology store surrogate
Steffen Staab
ISWeb – Information Systems & Semantic Web
Browsing and querying the registry
KAON OIModeller for browsing and querying
the KAON SERVER‘s registry at run-time
Steffen Staab
ISWeb – Information Systems & Semantic Web
OilEd
OilEd
1. OilEd queries registry
for available reasoners
Generic RDF surrogate
2. Component ID is fed into
reasoner surrogate
3. Reasoner surrogate relays
communication to FaCT
Steffen Staab
ISWeb – Information Systems & Semantic Web
Reasoner surrogate
From App Server to Web Services
ASSW Cascade
Steffen Staab
ISWeb – Information Systems & Semantic Web
Purpose of Web Services
• Light-weight
• Widely distributed
• Heterogeneous
platforms
helps
Semantic Web
Web Services
 Semantic Web technology is
useful for Web Services
=
Application Server
+ Wide Distribution
+ Web Standards
Steffen Staab
ISWeb – Information Systems & Semantic Web
Chasm of Web Services
Web Services Standards
WS*
Semantic Web Services
•
•
•
•
•
• Goals
• Means
RPC
I/O Typing
Workflow
Security
…
Plumbing
End Customer Use
Steffen Staab
ISWeb – Information Systems & Semantic Web
Semantic Management
Web Services
Chasm
of WebofServices
Web Services
Standards WS*
Semantic Web Services
• Complex by size
• Complex by
heterogeneity
• No coherent model
• Inconsistencies
• Too complicated to
specify for developers
• Semantics not
powerful enough
Steffen Staab
ISWeb – Information Systems & Semantic Web
Modelling Cost Considerations
Costs
SWWS
high
Total
Costs
WS*
Management
Costs
Our
target
Modelling
Costs
low
coarse
fine
Steffen Staab
ISWeb – Information Systems & Semantic Web
Granularity
of Modelling
Data vs Services Analogy
Data
Services
•
•
•
•
•
•
•
•
Modelling
Query
Modify
Join
Modelling
Query
Configure
Compose
• Execute
• Monitor
Steffen Staab
ISWeb – Information Systems & Semantic Web
DBMS
Knowledge Discovery
remains a laborintensive process!
Implicit
Meaning of
Data
Why?
Immediate
Meaning of
Data
What?
Logical
Schema
Ordner A
Ordner B
Physical
Data
Steffen Staab
ISWeb – Information Systems & Semantic Web
File 1
File 2
How?
organisation will
Web Service MSService
remain a labor-intensive
Semantic
Web
Services
definitions
types
process!
Why?
(automatic
composition!)
„WSPolicy“, ….
Abstrakte
Definitionen
messages
parts
portType
operation
binding
operation
service
What?
referenziert
Konkrete
Definitionen
WSDL,
BPEL, …
port
TCP/IP
Steffen Staab
ISWeb – Information Systems & Semantic Web
How?
Conclusion from analogy
Modelling and use of Web services by
manipulation of individual files is an archaic
practice – just like managing data by reading
and writing individual files!
Steffen Staab
ISWeb – Information Systems & Semantic Web
WS Management Objectives
• Separate „What?“ from „How?“
• Leave „Why?“ to the developer
(at least for the moment)
• Go beyond simple data manipulation into
semantic management in order to capture
the immediate meaning of Web services
Steffen Staab
ISWeb – Information Systems & Semantic Web
Use Cases
Who?
What for?
When?
Query type/Service Mgmt Task?
Steffen Staab
ISWeb – Information Systems & Semantic Web
Ontologies for an Open World
DOLCE
Descriptions & Situations
Ontology of Plans
Core Ontology of Services
Service Management Core Ontology
Domain ontologies
Steffen Staab
ISWeb – Information Systems & Semantic Web
D&S alignment to DOLCE
Ground entities of DOLCE
Descriptive entities of D&S
Situation
In the following slides we
see some modelling
excerpts from the different
levels…
Description
S-Description
satisfies
played-by
component C-Description
Parameter
Functional Role
Course
Steffen Staab
ISWeb – Information Systems & Semantic Web
COS alignment to D&S
DOLCE
D&S
COS
Conceptual disambiguation
Situation
Wider scope
Activity
Service Activity
Information
Description
Object
S-Description
Computational Activity
Service Task
Functional Role
Task
Course
Computational Task
Service Offering Service Activities
Description
Description
Service Agreement
Description
Service Requirements Service Assessment
Description
Description
Agentive
Functional Role
Legally Constructed Person
Requestor
Provider
Instrumentality
Role
Executor
Input
Computational Input
Steffen Staab
ISWeb – Information Systems & Semantic Web
Output
Comp. Output
Service Management Core
Ontology
Metadata from: WSDL, WS-policy, performace measurements, reflection
Service Management Description
Information
Source
Parameter
...
Quality of Service Descrip
...
Policy Description
Interface Description
Age of
Information
Plan Description
Parameter
Description
Descriptive
Concept
Set of descriptive
concepts and associations
Steffen Staab
ISWeb – Information Systems & Semantic Web
Association
Constraint
requisite for
Parameter
right
User
obligation towards
(agentive)
Functional Role
Task
Course of Event
sequences
participant
played-by valued-by
participant
Perdurant
locatedIn
Concrete
Constraint
Steffen Staab
Information
Object
Policy
Constraint
Constraint Value
Endurant
Constraint
Value & Semantic Web
ISWeb – Information
Systems
Situation
Ground Entities
Computational
Activity
Endurant
Object
(non-agentive)
Functional Role
played-by
Information
Object
anakastic
duty
towards
Descriptive Entities
Policy Description
Service Management Description SMD1
Service Management Description SMD2
Interface Description ID1
Operation Op1
Computational
Input CI1
Computational
Output CO1
<WSDL>
Interface Description ID2
<BPEL>
Operation Op2
Computational
Input CI2
Computational
Output CO2
<WSDL>
Steffen Staab
ISWeb – Information Systems & Semantic Web
Integration in KAON Server
Steffen Staab
ISWeb – Information Systems & Semantic Web
Conclusion on Semantic Middleware
• Ontologies provide great practical benefit
• Conceptual difference between components and
web services are marginal (see Oberle 2005)
• Ontologies are no silver bullet!
– Problem: provision of semantic metadata
-> small is beautiful!
-> beautiful is cheap!
Steffen Staab
ISWeb – Information Systems & Semantic Web
Thank You!
• D. Oberle, A. Eberhart, S. Staab, R. Volz. Developing and Managing
Software Components in an ontology-based Application Server. In
Proc. Middleware 2004, ACM/IFIP/USENIX International Middleware
Conference, Toronto, October 18-22, 2004, LNCS, Springer.
• D. Oberle, S. Staab, R. Studer, R. Volz. Supporting Application
Development in the Semantic Web. ACM Transactions on Internet
Technology, 5(2), 2005.
• D. Oberle, S. Lamparter, A. Eberhart, S. Staab. Semantic
Management of Web Services. Tech Report (shorter version at
Semantic Web Service Week, Innsbruck June 2006).
• D. Oberle. Semantic Management of Middleware. Springer 2005/06
http://isweb.uni-koblenz.de/
Steffen Staab
ISWeb – Information Systems & Semantic Web
Web services constitute a middleware in order to model
distributed applications and let them run on a set of
heterogeneous platforms.
Unfortunately, the many different Web service standards
do not include a formal, let alone a common formal,
model, which would allow to give an integrated,
consistent view onto all of them.
In this talk we sketch how ontologies may be used to
integrate metadata about middleware in general and web
services, in particular. Thus, we may answer about
properties of web services in order to facilitate the life of
the system developer and administrator for
managing complex, distributed systems.
Steffen Staab
ISWeb – Information Systems & Semantic Web
Download