-
Notifications
You must be signed in to change notification settings - Fork 0
Extending the LaTiS Data Model
The LaTiS data model is designed to capture the lowest common denominator of all datasets in terms of very general constructs: Scalar, Tuple, and Function. However, there are times that you want to apply higher level semantics to your dataset.
The current LaTiS implementation provides a few specialized types of Scalar to meet common needs:
- Real represents double precision floating point data
- Integer represents long integer data
- Text represents string data
- Time represents [time]
You might imagine creating a subtype of Scalar for Temperature, or a subtype of Tuple for Wind, or a subtype of Function for Spectra. The LaTiS philosophy is to allow such specializations to evolve in the community and live on via survival of the fittest. It is unlikely that an astronomer and a seismologist will agree on what a Spectrum should be. We leave it to the domain specific communities to develop and adopt any such specializations.
This is another key distinction between the LaTiS data model and many others. We don't let domain specific semantics limit usability. Additionally, every specialized type is defined in terms of the basic three components. That means that data created as a "Spectrum" by some community can still be used by others, albeit losing some of the additional semantics, by reducing it to a generic Function.