About SOS Guidelines

U.S. IOOS distributes ocean observations using the OGC Sensor Observation Service. To support this effort U.S. IOOS has developed a profile of SOS v1.0 (henceforth IOOS SOS v1.0) that includes specific behaviors for the SOS interface and for the output formats delivered in response to the three operations of the SOS Core Profile. This repository contains documentation of the IOOS SOS v1.0 profile, example templates for the responses, and information on two reference implementations developed to support the IOOS SOS v1.0 profile. To facilitate the practical implementation of the SOS, IOOS has developed the IOOS Application Profile (AP) for SOS, which includes a series of operation templates, controlled vocabularies, IOOS Conventions for SOS Implementation, and a set of tests for IOOS SOS implementations.

Contents

Documentation of the Profile

  • Web Service Description Document (WSDD) - provides a description of the IOOS Sensor Observation Service (SOS) Profile that has been developed by U.S. IOOS for deployment by NOAA data providers and IOOS Regional Associations (RAs).
  • List of SOS Tests - describes a collection of tests that have to be run in order to ensure a required level of compliance with IOOS SOS Profile 1.0 and official OGC SOS 1.0.0 specification.
  • IOOS SOS Templates - explicitly define the IOOS SOS operation responses for the CF feature types “point”, “timeSeries”, and “timeSeriesProfile”.

The IOOS SOS 1.0 is conformant to the following OGC Standards and Conventions:

IOOS Conventions for the AP v1 is described in the series of documents:

Templates and Examples

SOS Operation Templates for IOOS AP v1 include templates for SOS v1.0.0 GetCapabilities, DescribeSensor, and GetObservation server's response. The GetObservation templates describe 'point', 'timeSeries', 'profile', and 'timeSeriesProfile' CF v1.6 Discrete Sampling Geometries. The templates are intended as a mandatory guidance for all developers of IOOS-compliant SOS applications.

In 2015-2016 IOOS is planning to move to IOOS SOS v2.0. A new Application Profile (AP v2) is anticipated to modify IOOS Conventions and current templates to accommodate the OGC SOS v2.0 Interface Standard [OGC 12-006], including the Obsevations and Measurements v2.0, Sensor Web Enablement v2.0, and SensorML v2.0 standards. Additionally, templates will also be added for 'trajectory' and 'trajectoryProfile' CF v1.6 Discrete Sampling Geometries.

Reference Implementations and Current Deployments

  1. i52N for RDBMS observation data store (IOOS custom version of the 52°North Sensor Observation Service, and
  2. ncSOS that adds an SOS service to any of the CF Discrete Sampling Geometries datasets in the existing THREDDS server.

Conformance Testing

Similar to OGC Compliance & Interoperability Testing & Evaluation (CITE) program, IOOS has developed a set of formal tests to ensure that IOOS SOS implementations are providing a product compliant with the IOOS AP v1. The IOOS AP v1 Compliance Test List describes tests for SOS v1.0.0 developed by IOOS, and indicates optional some OGC CITE tests that are considered non-critical for the current state of IOOS SOS implementation.

A testing framework for use as a web service and as a command line tool is being developed as well.

Current Deployments

The complete list of all known IOOS SOS deployments can be found at the IOOS Catalog.

IOOS Federal and RA partners are expected to register their DMAC data access services with the IOOS Service Registry hosted and operated by NGDC. The Service Registry maintains the master list of data sets available via DMAC data access services, and allows discovery of IOOS services and data via the NGDC ESRI Geoportal Server's web based GUI or via direct queries using the OGC CS/W interface or the ESRI REST interface, e.g. the query for all IOOS SOS services. The IOOS Service Registry documentation provides detailed instructions for IOOS partners on getting dataset metadata into the Service Registry.

The IOOS Catalog is intended to be the web-based client for the Service Registry and to provide a view of the data published via the registered services. Currently, the Catalog provides information under 1000 registered SOS services and 4000 data sets. The Catalog obtains all service URLs from the metadata managed by the IOOS Service Registry via OGC CS-W interface to the NGDC's ESRI Geoportal Server. The GitHub software repository contains the source code for generation of the IOOS Catalog web site.

Documentation Generation

The documentation in the sos-guidelines repository is organized in the following order:

   ioos/sos-guidelines/
    ├── doc/
    |    ├── testing/
    |    |    └── sos_test_list_github_notoc_summary.md
    |    └── wsdd/ 
    |         └── sos_wsdd_github_notoc.md
    ├── template/
    |    └── milestone 1.0/
    |          ├── OM-GetObservation.xml
    |          ├── SML-DescribeSensor-Network.xml
    |          ├── SML-DescribeSensor-Station.xml
    |          ├── SOS-GetCapabilities.xml
    |          ├── SWE-MultiStation-TimeSeries.xml
    |          ├── SWE-MultiStation-TimeSeries_QC.xml
    |          ├── SWE-SingleStation-SingleProperty-TimeSeries.xml
    |          ├── SWE-SingleStation-TimeSeriesProfile.xml
    |          └── SWE-SingleStation-TimeSeriesProfile_QC.xml
    └── README.md

The rest of repository content is placed there only for website deployment with the Hugo static page generator. The Hosting on IOOS GitHub Pages Workflow located on the IOOS GitHub top webpage describes the deployment workflow in more details.