JUCS - Journal of Universal Computer Science 23(9): 808-844, doi: 10.3217/jucs-023-09-0808
RESTful Services and Web-OS Middleware: a Formal Specification Approach
expand article infoMario Bravetti
‡ University of Bologna and FOCUS, INRIA, Bologna, Italy
Open Access
Abstract
Web Operating Systems can be seen as an extension of traditional Operating Systems where the addresses used to manage files and execute programs (via the basic load/execution mechanism) are extended from local filesystem path-names to URLs. A first consequence is that, similarly as for traditional web technologies, executing a program at a given URL can be done in two modalities: either the execution is performed client-side at the invoking machine (and relative URL addressing in the executed program set to refer to the invoked URL) or it is performed server-side at the machine addressed by the invoked URL (as, e.g., for a web service). Moreover in this context, user identification for access to programs and files and workow-based composition of service programs is naturally based on token/session-like mechanisms. We propose a middleware based on client-server protocols and on a set primitives, for managing files/resources and executing programs (in the form of client-side/server-side components/services) in Web Operating Systems, based on an extension of the REST architecture. In order to provide an unambiguous specification, we formally define the semantics of such middleware by first introducing a process algebra for standard REST and then extending it to the whole middleware.
Keywords
Web services, Web operating systems, process algebra