Service registries can play a big role in helping developers, collaborators and agencies find deployed resources without difficulty. A service registry is especially useful if it follows a well-known, predefined specification that allows for automatic machine interactions and interoperability, such as the Open Geospatial Consortium (OGC) specification for Catalog Services for the Web (CSW). This chapter discusses a CSW-compliant registry developed as part of an OGC-sponsored interoperability experiment involving the ocean sciences community. The development approach for selecting, adapting and enhancing an open source implementation of the CSW is described. Implementation goals for the registry included support for OGC Sensor Observation Services (SOS) and additional functionality to minimize requirements on service providers and maximize the robustness of the registry. The registry’s role in the OGC Ocean Science Interoperability Experiment is also discussed.
Geo-scientists today have access to unprecedented volumes of data collected by the many in-situ and remote sensing environmental sensors currently deployed. But in order to make use of the vast amounts of data available, scientists must address issues related to multiple data formats, discovery and access methods in use. Solutions across these issues, such as data format interchange and interoperable discovery and access services, would allow scientists to focus on science tasks rather than data technology. Data services supporting common standards specifications, such as community-accepted XML definitions, can provide the required information in a form understandable by machines, thus promoting data interoperability and inter-use. Web service specifications have provided new levels of interoperability, allowing users and applications to more easily discover and bind to available services. While interoperability is one of the main purposes behind the standardization of web services, in practice, it is sometimes difficult to obtain due to loose conformance to, or interpretation of, these specifications in actual implementations.
Standards development is a slow and difficult process that requires collaboration, iteration and consensus within the target community. Often the result can be large, complex specifications that attempt to satisfy everyone. Although the development of standards and specifications generally involves rigorous revision and approval processes, an accurate assessment of a standard’s usefulness cannot be made until diverse teams of developers implement the standard in real systems. Standards often suffer from ambiguities and scalability issues. There are, however, tangible benefits to developing and using a standard, that are realized when interchangeable tools are developed that researchers can use and plug into their workflow as needed.
Hence, it is important that experienced developers identify such ambiguities as well as test the reliability and scalability of new or proposed standards in their areas of expertise. The Open Geospatial Consortium (OGC) conducts interoperability experiments to address the issue of interoperability for newly approved geospatial specifications (Percivall, 2009). OGC is an international organization consisting of various institutes and agencies with a common goal of developing standards for geospatial services and products. Thus, OGC is an ideal coordinator of the type of interoperability experiments needed. One such initiative is the Ocean Science Interoperability Experiment (Oceans IE http://www.oostethys.org/best-practices), can be very helpful by providing implementation examples, usage tips and community specification profiles, for use by developers and system integrators – as was demonstrated in the Oceans IE project.
As an integral part of the Ocean IE, the authors developed a service registry compliant with the Catalog Service for Web (CSW) OGC standard for registries of data and services. The Oceans IE registry was created to index the growing number of data services (both SOS and WFS) that became difficult to track within the experiment. This registry supports easy registration of SOS and WFS, as well as discovery of the services using the CSW specifications. While CSW was a natural choice for an OGC service registry, it has other advantages as well, described in the CSW subsection later in the chapter.