The role of the INMIDIO interoperable middleware for service discovery and interaction is to identify the discovery and interaction middleware protocols that execute on the network and to translate the incoming/outgoing messages of one protocol into messages of another, target protocol. The system parses the incoming/outgoing message and, after having interpreted the semantics of the message, it generates a list of semantic events and uses this list to reconstruct a message for the target protocol, matching the semantics of the original message.

The INMIDIO middleware acts in a transparent way with regard to discovery and interaction middleware protocols and with regard to services running on top of them. The service discovery protocols supported by the INMIDIO prototype are UPnP, SLP and WS-Discovery, while the supported service interaction protocols are SOAP and RMI.


The INMIDIO middleware prototype is a based on the C language and uses the following software:

  • The nanohttp/libcsoap library (available under LGPL license)
  • The Kazlib library (available under free license)


  • David Bromberg
  • Daniele Sacchetti
  • Val√©rie Issarny
  • Nikolaos Georrgants

Supporting Grant

  • IST Amigo -- Ambient Intelligence for the networked home environment

Related Research Project


The INMIDIO middleware is an open-source software freely distributed under the terms of the GNU Lesser Public License (LGPL).

  • INMIDIO Middleware User Guide (PDF)
  • INMIDIO Middleware Software Developer Guide (PDF)
  • INMIDIO Middleware Presentation (PPT)
  • INMIDIO source code (ZIP, 1.7MB)
  • Samples file (ZIP, 4MB)