# Package com.mapinfo.midev.data

Contains the interfaces and some classes used to read data from any of several data sources.

See: Description

Interface Summary
ICreatableDataSource: An interface that provides method to create table.
ICursor: A cursor iterates through the results of a search request.
IDataProvider: The beginning of everything with respect to interacting with a data source.
IDataSource: A datasource is an object that represents (or communicates with) a database management system, a web service, or some other engine or software API that exposes data and data access capabilities.
IDataSourceDefinition: Defines the properties and settings that are necessary to instantiate an `IDataSource` for a specific data provider.
IDataSourceTable: Represents a feature collection whose data is actively managed by some underlying data provider.
IDataSourceTableEvent: Root interface for all `IDataSourceTable` events.
IDataSourceTableListener: Classes that are interested in changes to `IDataSourceTable`'s should implement this interface.
IHasVolatility
ITableDefinition: Defines the properties and settings that are necessary to instantiate an `IDataSourceTable` for a specific data provider.
ITableMetadata: Exposes metadata about a table.

Class Summary
CursorProperties: Properties supported by or requested for data provider cursors.
DataSourceEntityDescription: Describes an entity in a data source.
DataSourceNamespace: Identifies a namespace for a data source.
LegendAggregate: A 'row' in a legend.
LegendMetadata: Metadata that can be used to generate a legend.
TableClosedEvent: Holds information about the `IDataSourceTable` being closed.

Exception Summary
DataAccessException: Data access related runtime exceptions.

## Package com.mapinfo.midev.data Description

Contains the interfaces and some classes used to read data from any of several data sources.

This package defines the classes used to query a database for data. Common database operations like select and count can be accomplished. Any time data is needed for deciding how or what to render in a map image, these classes are necessary. Note that the source of the data may be a file, a database server, or even a web service.

- An `IDataSourceDefinition` is at the start of any request for data. It holds the information necessary to establish a connection with its respective `IDataProvider`, in order to retrieve an `IDatSource` object.
- The `IDataProvider` object is a factory object. Its purpose is to provide `IDataSource` objects dynamically.
- An `IDataSource` object is similar to a database. It provides `IDataSourceTable` objects, which can be asked to return data in an `ICursor`.
- The `ICursor` provides an iterator of `IFeature` objects, which contain the data requested.

NOTE: At this time, the data provider model provides only read operations. Operations for writing, updating, or deleting data are not supported.