Internet Engineering Course Semantic Web, Web Services, Semantic Web Services 1.
Post on 16-Jan-2016
218 Views
Preview:
Transcript
Internet Engineering Internet Engineering CourseCourse
Semantic Web,Web Services,Semantic Web Services
1
AgendaVision of Next Generation Web Technology
Semantic Web Today’s Web The Semantic Web Impact Semantic Web Technologies A Layered Approach
Web Services Why Web Services? Enabling Technologies Web Service Composition Main Issues concerning the composition
Semantic Web Services
2
Static
◦ 500 million users ◦ more than 3 billion pages
WWWURI, HTML, HTTP
Vision of Next Generation Vision of Next Generation Web TechnologiesWeb Technologies
3
WWWURI, HTML, HTTP
Serious Problems in information finding, information extracting, information representing, information interpreting and and information maintaining.
Semantic WebRDF, RDF(S), OWL
Static
Vision of Next Generation Vision of Next Generation Web TechnologiesWeb Technologies
4
WWWURI, HTML, HTTP
Bringing the computer back as a device for computation
Semantic WebRDF, RDF(S), OWL
Dynamic Web ServicesUDDI, WSDL, SOAP
Static
Vision of Next Generation Vision of Next Generation Web TechnologiesWeb Technologies
5
WWWURI, HTML, HTTP
Bringing the web to its full potential
Semantic WebRDF, RDF(S), OWL
Dynamic Web ServicesUDDI, WSDL, SOAP
Static
Semantic WebServices
Vision of Next Generation Vision of Next Generation Web TechnologiesWeb Technologies
6
7
Semantic WebSemantic Web
8
Semantic Web OutlineSemantic Web Outline
1. Today’s Web2. The Semantic Web Impact3. Semantic Web Technologies4. A Layered Approach
9
Today’s WebToday’s WebMost of today’s Web content is
suitable for human consumption ◦ Even Web content that is generated
automatically from databases is usually presented without the original structural information found in databases
Typical Web uses today people’s◦ seeking and making use of information,
searching for and getting in touch with other people, reviewing catalogues of online stores and ordering products by filling out forms
10
Keyword-Based Search Keyword-Based Search Engines Engines
Current Web activities are not particularly well supported by software tools◦Except for keyword-based search
engines (e.g. Google, AltaVista, Yahoo)The Web would not have been the
huge success it was, were it not for search engines
11
Problems of Keyword-Based Problems of Keyword-Based Search EnginesSearch Engines
High recall, low precision.Low or no recallResults are highly sensitive to
vocabulary Results are single Web pages Human involvement is necessary to
interpret and combine resultsResults of Web searches are not
readily accessible by other software tools
12
The Key Problem of The Key Problem of Today’s WebToday’s Web
The meaning of Web content is not machine-accessible: lack of semantics
It is simply difficult to distinguish the meaning between these two sentences:
I am a professor of computer science.
I am a professor of computer science,
you may think. Well, . . .
13
The Semantic Web The Semantic Web ApproachApproachRepresent Web content in a form
that is more easily machine-processable.
Use intelligent techniques to take advantage of these representations.
The Semantic Web will gradually evolve out of the existing Web, it is not a competition to the current WWW
14
Semantic Web OutlineSemantic Web Outline
1. Today’s Web2. The Semantic Web Impact3. Semantic Web Technologies4. A Layered Approach
15
The Semantic Web Impact – The Semantic Web Impact – Knowledge ManagementKnowledge Management
Knowledge management concerns itself with acquiring, accessing, and maintaining knowledge within an organization
Key activity of large businesses: internal knowledge as an intellectual asset
It is particularly important for international, geographically dispersed organizations
Most information is currently available in a weakly structured form (e.g. text, audio, video)
16
Limitations of Current Knowledge Limitations of Current Knowledge Management TechnologiesManagement Technologies
Searching information ◦ Keyword-based search engines
Extracting information◦ human involvement necessary for browsing,
retrieving, interpreting, combiningMaintaining information
◦ inconsistencies in terminology, outdated information.
Viewing information ◦ Impossible to define views on Web knowledge
17
Semantic Web Enabled Knowledge Semantic Web Enabled Knowledge ManagementManagement
Knowledge will be organized in conceptual spaces according to its meaning.
Automated tools for maintenance and knowledge discovery
Semantic query answeringQuery answering over several documentsDefining who may view certain parts of
information (even parts of documents) will be possible.
18
The Semantic Web Impact – The Semantic Web Impact – B2C Electronic CommmerceB2C Electronic Commmerce
A typical scenario: user visits one or several online shops, browses their offers, selects and orders products.
Ideally humans would visit all, or all major online stores; but too time consuming
Shopbots are a useful tool
19
Limitations of ShopbotsLimitations of ShopbotsThey rely on wrappers: extensive
programming requiredWrappers need to be reprogrammed
when an online store changes its outfitWrappers extract information based
on textual analysis◦ Error-prone◦ Limited information extracted
20
Semantic Web Enabled B2C Semantic Web Enabled B2C Electronic CommerceElectronic Commerce
Software agents that can interpret the product information and the terms of service.◦ Pricing and product information, delivery and
privacy policies will be interpreted and compared to the user requirements.
Information about the reputation of shops
Sophisticated shopping agents will be able to conduct automated negotiations
21
The Semantic Web Impact – The Semantic Web Impact – B2B Electronic CommerceB2B Electronic Commerce
Greatest economic promiseCurrently relies mostly on EDI
◦ Isolated technology, understood only by experts
◦ Difficult to program and maintain, error-prone◦ Each B2B communication requires separate
programming Web appears to be perfect infrastructure
◦ But B2B not well supported by Web standards
22
Semantic Web Enabled B2B Semantic Web Enabled B2B Electronic CommerceElectronic Commerce
Businesses enter partnerships without much overhead
Differences in terminology will be resolved using standard abstract domain models
Data will be interchanged using translation services.
Auctioning, negotiations, and drafting contracts will be carried out automatically (or semi-automatically) by software agents
23
Semantic Web OutlineSemantic Web Outline
1. Today’s Web2. The Semantic Web Impact3. Semantic Web Technologies4. A Layered Approach
24
Semantic Web Semantic Web TechnologiesTechnologiesExplicit MetadataOntologiesLogic and InferenceAgents
25
On HTMLOn HTMLWeb content is currently
formatted for human readers rather than programs
HTML is the predominant language in which Web pages are written (directly or using tools)
Vocabulary describes presentation
26
An HTML ExampleAn HTML Example<h1>Agilitas Physiotherapy Centre</h1>Welcome to the home page of the Agilitas
Physiotherapy Centre. Do you feel pain? Have you had an injury? Let our staff
Lisa Davenport,Kelly Townsend (our lovely secretary) and Steve
Matthews take careof your body and soul.<h2>Consultation hours</h2>Mon 11am - 7pm<br>Tue 11am - 7pm<br>Wed 3pm - 7pm<br>Thu 11am - 7pm<br>Fri 11am - 3pm<p>But note that we do not offer consultation during the
weeks of the <a href=". . .">State Of Origin</a> games.
27
Problems with HTMLProblems with HTMLHumans have no problem with
thisMachines (software agents) do:
◦How distinguish therapists from the secretary,
◦How determine exact consultation hours
◦They would have to follow the link to the State Of Origin games to find when they take place.
28
A Better RepresentationA Better Representation<company>
<treatmentOffered>Physiotherapy</treatmentOffered><companyName>Agilitas Physiotherapy Centre</companyName><staff>
<therapist>Lisa Davenport</therapist><therapist>Steve Matthews</therapist><secretary>Kelly Townsend</secretary>
</staff></company>
29
Explicit MetadataExplicit MetadataThis representation is far more
easily processable by machinesMetadata: data about data
◦Metadata capture part of the meaning of data
Semantic Web does not rely on text-based manipulation, but rather on machine-processable metadata
30
OntologiesOntologies
The term ontology originates from philosophy
The study of the nature of existence
Different meaning from computer science
An ontology is an explicit and formal specification of a conceptualization
31
Typical Components of Typical Components of OntologiesOntologies
Terms denote important concepts (classes of objects) of the domain ◦ e.g. professors, staff, students, courses, departments
Relationships between these terms: typically class hierarchies◦ a class C to be a subclass of another class C' if every
object in C is also included in C' ◦ e.g. all professors are staff members
32
Further Components of Further Components of OntologiesOntologies Properties:
◦ e.g. X teaches Y Value restrictions
◦ e.g. only faculty members can teach courses Disjointness statements
◦ e.g. faculty and general staff are disjoint Logical relationships between objects
◦ e.g. every department must include at least 10 faculty
Ontology ExampleOntology Example
Concept conceptual entity of the domain
Property attribte describing a concept
Relation relationship between concepts or properties
Axiom coherency description between Concepts / Properties / Relations via logical expressions
Person
Student Professor
Lecture
isA – hierarchy (taxonomy)
name email
Fieldresearch
field
topicSyllabus
attends holds
holds(Professor, Lecture) =>Lecture.topic = Professor.researchField
34
The Role of Ontologies on The Role of Ontologies on the Webthe WebOntologies provide a shared
understanding of a domain: semantic interoperability◦overcome differences in terminology ◦mappings between ontologies
Ontologies are useful for the organization and navigation of Web sites
35
The Role of Ontologies in Web The Role of Ontologies in Web SearchSearchOntologies are useful for improving the
accuracy of Web searches ◦ search engines can look for pages that refer to a
precise concept in an ontology Web searches can exploit generalization/
specialization information ◦ If a query fails to find any relevant documents, the
search engine may suggest to the user a more general query.
◦ If too many answers are retrieved, the search engine may suggest to the user some specializations.
36
Web Ontology LanguagesWeb Ontology LanguagesRDF SchemaRDF is a data model for objects and
relations between themRDF Schema is a vocabulary description
language Describes properties and classes of RDF
resourcesProvides semantics for generalization
hierarchies of properties and classes
37
Web Ontology Languages Web Ontology Languages (2) (2) OWL A richer ontology languagerelations between classes
◦e.g., disjointnesscardinality
◦e.g. “exactly one”richer typing of propertiescharacteristics of properties (e.g.,
symmetry)
38
Logic and InferenceLogic and InferenceLogic is the discipline that studies the
principles of reasoningFormal languages for expressing
knowledgeWell-understood formal semantics
◦ Declarative knowledge: we describe what holds without caring about how it can be deduced
Automated reasoners can deduce (infer) conclusions from the given knowledge
39
An Inference ExampleAn Inference Example
prof(X) faculty(X)faculty(X) staff(X)prof(michael)
We can deduce the following conclusions:faculty(michael)staff(michael)prof(X) staff(X)
40
Logic versus OntologiesLogic versus OntologiesThe previous example involves
knowledge typically found in ontologies◦Logic can be used to uncover ontological
knowledge that is implicitly given ◦It can also help uncover unexpected
relationships and inconsistenciesLogic is more general than
ontologies◦It can also be used by intelligent agents
for making decisions and selecting courses of action
41
Tradeoff between Expressive Power Tradeoff between Expressive Power and Computational Complexityand Computational ComplexityThe more expressive a logic is, the more
computationally expensive it becomes to draw conclusions◦ Drawing certain conclusions may become
impossible if non-computability barriers are encountered.
Our previous examples involved rules “If conditions, then conclusion,” and only finitely many objects◦ This subset of logic is tractable and is supported by
efficient reasoning tools
42
Inference and Inference and ExplanationsExplanationsExplanations: the series of
inference steps can be retracedThey increase users’ confidence
in Semantic Web agents: “Oh yeah?” button
Activities between agents: create or validate proofs
43
Typical Explanation Typical Explanation ProcedureProcedureFacts will typically be traced to
some Web addresses ◦The trust of the Web address will be
verifiable by agentsRules may be a part of a shared
commerce ontology or the policy of the online shop
44
Software AgentsSoftware AgentsSoftware agents work autonomously and
proactively ◦ They evolved out of object oriented and
compontent-based programmingA personal agent on the Semantic Web will:
◦ receive some tasks and preferences from the person
◦ seek information from Web sources, communicate with other agents
◦ compare information about user requirements and preferences, make certain choices
◦ give answers to the user
45
Semantic Web Agent Semantic Web Agent TechnologiesTechnologiesMetadata
◦Identify and extract information from Web sources
Ontologies◦Web searches, interpret retrieved
information ◦Communicate with other agents
Logic◦Process retrieved information, draw
conclusions
46
Semantic Web Agent Technologies Semantic Web Agent Technologies (2)(2)Further technologies (orthogonal
to the Semantic Web technologies)◦Agent communication languages◦Formal representation of beliefs,
desires, and intentions of agents◦Creation and maintenance of user
models.
47
Semantic Web OutlineSemantic Web Outline
1. Today’s Web2. The Semantic Web Impact3. Semantic Web Technologies4. A Layered Approach
48
A Layered ApproachA Layered ApproachThe development of the
Semantic Web proceeds in steps◦Each step building a layer on top of
another
Principles:Downward compatibility Upward partial understanding
49
The Semantic Web Layer The Semantic Web Layer TowerTower
50
Semantic Web LayersSemantic Web LayersXML layer
◦Syntactic basisRDF layer
◦RDF basic data model for facts◦RDF Schema simple ontology
languageOntology layer
◦More expressive languages than RDF Schema
◦Current Web standard: OWL
51
Semantic Web Layers (2)Semantic Web Layers (2)Logic layer
◦enhance ontology languages further◦application-specific declarative
knowledge Proof layer
◦Proof generation, exchange, validation
Trust layer◦Digital signatures◦recommendations, rating agencies
….
Web ServicesWeb Services
52
AgendaAgendaWhat are Web Services?Why Web Services?Enabling Technologies?What is Web Service
Composition?Main Issues concerning the
composition?
53
Web Evolution
XMLXML
ProgrammabilityProgrammabilityConnectivityConnectivity
HTMLHTML
PresentationPresentation
TCP/IPTCP/IP
Technology
Technology
Innovation
Innovation
FTP,FTP, E-mail, Gopher
E-mail, Gopher
Web PagesWeb Pages
Browse Browse the Webthe Web
Program Program the Webthe Web
Web Services
Web Services
54
What are Web Services?What are Web Services?Definition from W3C "Web Service is a software
application identified by a URI, whose interfaces and bindings are capable of being defined, described, and discovered by XML artifacts and which supports direct interactions with other software applications using XML-based messages via internet-based protocols".
55
What are Web Services?What are Web Services?Every component that
◦works in a network, ◦is modular ◦is self-descriptive,◦provides services independent of
platform and application,◦conforms to an open set of standards
and ◦follows a common structure for
description and invocation.
56
Why Web ServicesWhy Web ServicesInteroperability.
◦ Any WS can interact with any other WS.
Ubiquity. ◦ Any device which supports HTTP + XML can
host & access WS.
Effortless entry in this concept. ◦ easily understood + free toolkits
Industry Support. ◦ major vendors support surrounding technology.
57
Web Services ArchitectureWeb Services ArchitectureComponents
◦Service Providers◦Service Brokers◦Service Requestors
Operations◦Publish / Unpublish◦Find◦Bind
58
59
Enabling technologiesEnabling technologiesThey encapsulate a set of standards that allow
the developers to implement distributed applications.
SOAP (Simple Object Access Protocol),◦ XML messaging protocol for basic service
interoperabilityWSDL (Web Service Description Language)
◦ Common grammar for describing services UDDI (Universal Description Discovery and
Integration)◦ infrastructure required to publish and discover
services.60
SOAPSOAP
Uniform way of ◦ passing XML-encoded data.◦ performing RPCs over SMTP,
FTP, TCP/IP, HTTP
1. The requestor sends a msg to the service
2. The service processes the msg.
3. The service sends back a response.The requestor has no knowledge of how the service is
implemented.
61
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
<SOAP-ENV:Body> <e:Book> <title>My Life and Work</title>
<firstauthor href="#Person-1"/> <secondauthor href="#Person-2"/>
</e:Book> <e:Person id="Person-1"><name>Henry Ford</name>
<address xsi:type="m:Electronic-address">
<email>mailto:henryford@hotmail.com</email> <web>http://www.henryford.com</web> </address>
</e:Person> <e:Person id="Person-2"> <name>Samuel Crowther</name> <address xsi:type="n:Street-address">
<street>Martin Luther King Rd</street>
<city>Raleigh</city> <state>North Carolina</state> </address>
</e:Person> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
SOAP ExampleSOAP Example
62
SOAP - RPCSOAP - RPCMust define an RPC protocol
◦How will types be transported (in XML) and how application represents them.
◦RPC parts (object id, operation name, parameters)
SOAP assumes a type system based on XML-schema.
63
SOAP Example - SOAP Example - doGoogleSearchdoGoogleSearch
<SOAP-ENV:Envelope xmlns:SOAP-ENV= http://schemas.xmlsoap.org/soap/envelope/ xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"><SOAP-ENV:Body>
<ns1:doGoogleSearch xmlns:ns1="urn:GoogleSearch" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<key xsi:type="xsd:string">00000000000000000000000000000000</key>
<q xsi:type="xsd:string">my query</q> <start xsi:type="xsd:int">0</start>
<maxResults xsi:type="xsd:int">10</maxResults> <filter xsi:type="xsd:boolean">true</filter> <restrict xsi:type="xsd:string"/>
<safeSearch xsi:type="xsd:boolean">false</safeSearch> <lr xsi:type="xsd:string"/> <ie xsi:type="xsd:string">latin1</ie>
<oe xsi:type="xsd:string">latin1</oe></ns1:doGoogleSearch>
</SOAP-ENV:Body></SOAP-ENV:Envelope>64
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" ………..<SOAP-ENV:Body><ns1:doGoogleSearchResponse xmlns:ns1="urn:GoogleSearch" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<return xsi:type="ns1:GoogleSearchResult"><documentFiltering xsi:type="xsd:boolean">false</documentFiltering><estimatedTotalResultsCount
xsi:type="xsd:int">3</estimatedTotalResultsCount><directoryCategories
xmlns:ns2="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns2:Array" ns2:arrayType="ns1:DirectoryCategory[0]"/>
<searchTime xsi:type="xsd:double">0.194871</searchTime><resultElements
xmlns:ns3="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns3:Array" ns3:arrayType="ns1:ResultElement[3]"><item xsi:type="ns1:ResultElement"><cachedSize xsi:type="xsd:string">12k</cachedSize><directoryCategory
xsi:type="ns1:DirectoryCategory">Category</directoryCategory><relatedInformationPresent
xsi:type="xsd:boolean">true</relatedInformationPresent><directoryTitle xsi:type="xsd:string"/><summary xsi:type="xsd:string"/><URL xsi:type="xsd:string">http://hci.stanford.edu/cs147/example/shrdlu/</
URL><title xsi:type="xsd:string"><b>SHRDLU</b></title></item>
SOAP Example - doGoogleSearchResult
65
WSDLWSDLIDL of Web ServicesXML format developed by IBM &
MS.Provides two types of information
◦Abstract interface: Application-level service description
◦Protocol dependent details
66
WSDL - Abstract interfaceWSDL - Abstract interfaceMessages exchanged in an
interaction.Components:
◦Vocabulary (XSD for type definition) ◦Message: abstract, typed data
definition sent to and from services.◦Interaction
67
VocabularyVocabulary<wsdl:types> <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:GoogleSearch"> <xsd:complexType name="GoogleSearchResult">
<xsd:all> <xsd:element name="documentFiltering" type="xsd:boolean"/> <xsd:element name="searchComments" type="xsd:string"/> <xsd:element name="estimatedTotalResultsCount" type="xsd:int"/> <xsd:element name="estimateIsExact" type="xsd:boolean"/> <xsd:element name="resultElements" type="typens:ResultElementArray"/> <xsd:element name="searchQuery" type="xsd:string"/> <xsd:element name="startIndex" type="xsd:int"/> <xsd:element name="endIndex" type="xsd:int"/> <xsd:element name="searchTips" type="xsd:string"/> <xsd:element name="directoryCategories"
type="typens:DirectoryCategoryArray"/> <xsd:element name="searchTime" type="xsd:double"/>
</xsd:all></xsd:complexType>
68
MessageMessage
<message name="doGoogleSearch"><part name="key" type="xsd:string"/><part name="q" type="xsd:string"/><part name="start" type="xsd:int"/><part name="maxResults" type="xsd:int"/><part name="filter" type="xsd:boolean"/><part name="restrict" type="xsd:string"/><part name="safeSearch" type="xsd:boolean"/><part name="lr" type="xsd:string"/><part name="ie" type="xsd:string"/><part name="oe" type="xsd:string"/>
</message><message name="doGoogleSearchResponse">
<part name="return" type="typens:GoogleSearchResult"/></message>
69
InteractionInteraction<binding name="GoogleSearchBinding"
type="typens:GoogleSearchPort"><soap:binding style="rpc“ transport="http://schemas.xmlsoap.org/soap/http"/><operation name="doGetCachedPage">
<soap:operation soapAction="urn:GoogleSearchAction"/>
<input><soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/
soap/encoding/" namespace="urn:GoogleSearch"/>
</input><output>
<soap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:GoogleSearch"/></output>
</operation>
70
UDDIUDDIGlobal business registryRoot under www.uddi.orgThree types of information
◦White pages◦Yellow pages◦Green pages
71
UDDI information modelUDDI information model
BusinessEntityInfo about business that publishesInfo about service
BusinessServiceDescriptive info abouta service
BindingTemplateTechnical info about a serviceend point
tModelDescriptions on specifications ofservices
PublisherAssertionInfo about relationshipbetween 2 parties
encapsulates
encapsulates
72
Web Service CompositionWeb Service Composition
Definition: Technique of composing the functionalities of relatively simpler services to produce a ‘meaningful’ arbitrarily complex application.
73
WS composition - WS composition - ClassificationClassification
Proactive Composition & Reactive Composition◦Proactive: offline composition of
available services When: services are stable and always
running Example: ticket reservation service
◦Reactive: dynamically creating a composite service. When: composite service not often used
and service processes not stable. Example: tour manager where the itinerary
is not predefined
74
WS composition – Classification WS composition – Classification (2)(2)
Mandatory & Optional-Composite
Services ◦Mandatory: all subcomponents must
participate to yield a result Example: service that calculates the
averages of stock values for a company.◦Optional: subcomponents are not
obligated to participate for a successful execution. Example: services that include a
subcomponent that is an optimizer.
75
Important issues on WS Important issues on WS compositioncompositionService DiscoveryService DiscoveryService Coordination and Management Uniform Information Exchange
Infrastructure Fault Tolerance and Scalability Adaptiveness ReliabilityReliability & TransactionsTransactions SecuritySecurity Accountability Testing
76
Service DiscoveryService Discovery An efficient discovery structure should be able:
◦ find out all services implementing some functionality (ontology)
◦ semantic level reasoning (discover most appropriate service).
◦ scalable. Most of existing discovery infrastructures use a
central lookup server (Jini, UPnP) Semantic Language: DAML-S, a process modelling
language for computer-interpretable description of services. ◦ AI inspired description logic-based language, built on
top of XML + RDF for well-defined semantics and a set of language constructs and properties.
77
Service DiscoveryService Discovery - DAML- - DAML-SS
Enables automatic Web Service discovery. =automatic location of services with required functionality.
Currently performed manually DAML-S: expressed in computer
interpretable semantic markup.
78
Service Discovery - Example of Service Discovery - Example of DAML-SDAML-S
<daml:Class rdf: ID=”CompositeProcess”><daml:intersectionOf rdf>parseType =
“daml:collection”><daml:Class rdf:about=”#Process”/><daml:Restriction daml:minCardinality=”1”>
<daml:onProperty rdf:resource=”#composedOf”/></daml:Restriction>
</daml:intersectionOf></daml:Class>
<rdf:Property rdf:ID=”composedOf”><rdfs: domain rdf:resource=”#CompositeProcess”/><rdfs: range rdf:resource=”#ControlConstruct”/></rdf:Property>
79
ReliabilityReliability & Transactions& Transactions How we can measure reliability? WS descriptions may lie! Transactions are fundamental to reliable distributed
computing. Traditional transaction systems support ACID
semantics, use a two-phase commit approach: all participating resources are locked until entire transaction is completed. ◦ Only in close environments where transactions are short-
lived ◦ Not on an open environment (flexibility in how it is
attained) MS XLANG: compensating transactions. Split the model into concurrent sub-transactions that
can commit independently (requires compensation over committed sub transactions in case of abortion).
80
SecuritySecurity Basic security: HTTP over SSL Authorisation control.
◦ Existing authorisation control frameworks not applicable to WS (designed for some services e.g. network access control (DIAMETER) or not well designed to access different administrative domains (.NET Passport))
◦ Proposal: generic authorisation control protocol based on SOAP/XML. Supports credential transformation. Need for CA in each domain. It will issue users and
services with certificate and secret key pairs used for user authentication and request signing.
Credentials described in an XML-based language. Authorisation server validates the certificate, credentials etc. If everything is successfully validated, the authorisation server sends back a SOAP response containing the result.
81
Semantic Web ServicesSemantic Web Services
82
Semantic Web Technology
+
Web Service Technology
Semantic Web ServicesSemantic Web Services
=> Semantic Web Services as integrated solution for realizing Vision of Next Generation Web Technologies of the next generation of the Web
• allow machine supported data interpretation• ontologies as data model
automated discovery, selection, composition, and web-based execution of services
83
Semantic Web ServicesSemantic Web Servicesdefine 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)
84
Semantic Web ServicesSemantic Web Services
Usage Process:Publication: Make available the 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 goalMediation: Solve mismatches (data, protocol,
process) among the combined Execution: Invoke services following
programmatic conventions
85
Semantic Web ServicesSemantic 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
86
87
Additional Reading (Semantic Web)
Dieter Fensel, Wolfgang Wahlster, Henry Lieberman, James Hendler (Eds.): “Spinning the Semantic Web: Bringing the World Wide Web to Its Full Potential”, MIT Press, 2002
John Davies, Dieter Fensel & Frank van Harmelen:, “Towards the Semantic WEB – Ontology Driven Knowledge Management”, John Wiley, 2002
Johan Hjelm, “Creating the Semantic Web with RDF”, John Wiley, 2001
Dieter Fensel: “Ontologies: A Silver Bullet for Knowledge Management and Electronic Commerce”, Springer Verlag, 2001
Jeff Pollock and Ralph Hodgson, "Adaptive Information: Improving Business Through Semantic Interoperability, Grid Computing, and Enterprise Integration“, Wiley Computer Publishing, September 2004
Michael C. Daconta, Leo J. Obrst, Kevin T. Smith: “The Semantic Web: A Guide to the Future of XML, Web Services, and Knowledge Management”, John Wiley, 2003
Thomas B. Passin, "Explorer's Guide to the Semantic Web", ISBN 1932394206, June 2004
M. Klein and B. Omelayenko (eds.), “Knowledge Transformation for the Semantic Web”, Vol. 95, Frontiers in Artificial Intelligence and Applications, IOS Press, 2003
87
88
1. Dipanjan Chakraborty, Technical Report TR-CS-01-19: Dynamic Service composition: State-of-the-Art and Research Directions. University of Maryland, Baltimore County, 2001.
2. Anans Rajamam, “Overview of UDDI”, Online, 2001.3. F.Curbera and al, “Unraveling the Web Services Web: An
Introduction to SOAP, WSDL, and UDDI”. IEEE Internet Computing March-April 2002, p.86-93.
4. DAML Service Coalition, DAML-S Semantic Markup for Web Services. Online at http://www.daml.org/services/daml-s/2001/10/daml-s.html, 2001.
5. WSDL Specification, Online at http://www.w3c.org/TR/wsdl.6. Steve Vinoski, Web Services and Dynamic Discovery, Online at
http://www.webservices.org/article.php?sid=389, 2001.7. UDDI Specification, Online at http://uddi.org/.8. Sheila A. McIlaith, Tran Cao Son, Honglei Zeng, Semantic Web
Services, IEEE Intelligent Systems, 20019. Vladimir Tosic, Bernard Pagurek, Babak Esfandiari, Kruti Patel, On
the Management of Composition of Web Services, Carleton University, Canada.
10.Tom Clements, “Overview of SOAP”. Online at: http://dcb.sun.com/practices/webservices/overviews/overview_soap.jsp
11.Deitel,”Web Services: A technical Introduction”, Prentice Hall, 2002.
Additional Reading (Web Services)
88
top related