| DataSource | 
 Represents a location of the model data sources to build models. 
 | 
| DataSourceListener | 
 Receives notifications about external changes to the data source. 
 | 
| FindUsagesParticipant | 
 Effective (usually index-based) implementation of find usages routines. 
 | 
| Memento | 
 Serves as a storage abstraction to persist configuration information for model roots or other elements
 between sessions in a generic way. 
 | 
| ModelFactory | 
 Represents a data source loading/saving/upgrading strategy. 
 | 
| ModelFactoryType | 
 Serves as identifier in the ModelFactoryRegistry. 
 | 
| ModelLoadingOption | 
 Marker interface for the model creation/loading option 
 | 
| ModelRoot | 
 Represents a logically connected group of models that come from a related physical origin, such as a file or a directory. 
 | 
| ModelRootContext | 
 Serves as a context when the model root is created via ModelRootFactory#create(ModelRootContext) 
 | 
| ModelRootFactory | 
 Factories which create model roots. 
 | 
| MultiStreamDataSource | 
 A data source with multiple input streams, each identified by a unique name. 
 | 
| MultiStreamDataSourceListener | 
 Gets notified whenever one or more streams (files) get changed by an external event. 
 | 
| NavigationParticipant | 
 Effective (usually index-based) builders of Go to Root/Class/Symbol/etc. 
 | 
| NavigationParticipant.NavigationTarget | 
 The implementer must correctly define equals() and hashCode() for implementations 
 | 
| SModelIdFactory | 
 Factories that create SModelId. 
 | 
| SNodeIdFactory | 
 Factories that create SNodeId. 
 | 
| StreamDataSource | 
 A data source with a single input stream. 
 |