A Formal Definition of RESTful Semantic Web Services. Antonio Garrote Hernández María N. Moreno García

Similar documents
> Semantic Web Use Cases and Case Studies

Linked Data: Fast, low cost semantic interoperability for health care?

Semantic Web Test

APPLYING KNOWLEDGE BASED AI TO MODERN DATA MANAGEMENT. Mani Keeran, CFA Gi Kim, CFA Preeti Sharma

Ontology Servers and Metadata Vocabulary Repositories

Knowledge-Driven Video Information Retrieval with LOD

a paradigm for the Introduction to Semantic Web Semantic Web Angelica Lo Duca IIT-CNR Linked Open Data:

Reducing Consumer Uncertainty

Open Federated Social Networks Oscar Rodríguez Rocha

Service Integration - A Web of Things Perspective W3C Workshop on Data and Services Integration

Web 2.0, AJAX and RIAs

Semantic Web Systems Web Services Part 2 Jacques Fleuriot School of Informatics

The MEG Metadata Schemas Registry Schemas and Ontologies: building a Semantic Infrastructure for GRIDs and digital libraries Edinburgh, 16 May 2003

Proposal for Implementing Linked Open Data on Libraries Catalogue

RESTful API Design APIs your consumers will love

Multi-agent and Semantic Web Systems: RDF Data Structures

BSC Smart Cities Initiative

Data Governance for the Connected Enterprise

Semantic Web. Semantic Web Services. Morteza Amini. Sharif University of Technology Spring 90-91

Toward Data-driven Programming for RESTful Linked Data

Ontology Matching and the Semantic Web

Sindice Widgets: Lightweight embedding of Semantic Web capabilities into existing user applications.

Semantics for Optimization of the Livestock Farming

Hyperdata: Update APIs for RDF Data Sources (Vision Paper)

model (ontology) and every DRS and CMS server has a well-known address (IP and port).

Semantic Web. Semantic Web Services. Morteza Amini. Sharif University of Technology Fall 94-95

Multi-agent and Semantic Web Systems: Linked Open Data

Extended Identity for Social Networks

Semantic Web Programming

Assisting IoT Projects and Developers in Designing Interoperable Semantic Web of Things Applications

Semantic Web: Core Concepts and Mechanisms. MMI ORR Ontology Registry and Repository

An overview of RDB2RDF techniques and tools

Welcome to INFO216: Advanced Modelling

SEPA SPARQL Event Processing Architecture

Contents. G52IWS: The Semantic Web. The Semantic Web. Semantic web elements. Semantic Web technologies. Semantic Web Services

Linked Data and RDF. COMP60421 Sean Bechhofer

Web Architecture Part 3

Semantic Web and Natural Language Processing

Serving Ireland s Geospatial as Linked Data on the Web

ITARC Stockholm Olle Olsson World Wide Web Consortium (W3C) Swedish Institute of Computer Science (SICS)

ITARC Stockholm Olle Olsson World Wide Web Consortium (W3C) Swedish Institute of Computer Science (SICS)

Semantic Web. Lecture XIII Tools Dieter Fensel and Katharina Siorpaes. Copyright 2008 STI INNSBRUCK

Disruptive Changes of the Technical IT Infrastructure through Engineering 4.0

Role of Social Media and Semantic WEB in Libraries

Index. Callimachus, 112 Contexts and Dependency Injection (CDI), 111 createdefaultmodel() method, 94 CubicWeb, 109 Cypher Query Language (CQL), 188

OVERVIEW OF ETSI M2M RELEASE 1 STAGE 3 API AND RESOURCE USAGE

Semantic Web Knowledge Representation in the Web Context. CS 431 March 24, 2008 Carl Lagoze Cornell University

CONTENTDM METADATA INTO LINKED DATA

Semantic Technologies and CDISC Standards. Frederik Malfait, Information Architect, IMOS Consulting Scott Bahlavooni, Independent

The Semantic Web Revisited. Nigel Shadbolt Tim Berners-Lee Wendy Hall

A distributed network of digital heritage information

Programming the Semantic Web

Europeana update: aspects of the data

The Web Browser Personalization with the Client Side Triplestore. Canon Inc., W3C/MIT: Hitoshi Uchida

E-Learning and Microformats: A Learning Object Harvesting Model and a Sample Application

CHAPTER 1 INTRODUCTION

Unlocking the full potential of location-based services: Linked Data driven Web APIs

Reasoning on Business Processes and Ontologies in a Logic Programming Environment

Linked Data: What Now? Maine Library Association 2017

Enterprise Information Integration using Semantic Web Technologies:

SEMANTIC SOLUTIONS FOR OIL & GAS: ROLES AND RESPONSIBILITIES

ISA Action 1.17: A Reusable INSPIRE Reference Platform (ARE3NA)

Semantics. Matthew J. Graham CACR. Methods of Computational Science Caltech, 2011 May 10. matthew graham

Reducing Consumer Uncertainty Towards a Vocabulary for User-centric Geospatial Metadata

Linked Data Demystified: Practical Efforts to Transform CONTENTdm Metadata for the Linked Data Cloud

On the use of Abstract Workflows to Capture Scientific Process Provenance

Towards Specification and Execution of Linked Systems

Pedigree Management and Assessment Framework (PMAF) Demonstration

Mapping between Digital Identity Ontologies through SISM

Introduction to Linked Data

: Semantic Web (2013 Fall)

STS Infrastructural considerations. Christian Chiarcos

Semantic Web. Sumegha Chaudhry, Satya Prakash Thadani, and Vikram Gupta, Student 1, Student 2, Student 3. ITM University, Gurgaon.

Semantic Web Platform for Personal Information Management

Semantic agents for location-aware service provisioning in mobile networks

New Approach to Graph Databases

COMP9321 Web Application Engineering

COMPUTER AND INFORMATION SCIENCE JENA DB. Group Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

Semantic Web. Tahani Aljehani

COMP9321 Web Application Engineering

geospatial querying ApacheCon Big Data Europe 2015 Budapest, 28/9/2015

Semantic Queries and Mediation in a RESTful Architecture

Etanova Enterprise Solutions

What you have learned so far. Interoperability. Ontology heterogeneity. Being serious about the semantic web

A Semantic Web-Based Approach for Harvesting Multilingual Textual. definitions from Wikipedia to support ICD-11 revision

Linked data and its role in the semantic web. Dave Reynolds, Epimorphics

Oracle Spatial and Graph: Benchmarking a Trillion Edges RDF Graph ORACLE WHITE PAPER NOVEMBER 2016

Towards the Semantic Web

WebGUI & the Semantic Web. William McKee WebGUI Users Conference 2009

A SEMANTIC MATCHMAKER SERVICE ON THE GRID

Semantiska webben DFS/Gbg

IRS-III: A Platform and Infrastructure for Creating WSMO-based Semantic Web Services

Novel System Architectures for Semantic Based Sensor Networks Integraion

ELENA: Creating a Smart Space for Learning. Zoltán Miklós (presenter) Bernd Simon Vienna University of Economics

Semantics in RDF and SPARQL Some Considerations

INF3580/4580 Semantic Technologies Spring 2015

Complex Systems Design &DistributedCalculusandCoordination

Are you afraid of Semantic Web?

Bridging the Gap between Semantic Web and Networked Sensors: A Position Paper

University of Bath. Publication date: Document Version Publisher's PDF, also known as Version of record. Link to publication

Transcription:

A Formal Definition of RESTful Semantic Web Services Antonio Garrote Hernández María N. Moreno García

Outline Motivation Resources and Triple Spaces Resources and Processes RESTful Semantic Resources Example Conclusions and Future Work

Motivation Web development is becoming increasingly API-centric: - Rich Internet Applications - Mobile platforms - Mash-ups, OAuth, Microformats

Motivation Open issues in current web development: - Description of data: graph of social objects - Data interoperability -...

Motivation Semantic Web technologies have the potential to solve some of these issues: - Open world semantics, monotonic reasoning - Description vocabulary (OWL, RDFS) - Data model (RDF, RDFa), query (SPARQL)...

Problem Semantic web adoption in regular web development is almost non existent A pragmatic approach for levering semantic technologies is required RESTful web services can serve as the foundation for such an approach

Proposal A model for RESTful semantic distributed computation A formal definition of the model

Outline Motivation Resources as Triple Spaces Resources and Processes RESTful Semantic Resources Example Conclusions and Future Work

Resources as Triple Spaces Generative Communication (Linda), TS computing [Gelernter, Fensel] Resource: Triple encoded graph stored in shared memory known as triple space Triple space operations: - Data manipulation - coordination primitives

Resources and Triple Spaces GET http://test.com/resource.rdf rd σ = http://test.com/resource

Resources and Triple Spaces Extended triple space operations: - atomic swap operation modeling PUT requests - notify operation as an additional coordination primitive

Resources and Triple Spaces Formalization:

Resources and Triple Spaces Formalization:

Resources and Triple Spaces TS useful for describing RESTful web resources as data manipulation Problems: - Creation, destruction of triple spaces (POST, DELETE operations) - Creation of new names - Blocking triple space operations

Outline Motivation Resources as Triple Spaces Resources as Processes RESTful Semantic Resources Example Conclusions and Future Work

Resources and Processes Pi-Calculus [Milner] HTTP request can be modeled as a message sent from a process (client) to another process (resource) URI can be modeled as a channel between processes The URIs inside the RDF graph returned as a response grants the process access to new communication channels

Resources and Processes POST http://test.com/resources 201 http://test.com/resources/test

Resources and Processes {req,post,data} http://test.com/resources {resp,201,rdf graph} spawn!

Resources and Formalization: Processes

Resources and Formalization: Processes

Resources and Processes uri1 ::= http://test.com/resources uri2 ::= http://test.com/resources/test Ag ::= req(uri1)[post,0,data]. [201, {Uri2,type,resource}]resp(uri1). req(uri2),[get,*,0]. [200,Data]resp(Uri2) Res ::= new uri2 in ([post,0,data]req(uri1).res2(uri2,data)!. resp(uri1)[401,uri2]).res Res2(uri2, D) ::=[post,*,0]req(uri2).resp(uri2)[200,d].res2

Resources and Processes Message passing, channels and processes useful for modeling process view of HTTP computations Problems: - Modeling the state of the resource is less intuitive

Outline Motivation Resources as Triple Spaces Resources as Processes RESTful Semantic Resources Example Conclusions and Future Work

RESTful semantic resources Triple spaces and Pi-calculus are complementary formalisms Combination of both formalisms suitable for describing RESTful distributed computation

RESTful semantic resources Computation takes place in certain computational places - Nodes executing a web services API - A web browser - A mobile phone

RESTful semantic resources Inside each computational place a set of processes are executed and a certain number of triple spaces are shared Communication between processes inside a computational place is tuple space based

RESTful semantic resources TS notify out TS out rd TS out

RESTful semantic resources Certain processes in computational places have an associated URI and process incoming messages according to REST semantics Communication between computational places is message passing based URIs can be transfered between triple spaces in different computational places

RESTful semantic resources TS notify PUT out TS uri2 out GET uri2 POST uri1 rd out TS

RESTful semantic resources RESTful semantic web resource: - Process being executed in a computational place - Associated URI - Receives HTTP messages through URI - Manipulates TS according to REST semantics

RESTful semantic resources Formalization:

Outline Motivation Resources and Triple Spaces Resources and Processes RESTful Semantic Resources Example Conclusions and Future Work

Semantic Bespin status POST Twitter (hrests) GET notification (hrests) TS Rails Backend POST TS Bespin JS app http://github.com/antoniogarrote/semantic_rest

Outline Motivation Resources and Triple Spaces Resources and Processes RESTful Semantic Resources Example Conclusions and Future Work

Conclusions Clear definition of data related and process related aspects of RESTful computations Introduces the notion of computational place as an aggregation of resources or processes with RESTful interfaces Modeling decoupled from actual implementation

Conclusions Benefits: - Composition of services trivially modeled as a sequence of messages in the calculus - It is possible to model complex interaction scenarios triggering blocking TS operations (notify, rdb, outb) as a side effect of a HTTP message

Conclusions Benefits: - Use of semantic metadata offers an uniform model for data shared among resources - Shared operations for querying and manipulating resources - Incremental description of resources

Future work Blocking operations - blocking communication primitives useful for coordination between agents and resources - avoid polling - restricted to triple space operations - extension to the HTTP interface

Future work Type system - Types can be assigned to resources based on the ontology primitives used in the description of the resource - OWL, RDFS, RDF entailment regimes - Importance for the discovery of resources

Future work Implementation - Experimental implementation with blocking operations - hrests, RabbitMQ, OpenSesame, Erlang OTP - http://github.com/antoniogarrote/plaza