Введение

Семантический веб-сервис, как и обычные веб-сервисы, является серверным концом клиентско-серверной системы для взаимодействия машины с машиной через Всемирную паутину. Семантические сервисы являются компонентом семантической сети, потому что они используют разметку, которая делает данные машиночитаемыми в детальном и сложном виде (по сравнению с читаемым человеком HTML, который обычно не легко "понимается" компьютерными программами).

Проблема, решаемая Семантическими веб-сервисами

Основные стандарты XML для взаимодействия веб-сервисов определяют только синтаксическую взаимодействие, а не семантическое значение сообщений. Например, язык описания веб-сервисов (WSDL) может указывать операции, доступные через веб-сервис, и структуру отправленных и полученных данных, но не может указывать семантическое значение данных или семантические ограничения на данные. Это требует от программистов достижения конкретных соглашений о взаимодействии веб-сервисов и затрудняет автоматическое составление веб-сервисов. Семантические веб-сервисы построены вокруг универсальных стандартов для обмена семантическими данными, что позволяет программистам легко объединять данные из разных источников и сервисов, не теряя значения. Веб-сервисы могут быть активированы "за кулисами", когда веб-браузер делает запрос веб-серверу, который затем использует различные веб-сервисы для построения более сложного ответа, чем он мог бы сделать самостоятельно. Семантические веб-сервисы также могут использоваться автоматическими программами, которые работают без каких-либо связей с веб-браузером. Семантическая платформа веб-сервисов, которая использует OWL (Web Ontology Language), чтобы позволить поставщикам данных и услуг семантически описывать свои ресурсы с использованием сторонних онтологий, называется SSWAP: Simple Semantic Web Architecture and Protocol. SSWAP устанавливает легкий протокол (несколько классов и предикатов OWL; см. Протокол SSWAP) и концепцию "канонического графа", позволяющего провайдерам логически описывать услугу. Служба по существу является преобразованием некоторого, возможно, нулевого, ввода (или субъекта) в какой-то, возможно, нулевой, выход (или объект). Услуги семантически обнаруживаются на основе их иерархии субсупции, а также их типов входных и выходных данных. SADI (Semantic Automated Discovery and Integration) - это семантическая веб-сервисная инициатива, которая состоит из набора методов проектирования для публикации семантических веб-сервисов, которые минимизируют использование нестандартных протоколов и структур сообщений. Услуги SADI используют данные в формате RDF Resource Description Framework, где входные и выходные данные должны быть экземплярами (OWL Individuals of) класса входа и выхода, определенного в OWL DL. В отличие от канонических веб-сервисов, SADI-сервисы не используют протокол обмена сообщениями SOAP, и в отличие от SSWAP, SADI-сервисы не имеют специального проекта для обмена сообщениями; услуги вызываются путем передачи данных RDF-инстанции в конечную точку службы через HTTP POST, а мультиплексирование достигается путем отправки более одного OWL-индивидуала в вызов HTTP POST. SADI налагает единственное ограничение на поведение Сервиса: URI выходной части должна быть такой же, как URI соответствующей входной части. На практике это приводит к созданию служб, которые создают семантические связи между входом и выходом службы. Таким образом, цепочка услуг SADI вместе в рабочий процесс приводит к непрерывному графику связанных данных.

Хореография против оркестрации

Хореография связана с описанием внешнего видимого поведения сервисов, как набора обменов сообщениями, опционально следующих модели обмена сообщениями (MEP), с точки зрения потребителя функциональности. Оркестрация описывает, как несколько служб, две или более, сотрудничают и общаются с целью достижения общей цели.