Open Services for Lifecycle Collaboration

Introduction

Open Services for Lifecycle Collaboration (OSLC) consists of a Hypermedia API standard and RDF-based specifications for data interoperability.

A Standardized Web API with OSLC

Hypermedia API

Hypermedia is experienced every day by humans accessing HTML-based web pages on the Web. The idea of hypermedia is to allow clients to discover additional content on the Web through links embedded within a Web resource such as a Web page. By hopping from page to page, humans can discover the Web without having to know in advance the URLs of every page they want to visit.

The same principle of hypermedia can also be applied to REST APIs. Clients accessing machine-readable content from REST APIs would also like to discover all available resources from a REST API without needing to know in advance all URLs of Web services and resources made available by that REST API.

For example, a client only needs to know the URL of the API entry point resource to discover all other resources through links embedded in the first top-level resource. The links can be “passive” links referring to other resources or “active” links allowing the client to change the state of resources.

Hypermedia API Standards

Several Hypermedia API standards exist:

  • OSLC
  • W3C Linked Data Platform
  • W3C Hydra
  • smartAPI
  • OData

Hypermedia API standards are not to be confounded with REST API description languages such as OpenAPI Specification, RAML, RSDL, API Blueprint

OSLC Core Specification

The OSLC Core Specification is a Hypermedia API standard which has been mostly adopted within the software and systems engineering domains.

OSLC Core concepts and relationships
OSLC Core concepts and relationships

OSLC Core specification also covers following concepts:

  • Delegated dialogs for improved UI
  • Response Information (such as for resource paging, or for errors)
  • Selective Property Values
  • Reuse of existing domain-specific specifications (e.g. Dublin Core)

OSLC Domain-Specific Specifications

REST APIs conforming to OSLC will represent data in machine-readable format RDF.

OSLC domain-specific specifications define the equivalent of schemas in RDF for enabling data interoperability. OSLC domain-specific specifications consist of RDF vocabularies and OSLC resource shapes.

RDF vocabularies are used to describe standardized resource types and properties. OSLC resource shapes are used to define constraints such as multiplicity constraints on properties of specific resource types.

Current OSLC domain-specific specifications cover mostly software and systems engineering concepts. For example, there is the OSLC Requirements Management Specification.

Talk To Us