Pitney Bowes MapXtreme User Manual
Page 496

Appendix D: Extensible Data Providers
Getting Started
MapXtreme v7.1
503
Developer Guide
to see how we have implemented a basic data provider and the
which is a full featured data provider installed with source code with the
MapXtreme samples.
We also recommend that you study the optional building blocks provided in the SDK to learn what
has already been implemented for you. See
Optional Building Blocks: Base Classes, Helpers
.
One of the first steps to creating a data provider is to determine if your data provider has a data
source. Not all data providers have or require this type of model and may be only table-based. A
data source is any service or database that you communicate with to access potentially multiple sets
of features (or tables) through the same connection. Database servers are always exposed as data
sources while the tables at the database are exposed as tables. A WFS server would be modeled as
a data source while the FeatureTypes that the WFS server exposes would be modeled as tables. An
ADO.NET DataSet could be exposed as a data source while the DataTables it contains would be
exposed as tables. An Excel spreadsheet might be exposed as a data source with selection ranges
exposed as various tables. If you have a more simple data model such as an ASCII text file or some
other file format that can only contain a single set of features, then you probably don't need a
datasource and can simply model your data provider with only a table model. Your data may be very
complex and still not require a data source model. For example, some file-based data formats may
store features split across multiple files, may broken out by state or province or according to some
other rules. This would still be a table-based data provider and there would be no need for a
datasource.
Where do I find more detailed help?
The interfaces that comprise the Extensible Data Provider architecture are defined in the
MapInfo.Data.Provider and MapInfo.Data namespaces. We recommend that you familiarize yourself
with the MapInfo.Data.Provider namespace in the MapXtreme Reference Guide.