The Gulf of Mexico Coastal Ocean Observing System (GCOOS) Data Portal (hereafter will be referred to as Portal) was conceived to aggregate near real-time oceanographic data from geographically-distributed data systems located around the Gulf of Mexico. The data sources of the region are maintained under a variety of data standards and archival schema, and the core challenge of this Portal was to interface these data, model output and products via automated standards-based service layers and through web-based human-accessible graphical user interfaces.
The current version of the Portal is limited only to in situ observations. The system read data from Local Data Nodes (LDN and also referred to as Regional Partners) and assemble these onto a database. Data assembled will be validate and validated data posted onto databases for long/short-term storage. Open Geospatial Consortium, Inc. (OGC) compliant modules were developed to interface with other modules to present data that are easy to read and imported. A special user-interface (this web pages) was drafted to facilitate the demonstration of the facilities/services and as the media to distribute the codes developed for others to also have that capability as may be desired.

The modules and services and categorized onto components and components grouped onto composites. The developers have taken into consideration, that the standards and technology in general are still evolving and security-related issues needs to be evaluated regularly to ensure data integrity and compliance to community standards.

A list of these service and their status are provided on a separate page and a series of HOW TO pages will be drafted as this Portal is developed. For general inquiry, comments and suggestions to improve the Portal, please do not hesitate to contact us.
NOTE: The Marine Metadata Interoperability Project (MMI), of which GCOOS is an active participant, has developed a number of utilities to facilitate themapping of ontologies for data providers. The Resource Description Framework (RDF), a lightweight ontology system and fully compatible to Web Ontology Language (OWL), is the common framework employed by MMI. The following is an alternative to the Voc2RDF (developed by the Marine Metadata Interoperability Project) utility that you may use. This utility is use by GCOOS to auto-generate the RDF/OWL files required by the MMI registry as changes are made in the lists. PHP and SQLite3.x are required to successfully install this utility. The following is a step-by-step procedure on how to install this facility.
It will be noted that these package does not include modules to encode or manipulate data in the database. There are a nuber of freeware that can do the data encoding and manipulation job with great efficiency. The SQLite Manager is the author's choice (this one is an add-on to FireFox).
Click here to view a demonstration of this utility.
Item |
Description |
(1) srv_gcoos_voc.cfg |
This is the configuration file that contains the header parameters for the OWL generation. |
| (2) srv_gcoos_generateOWL.php | Module to generate the OWL files from data on the srv_gcoos_voc.cfg and the data in the SQLite database, gcoos_voc.sqlite. |
| (3) srv_gcoos_generateCSV.php | Module to generate the CSV files from data in the SQLite database, gcoos_voc.sqlite. |
| (4) gcoos_voc.sqlite | This is an SQLite database template and it contains some data for sample runs if needed. The updated database may also be download from: http://gcoos.rsmas.miami.edu/dp/sqlite_voc.sqlite |
| (5) gcoos_vocabulary.php | The core script used in the demonstration page (http://gcoos.rsmas.miami.edu/dp/gcoos_vocabulary.php). |
NOTE: The following is an alternative to the OOSTethys option of providing OGC Sensor Observation Service (SOS) applying the most recent version of IOOS DIF (ver. 0.6.1) schema. Please note that the IOOS DIF working group (Web Services and Data Encoding; WSDE) has not made any official announcement with regards to the publication of this schema. Also, the authors of the PHP scripts and template presented here do not claim completeness on the implementation. Visit the NDBC SOS implementation site (http://sdf.ndbc.noaa.gov/sos/) for sample application of this template based on MySQL DBE or to GCOOS Data Portal advanced search page based on SQLite 3 DBE.
These services requires systems with PHP and SQLite3.x installed.
Item |
Description |
(1) sql_ioos_dif.pdf |
This PDF files contains the design of the database from which scripts were written. |
| (2) sos_server.php | Component developed in PHP that implements the following services: GetCapabilities, DescribeSensor and GetObservation. Please note that the capabilities of these services are not fully implemented. |
| (3) ioosdif.sql | A sample MySQL file with the structure are presented in sql_ioos_dif.pdf |
| (4) test.shtml | A sample SHTML page that implements the services. |
The other changes that needs to be made but they are minor. For example, if you want to use your own record definition for the parameters measured, change all values for recDef to point to a user-designated XML. Also, you will notice that the URN used is the URN convention with NDBC station ID (i.e. urn:x-noaa:def:station:ndbc::<NDBC designated station ID> or urn:x-noaa:def:sensor:ndbc::<NDBC designate sensor ID>). Others will be tempted to use a different URN. GCOOS DP developers recommend that it may be wise to use similar URNsto facilitate data exchanges among data providers and users.
NOTE: The following is a step-by-step procedure to install a basic monitoring system of the stations and sensors, and resource inventory using the available infrastructure already available to the regional partners, i.e. XML files for IOOS Registry. This implementation has made few changes to further standardize the presentation of the parameters. These services requires systems with PHP and SQLite3.x installed.
The Monitoring tab is a demonstration of these services and click here to see a basic page using the services. Please see notes below to filter data specific to an operator. The later presents the table values for detailed examination of the resources and the later, is a graphical presentation using Earht Google API.
Item |
Description |
| (1) gcoos_monitor.sqlite | SQLite database with several tables that are pre-initialized for the region (NOTE: The values will need to be updated using the srv_gcoos_readIOOSReg.php that is activated either manually or via a chron file - type of system). |
| (2) srv_gcoos_readIOOSReg.php | Module to read the GML files that are stored on pre-defined URLs. Another utility, srv_gcoos_readADCPReg.php is also available upon request to plot ADCP reading-stations in the region. Operator-specific request is also available by passing the variable 'operator' with their respective acronyms. For example, to read only stations from XXX operator, the URL call should read: |
| (3) srv_gcoos_generateKML.php | Module to re-generate the KML files (structurally different from the IOOS Registry system). Operator-specific request is also available by passing the variable 'operator' with their respective acronyms. For example, to read only stations from XXX operator, the URL call should read: http://<path>/srv_gcoos_readIOOReg.php?operator=XXX The following are some of the acceptable acronyms of operators to date (see also the ShortName variabes in the table, gcoos_monitor.sqlite): TABS, LUMCON, TCOONS, COMPS, WAVCIS, DISL, CenGOOS, MOTE. Example, to generate the only the LUMCON stations, the URL call should read: http://gcoos.rsmas.miami.edu/dp/srv_gcoos_generateKML.php?operator=LUMCON Another value that can be passed is All. This will generate a KML file with all the stations in GCOOS inventory, including inactive ones: http://gcoos.rsmas.miami.edu/dp/srv_gcoos_generateKML.php?operator=All. |
| (4) srv_gcoos_displayResource.php | Module to present the detailed resource status grouped by operator.
Operator-specific request is also available by passing the variable 'operator' with their respective acronyms. For example, to read only stations from XXX operator, the URL call should read: http://<path>/srv_gcoos_readIOOReg.php?operator=XXX The following are some of the acceptable acronyms of operators to date (see also the ShortName variabes in the table, gcoos_monitor.sqlite): TABS, LUMCON, TCOONS, COMPS, WAVCIS, DISL, CenGOOS, MOTE. Example, to generate the only the WAVCIS stations, the URL call should read: http://gcoos.rsmas.miami.edu/dp/srv_gcoos_displayResource.php?operator=WAVCIS |