public interface IQueryableDataSource
{
string Id { get; }
IEnumerable<FeatureType> FeatureTypes { get; }
void Query(QueryParameters parameters, string startingId, Action<QueryResult> callback);
void Identify(DataContracts.Geometry geometry, Action<IDictionary<FeatureType, ICollection<Feature>>> callback);
void Find(FindParameters parameters, Action<ICollection<QueryResult>> callback);
}