iServe
Where Linked Data Meets Services
 
  • News

    • New Research – Want to contribute?

      We have lately been focussing much on automating the discovery and analysis of services on the Web (obviously with a […]

    • Web API Identification Support

      There is quite some time that we have not reported any news but this does not mean that work on […]

    • iServe’s code released

      After quite some time extending and reengineering iServe, we have finally released its code as open source. The project is […]

  • iServe Team

    Carlos Pedrinaci [Main Contact]
    Dong Liu
    Jacek Kopecky
    Luca Panziera

    iServe Contributors

    John Domingue
    Maria Maleshkova
    Dave Lambert
    Pablo Rodriguez Mier
    Massimiliano Boschelli

    Funded By

    SOA4All
    VPH-Share
    COMPOSE

    Software

    Getting and Using iServe

    iServe is both available as a pre-deployed platform, which you can directly use within your applications for publishing and discovering services, and as standalone open source software that you can tweak and deploy yourself. Indeed we encourage everybody to share their enhancements back the same way we are sharing the platform, so that we can jointly get a great software and service for the community.

    You shall find herein the current public deployments we are providing, their capabilities and details on how to obtain the code.

    Deployments

    We currently have two main deployments:

    • Main iServe deployment which is based on an old yet stable version of the software. You can directly use this version from your application through its Web API as we won’t be updating it very frequently.
    • iServe development deployment which uses the most recent version of the software and can thus introduce some changes in the conceptual model and the API.

    Accessing iServe

    Linked Data

    Once published in iServe, the service descriptions are exposed following Linked Data principles. In particular, each service description is given a unique and resolvable HTTP URI exposing service descriptions in both HTML and RDF through content negotiation. Additionally, the entire registry can be queried through a SPARQL endpoint.

    Both the stable and the development deployments provide this feature. The underlying conceptual model used, the Minimal Service Model, is evolving a bit based on the use and requirements we are gathering. Only the model of the development deployment changes somewhat frequently, so if you want to minimise the impact on your application you may prefer to use the stable deployment. Eventually, as soon as the extensions are considered stable we shall upgrade the stable server.

    The SPARQL endpoint of both servers can be found at:

    • Stable server: http://iserve.kmi.open.ac.uk/data/execute-query
    • Development server: http://iserve-dev.kmi.open.ac.uk/iserve/data/execute-query

    RESTful API

    Programmatic access to iServe’s functionality is provided through a RESTful API. The API allows applications to Create, Read, Update, and Delete services, as well as it allows accessing the discovery algorithms implemented. The RESTful API is also evolving, therefore the latest features will be available on iServe-dev but the interface may well change over time.

    The documentation of the API can be found on the Wiki, including the CRUD API, and the Discovery API.

    Graphical User Interface

    iServe includes a GWT Web-based user interface giving access to the content of the service registry and allowing users to submit new services, search for them, add ratings and comments, etc.

    You can access both repositories at the following URLs:

    Service Languages and Ontologies Supported

    Support to different formalisms is provided through an extensible set of import plugins which transform these into the core conceptual model used by iServe. In particular iServe currently supports:

    • WSDL v1 and v2
    • SAWSDL
    • OWL-S v1.1
    • MicroWSMO
    • WSMO-Lite

    Discovery Algorithms Implemented

    iServe provides an extensible plugin-based discovery engine which allows one to introduce new algorithms easily and combine them with existing ones on the fly. Discovery results are exposed using diverse serialisation formats (e.g., ATOM, JSON) and can be combined through simple set operations like Union, Intersection, and Substraction.

    • Currently iServe provides the following discovery plugins:
    • Keywords similarity
    • Functional Classifications with RDFS reasoning
    • SKOS categorisations
    • Inputs and Outputs with RDFS reasoning

    Getting iServe

    Sources

    iServe is an open source project hosted at GitHub: https://github.com/kmi/iserve