The InterfaceDefinition is the definition of the interface to the Service at the definition level for a Module. The interface is different depending if the module provides the Service or subscribe to the Service.
A Service definition will have as many interface definitions as it has providers or subscribers in the framework.
The runtime elements are those which handle the runtime. They comprise:
The Framework
The Services
The Services instances, which are the implementations of a Service on a Module. Typically, the same Service will have a different instance on a Module which is a provider of this Service or on a Module which is a subscriber of this Service
The Applications
The Modules
Note that you can always access the associated definition element for any runtime element. For example, for a Module, the Module.getDefinition() return the associated Module definition.
Framework
The Framework is the top-level element of the architecture at the runtime level.
The ServiceInstance is the associated endpoint of the Service on a Module. Typically, the same Service will have a different instance on a Module which is a provider of this Service or on a Module which is a subscriber of this Service. A Service will have as many Service instances as it has providers or subscribers in the framework.