A semantic web service, like conventional
web services, is the
server
Server may refer to:
Computing
*Server (computing), a computer program or a device that provides functionality for other programs or devices, called clients
Role
* Waiting staff, those who work at a restaurant or a bar attending customers and su ...
end of a
client–server system for machine-to-machine interaction via the
World Wide Web
The World Wide Web (WWW), commonly known as the Web, is an information system enabling documents and other web resources to be accessed over the Internet.
Documents and downloadable media are made available to the network through web se ...
. Semantic services are a component of the
semantic web because they use markup which makes data machine-readable in a detailed and sophisticated way (as compared with human-readable
HTML
The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
which is usually not easily "understood" by computer programs).
The problem addressed by Semantic Web Services
The mainstream
XML
Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. ...
standards for interoperation of web services specify only
syntactic
In linguistics, syntax () is the study of how words and morphemes combine to form larger units such as phrases and sentences. Central concerns of syntax include word order, grammatical relations, hierarchical sentence structure ( constituenc ...
interoperability, not the
semantic
Semantics (from grc, σημαντικός ''sēmantikós'', "significant") is the study of reference, meaning, or truth. The term can be used to refer to subfields of several distinct disciplines, including philosophy, linguistics and comput ...
meaning of messages. For example,
Web Services Description Language
The Web Services Description Language (WSDL ) is an XML-based interface description language that is used for describing the functionality offered by a web service. The acronym is also used for any specific WSDL description of a web service (also ...
(WSDL) can specify the operations available through a web service and the structure of data sent and received but cannot specify semantic meaning of the data or semantic constraints on the data. This requires programmers to reach specific agreements on the interaction of web services and makes automatic
web service composition
Web most often refers to:
* Spider web, a silken structure created by the animal
* World Wide Web or the Web, an Internet-based hypertext system
Web, WEB, or the Web may also refer to:
Computing
* WEB, a literate programming system created b ...
difficult.
Semantic web services are built around universal standards for the interchange of semantic data, which makes it easy for programmers to combine data from different sources and services without losing meaning. Web services can be activated "behind the scenes" when a web browser makes a request to a web server, which then uses various web services to construct a more sophisticated reply than it would have been able to do on its own. Semantic web services can also be used by automatic programs that run without any connection to a web browser.
A semantic-web-services platform that uses OWL (
Web Ontology Language
The Web Ontology Language (OWL) is a family of knowledge representation languages for authoring ontologies. Ontologies are a formal way to describe taxonomies and classification networks, essentially defining the structure of knowledge for vario ...
) to allow data and service providers to semantically describe their resources using third-party ontologies is
SSWAP: Simple Semantic Web Architecture and Protocol.
[
] SSWAP establishes a lightweight protocol (few OWL classes and predicates; see th
SSWAP Protocol and the concept of a "canonical graph" to enable providers to logically describe a service. A service is essentially a transformation of some, possibly null, input (or subject) to some, possibly null, output (or object). Services are semantically discoverable based on their subsumption hierarchies as well as their input and output data types.
SADI Saadi, Sadī, Sadi, or SADI may refer to:
People
* Sadi (name)
* Saadi dynasty, a dynasty of Morocco
Places
* Sədi, village in Azerbaijan
* Sadi, East Azerbaijan, a village in Iran
* Sadi, Marand, a village in Iran
* Sadi, Kerman, a village in ...
[
] (Semantic Automated Discovery and Integration) is a semantic-web-service initiative that consists of a set of design-practices for semantic-web-service publishing that minimizes the use of non-standard protocols and message structures. SADI Services natively consume data in RDF
Resource Description Framework The Resource Description Framework (RDF) is a World Wide Web Consortium (W3C) standard originally designed as a data model for metadata. It has come to be used as a general method for description and exchange of graph data. RDF provides a variety of ...
format, where input and output data must be instances of (
OWL Individuals of) input and output Classes defined in OWL-DL. Unlike canonical Web Services, SADI Services do not use the
SOAP
Soap is a salt of a fatty acid used in a variety of cleansing and lubricating products. In a domestic setting, soaps are surfactants usually used for washing, bathing, and other types of housekeeping. In industrial settings, soaps are used ...
messaging protocol, and unlike SSWAP, SADI services have no project-specific messaging scaffold; services are invoked by passing RDF instance data to the Service endpoint through HTTP POST, and multiplexing is achieved by sending more than one OWL Individual in the HTTP POST invocation. SADI imposes a single constraint on the behavior of the Service: that the URI of the output individual must be the same as the URI of the corresponding input individual. In practice, this results in Services that create semantic linkages between the input and output of the service. Thus, chaining SADI services together into a workflow results in an uninterrupted
Linked Data
In computing, linked data (often capitalized as Linked Data) is structured data which is interlinked with other data so it becomes more useful through semantic queries. It builds upon standard Web technologies such as HTTP, RDF and URIs, but ...
graph.
Choreography vs. orchestration
''Choreography'' is concerned with describing the external visible behavior of services, as a set of message exchanges optionally following a
Message Exchange Pattern
In software architecture, a messaging pattern is an architectural pattern which describes how two different parts of an application, or different systems connect and communicate with each other. There are many aspects to the concept of messaging w ...
(MEP), from the functionality consumer point of view.
''Orchestration'' deals with describing how a number of services, two or more, cooperate and communicate with the aim of achieving a common goal.
Semantic Web service frameworks
*
OWL-S OWL-S is an ontology built on top of Web Ontology Language (OWL) by the DARPA DAML program.
It replaces the former DAML-S ontology. "OWL-S is an ontology, within the OWL-based framework of the Semantic Web, for describing Semantic Web Services. ...
*
WSMO
*METEOR-S
*
BioMOBY BioMOBY is a registry of web services used in bioinformatics. It allows interoperability between biological data hosts and analytical services by annotating services with terms taken from standard ontologies. BioMOBY is released under the Artistic ...
(
Bioinformatics
Bioinformatics () is an interdisciplinary field that develops methods and software tools for understanding biological data, in particular when the data sets are large and complex. As an interdisciplinary field of science, bioinformatics combin ...
)
*
SSWAP
*
SADI Saadi, Sadī, Sadi, or SADI may refer to:
People
* Sadi (name)
* Saadi dynasty, a dynasty of Morocco
Places
* Sədi, village in Azerbaijan
* Sadi, East Azerbaijan, a village in Iran
* Sadi, Marand, a village in Iran
* Sadi, Kerman, a village in ...
References
*
*
*
*
*
*
*
{{Semantic Web
Semantic Web
Web services