THE MAKE UP OF SEDRIS™
SEDRIS is fundamentally about two key aspects: (1) representation of environmental data, and (2) the interchange of environmental data sets.
To achieve these representation and interchange objectives, SEDRIS relies on its five core technology components. These are the SEDRIS Data Representation Model (SDRM), the Environmental Data Coding Specification (EDCS), the Spatial Reference Model (SRM), the SEDRIS interface specification (API), and the SEDRIS Transmittal Format (STF).
Three of the core technology components of SEDRIS (SDRM, EDCS, and SRM) are used to achieve the first aspect of SEDRIS. The combination of these three core components provides the mechanism for description of environmental data. In some respect, this capability within SEDRIS can be viewed as analogous to a language for describing data about the environment. The SDRM, the EDCS, and the SRM enable us to capture and communicate meaning and semantics about environmental data.
The second aspect of SEDRIS builds upon the first, and provides the ability to interchange and share environmental data. We know from practice that it is not enough to be able to clearly represent or describe the data. We must also be able to share such data with others in an efficient manner. The SEDRIS API and the STF are the enabling technologies of the second aspect of SEDRIS.
THE SEDRIS DATA REPRESENTATION MODEL
Through the use of the data representation model one can describe and articulate one's environmental data clearly, while at the same time using the same representation model to understand others' data unambiguously. The SDRM is based on an object-oriented data representation model that provides not only a clear description of data from all environmental domains - space, atmosphere, terrain, and ocean - through a single schema, but also includes the logical relationships between the data elements. This allows for polymorphic representation of the same data, which means the same environmental “thing” can be represented through various means. In addition, the SDRM permits the “association” of these various representations, which indicate the connectivity of the alternate representation of the same “thing”. The SDRM also ensures the syntax and the structural semantics of the data are fully expressed and correctly understood by users.
The SDRM is at the heart of SEDRIS technologies, and is developed and maintained based on object oriented techniques using the UML (software) object modeling language. It consists of more than 350 object-oriented classes that allow the description of any environmental data, regardless of resolution, domain, or density.
The combination of these classes and their relationships provides a rich, powerful, and expressive schema that can be thought of as the grammar of a language for describing environmental data.
THE ENVIRONMENTAL DATA CODING SPECIFICATION
EDCS provides the means for classification (naming, labeling, identification) of environmental objects as well as articulating their attributes (characteristics) based on a known and agreed upon convention. The foundation of this convention started from the FACC standard, but it has since changed substantially; although many of the FACC definitions and codes are still utilized and a mapping between EDCS and FACC is maintained. Since the nature and the types of data that SEDRIS needs to represent are broader than the cartographic domain, the FACC codes constitute only a sub-portion of the EDCS. Today, the EDCS schema goes far beyond its FACC start, and has been expanded both in breadth and depth to allow for additional (new) codes, as well as inclusion of the ocean, atmosphere, and space domains by incorporating classification and attribute codes from standards from those domains.
EDCS unifies the characterization of environmental “things” regardless of the means by which such “things” are represented (e.g. as surfaces, features, point samples, or others) or whether they are cast as individual primitives or structured collections.
This allows a clear separation between the SDRM and EDCS, where EDCS can act as the dictionary to the language and complement the grammar (the SDRM).
Fundamentally, EDCS provides answers to three types of questions. What something is, what are its characteristics, and what units are used to measure those characteristics. These questions are independent of any data model, and as a result EDCS is designed as a standalone technology and can be utilized, independent of the rest of SEDRIS technologies, any time the semantics of identification and characteristics of environmental data are called for.
THE SPATIAL REFERENCE MODEL
The most basic representation of anything environmental is its location. Without the ability to clearly specify the position of an object in reference to a designated origin and in reference to other objects, very little else can be said about the whole environment that can be shared with others.
To represent a location in space an infinite number of coordinate systems and reference frames can be described. And each of these would be a valid representation. In practice, spatial reference frames are designed to meet specific goals or needs. Some are better tailored for use in specific applications, or have properties that are of value to the users. There is no rationale that dictates everyone must use one or a limited set of spatial reference frames. Different communities and sub-communities use a variety of systems in order to maximize efficiency, ease of use, mathematical properties, reduction in cost, or any number of domain-specific objectives. The key is to provide a model that can unify these different location representations, and allow for clear mapping and transformation of one to others.
The SRM captures and unifies the spatial models used by SEDRIS, plus the many others that are not currently used but can be easily added. These models include inertial, quasi-inertial, geo-based, and non-geo-based (purely arbitrary Cartesian) systems. And through its coordinate conversion library (a component of the SEDRIS API libraries), the associated SRM software provides a fast, accurate, and efficient means to transform coordinates from one frame of reference to another.
SRM provides a unifying mechanism for specification and inclusion of any spatial reference frame and coordinate system. And its algorithms are designed to retain a high degree of accuracy during transformation and conversion operations (1mm accuracy).
Coordinate conversions and transformations must not only be accurate, but also fast. When dealing with millions of objects within even small environmental data sets, it is critical that operations during data extraction or insertion be very efficient without introducing any errors or loss in the data stream. For these reasons the implementation of the SRM is highly optimized and achieves very high performance measures, without compromising accuracy in its algorithms.
Currently the SRM supports some 151 spatial reference frames, in addition to a large set of object reference models (Earth reference models such as ellipsoids).
Similar to EDCS, SRM is recognized and designed as a standalone technology. SEDRIS depends on the SRM, but the SRM can be used in a variety of other domains and applications.
THE SEDRIS INTERFACE SPECIFICATION AND THE SEDRIS TRANSMITTAL FORMAT
The interchange of data must take into account platform independence, practical efficiency (both in storage and processing), and ease in software development (lowering the barrier to entry).
The SEDRIS interface specification (commonly known as API or the application programmer’s interface) and the STF (the SEDRIS format) are designed to achieve these goals. The API and STF, along with the associated tools and utilities, play the primary role in the data interchange, while being semantically-coupled to the data representation model.
The API is the encapsulation of the functionality needed to produce and consume SEDRIS transmittals. It does this by de-coupling the user’s application from the transmittal data structures, and by providing a consistent interface between a user’s application and the SEDRIS transmittals. Its interface is bound by using ANSI C (for maximum portability), and is implemented in C++. The SEDRIS provided reference implementation of the interface specification is designed to be portable and run on multiple computing platforms, and is currently supported on a variety of platform and operating system combinations including Unix (SUN, SGI, IBM), Win9x and NT (Intel-based machines), and Linux.
The STF is a platform-independent format designed to support the full capabilities of the SDRM. And similar to other SEDRIS technology components, STF is designed to de-couple the media-based format requirements from the API or the SDRM. The supporting STF software (part of the SEDRIS API) adapts to the platform’s word order (little or big endian), and frees the users from worries regarding platform dependencies. STF is a file-based storage system and is designed to be as space efficient as possible to reduce storage needs.
All five SEDRIS technology components comprise the total system and are currently employed in a number of applications dealing with data conversion, data analysis, visualization, and a variety of others, and operate on very large data sets used in oceanographic, atmospheric, space, and terrain domains. In this regard, SEDRIS does not try to judge, side with, or separate how various domains use environmental data; instead it provides a unifying mechanism for all of them to describe (and subsequently share) such data, without detracting from one or the other.