This note outlines suggestions for the web service functionality required to expose the entire content of data held in an ODM 1.1. database. Version 1.0 WaterOneFlow web services included in HIS servers shipped to each WATERS Network test do not expose the entire content of the ODM and this is a limitation in the system that this note starts to address. General principle.
ODM 1.1 WaterOneFlow web services should expose the entire content of data held in an ODM 1.1 database.
Following are some of the functions that are needed to expose the entire content of ODM.
- GetSites – returns basic information on all or a list of observation sites
- GetSiteInfo – returns comprehensive information on specific observations sites
- GetVariables – returns basic information on all or a list of variables
- GetVariableInfo – returns comprehensive information on specific variables
- GetValues – returns actual data values
Propose to be added to better expose content
- GetMethods – returns information on methods
- GetSources – returns information in sources (including ISOMetadata)
- GetVocabularies - returns information in the controlled vocabulary tables
- Need to examine returns from ODM CV web services and harmonize
Addressed mainly at ODM¶
- GetLabMethods – returns information on lab methods
- GetGroups – returns information on groups
- GetGroupDataValues – returns all the data values belonging to a specific group
- GetDerivedFrom – returns all the data values that a specific data value is derived from
Although this content is unlikely to be available in data sources other than ODM, some of it may be available for some data sources. These services could be constructed in a general way so as to return information indicating that they are not relevant (e.g. lab methods are not relevant for a field or remote sensing measurement) or do not have any information (e.g. if there are no groups or derived from groups for the particular data being queried)
Use cases that support the need for these services
- A scientist analyzing some chemical water quality data finds that some of the values are outliers and wants to look in to the methods and laboratory used to do the analysis. This requires from the sample ID getting the corresponding lab method ID to identify the lab method used.
- A static property, such as soil type, hydraulic conductivity or infiltration capacity is measured over a series of months across a watershed. Each measurement is recorded as a data value in ODM. The data and time of these measurements are recorded, but they do not really form a logical time series. Also they are at different locations, recorded as different sites, so will appear as different time series in the series catalog. The user wants to logically group these together, so forms a group to which all these data values belong. The GetGroups service returns a listing of all the groups available based on the GroupDescription field and the GetGroupDataValues retrieves all the data values associated with this particular group.
- The USGS makes a number of measurements to establish a rating curve that relates stage measurements to discharge measurements. These measurements include velocity measurements, channel width, depth, cross section measurements etc. The USGS recently removed information such as this from the web site because they were concerned about it not being interpreted correctly. These measurements could all be recorded in ODM, with methods, the site they were made etc completely described. Then the measurements that comprise the rating curve that are derived from these measurements can also be recorded in ODM and linked using the DerivedFrom table to the measurements upon which they are based. Then when discharge values are derived from stage values they can be linked using the DerivedFrom table back to the stage from which the discharge was derived, as well as the rating curve used in the calculation. The GetDerivedFrom function would allow a user to retrieve this data when it needs to be examined.