internet engineering course
DESCRIPTION
Internet Engineering Course. Semantic Web, Web Services, Semantic Web Services. Agenda. Vision 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 - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/1.jpg)
Internet Engineering Internet Engineering CourseCourse
Semantic Web,Web Services,Semantic Web Services
1
![Page 2: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/2.jpg)
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
![Page 3: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/3.jpg)
Static
◦ 500 million users ◦ more than 3 billion pages
WWWURI, HTML, HTTP
Vision of Next Generation Vision of Next Generation Web TechnologiesWeb Technologies
3
![Page 4: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/4.jpg)
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
![Page 5: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/5.jpg)
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
![Page 6: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/6.jpg)
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
![Page 7: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/7.jpg)
7
Semantic WebSemantic Web
![Page 8: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/8.jpg)
8
Semantic Web OutlineSemantic Web Outline
1. Today’s Web2. The Semantic Web Impact3. Semantic Web Technologies4. A Layered Approach
![Page 9: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/9.jpg)
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
![Page 10: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/10.jpg)
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
![Page 11: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/11.jpg)
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
![Page 12: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/12.jpg)
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, . . .
![Page 13: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/13.jpg)
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
![Page 14: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/14.jpg)
14
Semantic Web OutlineSemantic Web Outline
1. Today’s Web2. The Semantic Web Impact3. Semantic Web Technologies4. A Layered Approach
![Page 15: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/15.jpg)
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)
![Page 16: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/16.jpg)
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
![Page 17: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/17.jpg)
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.
![Page 18: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/18.jpg)
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
![Page 19: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/19.jpg)
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
![Page 20: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/20.jpg)
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
![Page 21: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/21.jpg)
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
![Page 22: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/22.jpg)
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
![Page 23: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/23.jpg)
23
Semantic Web OutlineSemantic Web Outline
1. Today’s Web2. The Semantic Web Impact3. Semantic Web Technologies4. A Layered Approach
![Page 24: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/24.jpg)
24
Semantic Web Semantic Web TechnologiesTechnologiesExplicit MetadataOntologiesLogic and InferenceAgents
![Page 25: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/25.jpg)
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
![Page 26: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/26.jpg)
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.
![Page 27: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/27.jpg)
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.
![Page 28: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/28.jpg)
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>
![Page 29: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/29.jpg)
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
![Page 30: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/30.jpg)
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
![Page 31: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/31.jpg)
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
![Page 32: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/32.jpg)
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
![Page 33: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/33.jpg)
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
![Page 34: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/34.jpg)
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
![Page 35: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/35.jpg)
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.
![Page 36: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/36.jpg)
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
![Page 37: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/37.jpg)
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)
![Page 38: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/38.jpg)
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
![Page 39: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/39.jpg)
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)
![Page 40: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/40.jpg)
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
![Page 41: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/41.jpg)
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
![Page 42: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/42.jpg)
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
![Page 43: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/43.jpg)
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
![Page 44: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/44.jpg)
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
![Page 45: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/45.jpg)
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
![Page 46: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/46.jpg)
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.
![Page 47: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/47.jpg)
47
Semantic Web OutlineSemantic Web Outline
1. Today’s Web2. The Semantic Web Impact3. Semantic Web Technologies4. A Layered Approach
![Page 48: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/48.jpg)
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
![Page 49: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/49.jpg)
49
The Semantic Web Layer The Semantic Web Layer TowerTower
![Page 50: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/50.jpg)
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
![Page 51: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/51.jpg)
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
….
![Page 52: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/52.jpg)
Web ServicesWeb Services
52
![Page 53: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/53.jpg)
AgendaAgendaWhat are Web Services?Why Web Services?Enabling Technologies?What is Web Service
Composition?Main Issues concerning the
composition?
53
![Page 54: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/54.jpg)
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
![Page 55: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/55.jpg)
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
![Page 56: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/56.jpg)
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
![Page 57: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/57.jpg)
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
![Page 58: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/58.jpg)
Web Services ArchitectureWeb Services ArchitectureComponents
◦Service Providers◦Service Brokers◦Service Requestors
Operations◦Publish / Unpublish◦Find◦Bind
58
![Page 59: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/59.jpg)
59
![Page 60: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/60.jpg)
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
![Page 61: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/61.jpg)
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
![Page 62: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/62.jpg)
<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:[email protected]</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
![Page 63: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/63.jpg)
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
![Page 64: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/64.jpg)
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
![Page 65: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/65.jpg)
<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
![Page 66: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/66.jpg)
WSDLWSDLIDL of Web ServicesXML format developed by IBM &
MS.Provides two types of information
◦Abstract interface: Application-level service description
◦Protocol dependent details
66
![Page 67: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/67.jpg)
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
![Page 68: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/68.jpg)
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
![Page 69: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/69.jpg)
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
![Page 70: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/70.jpg)
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
![Page 71: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/71.jpg)
UDDIUDDIGlobal business registryRoot under www.uddi.orgThree types of information
◦White pages◦Yellow pages◦Green pages
71
![Page 72: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/72.jpg)
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
![Page 73: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/73.jpg)
Web Service CompositionWeb Service Composition
Definition: Technique of composing the functionalities of relatively simpler services to produce a ‘meaningful’ arbitrarily complex application.
73
![Page 74: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/74.jpg)
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
![Page 75: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/75.jpg)
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
![Page 76: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/76.jpg)
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
![Page 77: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/77.jpg)
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
![Page 78: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/78.jpg)
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
![Page 79: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/79.jpg)
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
![Page 80: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/80.jpg)
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
![Page 81: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/81.jpg)
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
![Page 82: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/82.jpg)
Semantic Web ServicesSemantic Web Services
82
![Page 83: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/83.jpg)
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
![Page 84: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/84.jpg)
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
![Page 85: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/85.jpg)
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
![Page 86: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/86.jpg)
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
![Page 87: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/87.jpg)
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
![Page 88: Internet Engineering Course](https://reader035.vdocuments.mx/reader035/viewer/2022062723/56813c47550346895da5c252/html5/thumbnails/88.jpg)
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