A ServiceSpace is assigned a single SPARQL service. The ServiceSpace is a container for ConceptSpaces. For example, a ServiceSpace could be created for each of DBpedia, Freebase and LinkedGeoData.
A ConceptSpace holds configurations for faceted search for a set of concepts. Furthermore, it is a container for configurations of what data to associate with the concept. For example, there may be a ConceptSpace for 'Museums in Freebase'.
These concept's extensions are obtained by evaluation over the ServiceSpace's sparqlService.
A DataSpace, conceptually, allows one specify workflows for retrieving information (attributes) with the concept's extension as a starting point.
For instance there may be DataSpaces for 'The labels and geocoordinates of Museums in Freebase'
Extensions could be
UserSpace -> ProjectSpace -> ServiceSpace ...
Users may have a space in which they can create projects.
Projects would then be composed of service spaces.
If we followed, the eclipse structure, there would also be a WorkSpace between UserSpace and ProjectSpace.
Note that we need to distinguish between logical grouping of items (i.e. folders), and technical structures (such that a ConceptSpace requires a (parent?) ServiceSpace). Or a ConceptSpace needs a sparqlService which is provided by a corresponding ServiceSpace?
At the minimum, we need a project depth of three:
ServiceSpace -> ConceptSpace -> DataSpace
Extensions could be UserSpace -> ProjectSpace -> ServiceSpace ...
Note that we need to distinguish between logical grouping of items (i.e. folders), and technical structures (such that a ConceptSpace requires a (parent?) ServiceSpace). Or a ConceptSpace needs a sparqlService which is provided by a corresponding ServiceSpace?