While TensorSpace is common for rectangular domains, AbstractProductSpace allows for more complex multivariate bases where the basis functions in one dimension depend on the index of another dimension (e.g., spherical harmonics).
To determine the basis used in a specific dimension of an AbstractProductSpace, use the columnspace(space, dimension) function. This is useful when the basis is interlaced but not a simple Cartesian product of identical 1D bases.
# Example concept: retrieving the basis for a specific dimension
columnspace(myproductspace, 1)
columnspace(myproductspace, 2)