Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Table D sequence for reporting observations from ocean gliders #16

Closed
david-i-berry opened this issue Apr 24, 2020 · 80 comments · Fixed by #146
Closed

New Table D sequence for reporting observations from ocean gliders #16

david-i-berry opened this issue Apr 24, 2020 · 80 comments · Fixed by #146

Comments

@david-i-berry
Copy link
Member

david-i-berry commented Apr 24, 2020

Authors

  • Justin Buck (British Oceanographic Data Centre (BODC)) on behalf of OGDMTT
  • Kevin O'Brien (NOAA Pacific Marine Environmental Laboratory (PMEL)) on behalf of OGDMTT
  • Dan Hayes (University of Cyprus) on behald of OGDMTT
  • David Berry (National Oceanography Centre (NOC)) as JCOMM TDC coordinator
  • plus additional contributors in this thread

Summary and purpose

The Ocean Gliders Data Management Task Team (OGDMTT) proposes a new BUFR sequence to report the full suite of glider observations along a trajectory profile.

Action proposed

The team is kindly asked to review and approve the contents for inclusion within the next update to the WMO Manual on Codes.

Discussions

Ocean glider data is currently submitted to the GTS using the Argo BUFR sequence (3-15-003) but this is not ideal. For example, the Argo sequence does not allow the along track positions to be reported as part of the trajectory profile and a number of parameters are missing. This new sequence seeks to address those deficiencies.

Detailed proposal (updated 10/01/2023)

New Table B Entries

Class 42: BUFR / CREX Oceanographic Elements

Descriptor Name Units Scale Reference Width Notes CREX scale CREX width
0-42-016 Sea water potential density referenced to sea surface kg m-3 5 -10000000 24

New Table D Entries

Category 15: Oceanographic report sequences
new sequence for Ocean glider trajectory profile

Table Reference Table References Element Name Description
3-15-012 Sequence for reporting observations from a single glider trajectory profile
3-01-150 (WIGOS identifier)
2-01-129 Change data width Increase width of following elements by 1 bit
0-01-087 WMO marine observing platform extended identifier
2-01-000 Change data width Cancel increase in width
0-01-019 Long station or site name
0-01-036 Agency in charge of operating the observing platform
0-02-148 Data collection and/or location system
0-01-085 Observing platform manufacturer's model
0-01-086 Observing platform manufacturer's serial number
0-08-021 Time significance Set to 25, nominal reporting time
3-01-011 (Year, month, day)
3-01-013 (Hour, minute, second)
3-01-021 (Latitude / longitude (high accuracy))
0-11-104 True heading of aircraft, ship or other mobile platform
0-02-169 Anemometer type Set to 2, wind observation through ambient noise (WOTAN)
0-11-002 Wind speed
0-11-001 Wind direction
0-02-169 Anemometer type Set to missing / cancel previous value
0-22-032 Speed of sea surface current
0-22-005 Direction of sea-surface current
3-01-011 (Year, month, day)
3-01-013 (Hour, minute, second)
0-08-021 Time significance Set to 2, time averaged
0-04-025 Time period or displacement Duration of dive
3-01-021 (Latitude / longitude (high accuracy))
0-22-031 Speed of current
0-22-004 Direction of current
0-08-021 Time significance Set to missing / cancel previous value
0-05-068 Profile number
0-01-079 Unique identifier for profile
1-26-000 Delayed replication of 26 descriptors
0-31-001 Delayed descriptor replication factor Number of profile sections (e.g. descending, horizontal, ascending)
0-22-056 Direction of profile 0 (ascending / upwards profile), 1 (descending / downwards profile), or 2 (horizontal)
1-23-000 Delayed replication of 23 descriptors
0-31-002 Extended delayed descriptor replication factor
3-01-011 Year, month, day
3-01-013 Hour, minute, second
3-01-021 Latitude / Longitude (high accuracy)
0-08-080 Qualifier for GTSPP quality flag 20, position
0-33-050 Global GTSPP quality flag
0-07-062 Depth below water surface
0-08-080 Qualifier for GTSPP quality flag 13, water depth at a level
0-33-050 Global GTSPP quality flag
0-22-065 Water pressure
0-08-080 Qualifier for GTSPP quality flag 10, water pressure at a level
0-33-050 Global GTSPP quality flag
0-22-045 Sea/water temperature
0-08-080 Qualifier for GTSPP quality flag 11, water temperature at a level
0-33-050 Global GTSPP quality flag
0-22-066 Water conductivity
0-08-080 Qualifier for GTSPP quality flag 25, water conductivity at a level
0-33-050 Global GTSPP quality flag
0-22-064 Salinity
0-08-080 Qualifier for GTSPP quality flag 12, salinity at a level
0-33-050 Global GTSPP quality flag
0-42-016 Sea water potential density referenced to sea surface
0-08-080 Qualifier for GTSPP quality flag 26, sea water potential density at a level
0-33-050 Global GTSPP quality flag

Additions to code tables

0-08-080
Qualifier for GTSPP quality flag

Code figureMeaning
0Total water pressure profile
1Total water temperature profile
2Total water salinity profile
3Total water conductivity profile
4Total water depth
5–9Reserved
10Water pressure at a level
11Water temperature at a level
12Salinity at a level
13Water depth at a level
14Sea/water current speed at a level
15Sea/water current direction at a level
16Dissolved oxygen at a level
17–19Reserved
20Position
* 25Water conductivity at a level
* 26Sea water potential density referenced to sea surface at a level
32-62Reserved
63Missing value

New entries (25 - 31) indicated by *.

See also wmo-im/CCT#122.

Test data

test-data.zip

@jbathegit
Copy link
Contributor

I spotted a couple of typos - the FXY value for "Direction of sea-surface current" should be 0-22-005 (not 0-02-169), and the FXY value for "Speed of sea-surface current" should be 0-22-032 (not 0-22-031).

@david-i-berry
Copy link
Member Author

Thanks, it's hopefully correct now.

@efucile efucile moved this from Submitted to In validation in BUFR4 (old) Apr 30, 2020
@efucile efucile added this to the FT-2020-2 milestone May 1, 2020
chenxiaoxia2019 pushed a commit that referenced this issue May 29, 2020
New Table D sequence for reporting observations from ocean gliders
#16
New Table B Entries
Class 41: BUFR / CREX Oceanographic / biogeochemical parameters
chenxiaoxia2019 pushed a commit that referenced this issue May 29, 2020
New Table D sequence for reporting observations from ocean gliders
#16
Class 42: BUFR / CREX Oceanographic Elements
chenxiaoxia2019 pushed a commit that referenced this issue May 29, 2020
New Table D sequence for reporting observations from ocean gliders
#16
New Table D Entries
Category 15: Oceanographic report sequences
chenxiaoxia2019 pushed a commit that referenced this issue May 29, 2020
New Table D sequence for reporting observations from ocean gliders
#16
0-08-080
Qualifier for GTSPP quality flag
@chenxiaoxia2019
Copy link
Contributor

@DavidBerryNOC I have created a branch for this issue. Could you please check it? BTW, when it comes to adding table B entries/class 41/42, please provide the information of CREX unit/scale/width. Many thanks.

BUFR4 (old) automation moved this from In validation to Submitted Jun 3, 2020
@chenxiaoxia2019 chenxiaoxia2019 moved this from Submitted to In validation in BUFR4 (old) Jun 3, 2020
@david-i-berry
Copy link
Member Author

david-i-berry commented Jun 17, 2020

Revision of proposal as part of validation

Table B entries

  • Revision of scale and width of proposed descriptors based on more comprehensive set of example files and feedback from community.
  • Extension of name for 0-41-007 to be more precise
  • Change of name for 0-41-008, previous name was related but not precise enough

Table D entries

  1. Removal of redundant descriptors from D sequence (originating centre and sub-centre)
  2. Move of time significance and duration
  3. Correction of number of replicated descriptors
  4. Correction of number of replicated descriptors
  5. Update of element names for new descriptors

Revised proposal

New Table B Entries

Class 41: BUFR / CREX Oceanographic / biogeochemical parameters

Descriptor Name Units Scale Reference Width Notes
0-41-006 Mass concentration of chlorophyll A in sea water kg m-3 9 0 21
0-41-007 Concentration of coloured dissolved organic matter (CDOM) in sea water expressed as equivalent mass fraction of quinine sulfate dihydrate numeric 12 0 21 parts per billion
0-41-008 Volume backwards scattering coefficient of radiative flux in sea water (BBP) m-1 6 0 25
0-41-009 Photosynthetically active radiation (400-700 nm) photon flux mol m-2 s-1 10 0 26

Class 42: BUFR / CREX Oceanographic Elements

Descriptor Name Units Scale Reference Width Notes
0-42-016 Sea water potential density referenced to sea surface kg m-3 3 1000000 16

New Table D Entries

Category 15: Oceanographic report sequences

Change Table Reference Table References Element Name Description
3-15-012 Ocean glider trajectory profile sequence
3-01-150 (WIGOS identifier)
0-01-087 WMO marine observing platform extended identifier
0-01-019 Long station or site name
0-01-036 Agency in charge of operating the observing platform
0-02-148 Data collection and/or location system
1 0-01-033 Identification of originating / generating centre
1 0-01-034 Identification of originating / generating sub-centre
0-01-085 Observing platform manufacturer's model
0-01-086 Observing platform manufacturer's serial number
0-08-021 Time significance Set to 25, nominal reporting time
3-01-011 (Year, month, day)
3-01-013 (Hour, minute, second)
3-01-021 (Latitude / longitude (high accuracy))
0-11-104 True heading of aircraft, ship or other mobile platform
0-02-169 Anemometer type Set to 2, wind observation through ambient noise (WOTAN)
0-11-002 Wind speed
0-11-001 Wind direction
0-02-169 Anemometer type Set to missing / cancel previous value
0-22-005 Direction of sea-surface current
0-22-032 Speed of sea surface current
2 0-08-021 Time significance Set to 2, time averaged
2 0-04-025 Time period or displacement Duration of dive
3-01-011 (Year, month, day)
3-01-013 (Hour, minute, second)
2 0-08-021 Time significance Set to 2, time averaged
2 0-04-025 Time period or displacement Duration of dive
3-01-021 (Latitude / longitude (high accuracy))
0-22-031 Speed of current
0-22-004 Direction of current
0-08-021 Time significance Set to missing / cancel previous value
0-05-068 Profile number
0-01-079 Unique identifier for profile
3 1-54-000 Delayed replication of 54 descriptors
0-31-001 Delayed descriptor replication factor Number of profile sections (e.g. descending, horizontal, ascending)
0-22-056 Direction of profile 1 (descending / downwards profile), 2 (horizontal) or 3 (ascending / upwards profile)
4 1-51-000 Delayed replication of 51 descriptors
0-31-002 Extended delayed descriptor replication factor
3-01-011 Year, month, day
3-01-013 Hour, minute, second
3-01-021 Latitude / Longitude (high accuracy)
0-08-080 Qualifier for GTSPP quality flag 20, position
0-33-050 Global GTSPP quality flag
0-07-062 Depth below water surface
0-08-080 Qualifier for GTSPP quality flag 13, water depth at a level
0-33-050 Global GTSPP quality flag
0-22-065 Water pressure
0-08-080 Qualifier for GTSPP quality flag 10, water pressure at a level
0-33-050 Global GTSPP quality flag
0-22-045 Sea/water temperature
0-08-080 Qualifier for GTSPP quality flag 11, water temperature at a level
0-33-050 Global GTSPP quality flag
0-22-066 Water conductivity
0-08-080 Qualifier for GTSPP quality flag 25, water conductivity at a level
0-33-050 Global GTSPP quality flag
0-22-064 Salinity
0-08-080 Qualifier for GTSPP quality flag 12, salinity at a level
0-33-050 Global GTSPP quality flag
0-42-016 Sea water potential density referenced to sea surface
0-08-080 Qualifier for GTSPP quality flag 26, sea water potential density at a level
0-33-050 Global GTSPP quality flag
0-22-031 Speed of current
0-08-080 Qualifier for GTSPP quality flag 14, sea / water current speed at a level
0-33-050 Global GTSPP quality flag
0-22-004 Direction of current
0-08-080 Qualifier for GTSPP quality flag 15, sea / water current direction at a level
0-33-050 Global GTSPP quality flag
0-22-188 Dissolved oxygen
0-08-080 Qualifier for GTSPP quality flag 16, dissolved oxygen at a level
0-33-050 Global GTSPP quality flag
0-41-006 Mass concentration of chlorophyll A in sea water
0-08-080 Qualifier for GTSPP quality flag 27, mass concentration of chlorophyll A at a level
0-33-050 Global GTSPP quality flag
5 0-41-007 Concentration of coloured dissolved organic matter (CDOM) in sea water expressed as equivalent mass fraction of quinine sulfate dihydrate
0-08-080 Qualifier for GTSPP quality flag 28 concentration of coloured dissolved organic matter in sea water at a level
0-33-050 Global GTSPP quality flag
1-04-000 Delayed replication of 4 descriptors
0-31-001 Delayed descriptor replication factor
0-02-071 Spectrographic wavelength
5 0-41-008 Volume backwards scattering coefficient of radiative flux in sea water (BBP)
0-08-080 Qualifier for GTSPP quality flag 29, particle beam attenuation coefficient at a level
0-33-050 Global GTSPP quality flag
0-02-071 Spectrographic wavelength
0-41-009 Photosynthetically active radiation (400-700 nm) photon flux
0-08-080 Qualifier for GTSPP quality flag 30, Photosynthetically active radiation (400 - 700 nm) photon flux at a level
0-33-050 Global GTSPP quality flag
0-41-005 Turbidity
0-08-080 Qualifier for GTSPP quality flag 31, turbidity at a level
0-33-050 Global GTSPP quality flag

Additions to code tables

0-08-080
Qualifier for GTSPP quality flag

Code figureMeaning
0Total water pressure profile
1Total water temperature profile
2Total water salinity profile
3Total water conductivity profile
4Total water depth
5–9Reserved
10Water pressure at a level
11Water temperature at a level
12Salinity at a level
13Water depth at a level
14Sea/water current speed at a level
15Sea/water current direction at a level
16Dissolved oxygen at a level
17–19Reserved
20Position
* 25Water conductivity at a level
* 26Sea water potential density referenced to sea surface at a level
* 27Mass concentration of chlorophyll A at a level
* 28Concentration of coloured dissolved organic matter in sea water at a level
* 29Particle beam attenuation coefficient at a level
* 30Photosynthetically active radiation (400 - 700 nm) photon flux at a level
* 31Turbidity at a level
32-62Reserved
63Missing value

New entries (25 - 31) indicated by *.

@david-i-berry
Copy link
Member Author

david-i-berry commented Jun 17, 2020

@DavidBerryNOC I have created a branch for this issue. Could you please check it? BTW, when it comes to adding table B entries/class 41/42, please provide the information of CREX unit/scale/width. Many thanks.

@chenxiaoxia2019 revised versions of tables attached - substantial changes made to Table D due to errors in branch.

BUFRCREX_TableB_en.txt
BUFR_TableD_en.txt

@david-i-berry
Copy link
Member Author

david-i-berry commented Jun 19, 2020

@chenxiaoxia2019 I've added CREX width scale below - please let me know it you need further info.

Revision of proposal as part of validation

Further modifications to include CREX scale / width plus increase of width for dissolved oxygen using operators.

Test files and revised tables attached.

Table B entries

  • Revision of scale and width of proposed descriptors based on more comprehensive set of example files and feedback from community.
  • Extension of name for 0-41-007 to be more precise
  • Change of name for 0-41-008, previous name was related but not precise enough

Table D entries

  1. Removal of redundant descriptors from D sequence (originating centre and sub-centre)
  2. Swap order of surface current speed and direction to consistent with the other occurrences
  3. Move of time significance and duration
  4. Correction of number of replicated descriptors
  5. Correction of number of replicated descriptors
  6. Increase width by 2 for dissolved oxygen to accommodate high near surface values (new max value 1048 micro mol / kg)
  7. Update of element names for new descriptors

Revised proposal

New Table B Entries

Class 41: BUFR / CREX Oceanographic / biogeochemical parameters

Descriptor Name Units Scale Reference Width Notes CREX scale CREX width
0-41-006 Mass concentration of chlorophyll A in sea water kg m-3 9 0 21 9 7
0-41-007 Concentration of coloured dissolved organic matter (CDOM) in sea water expressed as equivalent mass fraction of quinine sulfate dihydrate numeric 12 0 21 parts per billion 12 7
0-41-008 Volume backwards scattering coefficient of radiative flux in sea water (BBP) m-1 6 0 25 6 8
0-41-009 Photosynthetically active radiation (400-700 nm) photon flux mol m-2 s-1 10 0 26 10 8

Class 42: BUFR / CREX Oceanographic Elements

Descriptor Name Units Scale Reference Width Notes CREX scale CREX width
0-42-016 Sea water potential density referenced to sea surface kg m-3 5 1000000 23 5 7

New Table D Entries

Category 15: Oceanographic report sequences

Change Table Reference Table References Element Name Description
3-15-012 Ocean glider trajectory profile sequence
3-01-150 (WIGOS identifier)
0-01-087 WMO marine observing platform extended identifier
0-01-019 Long station or site name
0-01-036 Agency in charge of operating the observing platform
0-02-148 Data collection and/or location system
1 0-01-033 Identification of originating / generating centre
1 0-01-034 Identification of originating / generating sub-centre
0-01-085 Observing platform manufacturer's model
0-01-086 Observing platform manufacturer's serial number
0-08-021 Time significance Set to 25, nominal reporting time
3-01-011 (Year, month, day)
3-01-013 (Hour, minute, second)
3-01-021 (Latitude / longitude (high accuracy))
0-11-104 True heading of aircraft, ship or other mobile platform
0-02-169 Anemometer type Set to 2, wind observation through ambient noise (WOTAN)
0-11-002 Wind speed
0-11-001 Wind direction
0-02-169 Anemometer type Set to missing / cancel previous value
2 0-22-032 Speed of sea surface current
0-22-005 Direction of sea-surface current
2 0-22-032 Speed of sea surface current
3 0-08-021 Time significance Set to 2, time averaged
3 0-04-025 Time period or displacement Duration of dive
3-01-011 (Year, month, day)
3-01-013 (Hour, minute, second)
3 0-08-021 Time significance Set to 2, time averaged
3 0-04-025 Time period or displacement Duration of dive
3-01-021 (Latitude / longitude (high accuracy))
0-22-031 Speed of current
0-22-004 Direction of current
0-08-021 Time significance Set to missing / cancel previous value
0-05-068 Profile number
0-01-079 Unique identifier for profile
4 1-56-000 Delayed replication of 56 descriptors
0-31-001 Delayed descriptor replication factor Number of profile sections (e.g. descending, horizontal, ascending)
0-22-056 Direction of profile 1 (descending / downwards profile), 2 (horizontal) or 3 (ascending / upwards profile)
5 1-53-000 Delayed replication of 53 descriptors
0-31-002 Extended delayed descriptor replication factor
3-01-011 Year, month, day
3-01-013 Hour, minute, second
3-01-021 Latitude / Longitude (high accuracy)
0-08-080 Qualifier for GTSPP quality flag 20, position
0-33-050 Global GTSPP quality flag
0-07-062 Depth below water surface
0-08-080 Qualifier for GTSPP quality flag 13, water depth at a level
0-33-050 Global GTSPP quality flag
0-22-065 Water pressure
0-08-080 Qualifier for GTSPP quality flag 10, water pressure at a level
0-33-050 Global GTSPP quality flag
0-22-045 Sea/water temperature
0-08-080 Qualifier for GTSPP quality flag 11, water temperature at a level
0-33-050 Global GTSPP quality flag
0-22-066 Water conductivity
0-08-080 Qualifier for GTSPP quality flag 25, water conductivity at a level
0-33-050 Global GTSPP quality flag
0-22-064 Salinity
0-08-080 Qualifier for GTSPP quality flag 12, salinity at a level
0-33-050 Global GTSPP quality flag
0-42-016 Sea water potential density referenced to sea surface
0-08-080 Qualifier for GTSPP quality flag 26, sea water potential density at a level
0-33-050 Global GTSPP quality flag
0-22-031 Speed of current
0-08-080 Qualifier for GTSPP quality flag 14, sea / water current speed at a level
0-33-050 Global GTSPP quality flag
0-22-004 Direction of current
0-08-080 Qualifier for GTSPP quality flag 15, sea / water current direction at a level
0-33-050 Global GTSPP quality flag
6 2-01-130 Change data width Add 2 bits to data width
0-22-188 Dissolved oxygen
6 2-01-000 Change data width cancel operation
0-08-080 Qualifier for GTSPP quality flag 16, dissolved oxygen at a level
0-33-050 Global GTSPP quality flag
0-41-006 Mass concentration of chlorophyll A in sea water
0-08-080 Qualifier for GTSPP quality flag 27, mass concentration of chlorophyll A at a level
0-33-050 Global GTSPP quality flag
7 0-41-007 Concentration of coloured dissolved organic matter (CDOM) in sea water expressed as equivalent mass fraction of quinine sulfate dihydrate
0-08-080 Qualifier for GTSPP quality flag 28 concentration of coloured dissolved organic matter in sea water at a level
0-33-050 Global GTSPP quality flag
1-04-000 Delayed replication of 4 descriptors
0-31-001 Delayed descriptor replication factor
0-02-071 Spectrographic wavelength
7 0-41-008 Volume backwards scattering coefficient of radiative flux in sea water (BBP)
0-08-080 Qualifier for GTSPP quality flag 29, particle beam attenuation coefficient at a level
0-33-050 Global GTSPP quality flag
0-02-071 Spectrographic wavelength
0-41-009 Photosynthetically active radiation (400-700 nm) photon flux
0-08-080 Qualifier for GTSPP quality flag 30, Photosynthetically active radiation (400 - 700 nm) photon flux at a level
0-33-050 Global GTSPP quality flag
0-41-005 Turbidity
0-08-080 Qualifier for GTSPP quality flag 31, turbidity at a level
0-33-050 Global GTSPP quality flag

Additions to code tables

0-08-080
Qualifier for GTSPP quality flag

Code figureMeaning
0Total water pressure profile
1Total water temperature profile
2Total water salinity profile
3Total water conductivity profile
4Total water depth
5–9Reserved
10Water pressure at a level
11Water temperature at a level
12Salinity at a level
13Water depth at a level
14Sea/water current speed at a level
15Sea/water current direction at a level
16Dissolved oxygen at a level
17–19Reserved
20Position
* 25Water conductivity at a level
* 26Sea water potential density referenced to sea surface at a level
* 27Mass concentration of chlorophyll A at a level
* 28Concentration of coloured dissolved organic matter in sea water at a level
* 29Particle beam attenuation coefficient at a level
* 30Photosynthetically active radiation (400 - 700 nm) photon flux at a level
* 31Turbidity at a level
32-62Reserved
63Missing value

New entries (25 - 31) indicated by *.

samples.zip
BUFR_TableD_en.txt
BUFRCREX_TableB_en.txt

@david-i-berry david-i-berry added samples provided help wanted Extra attention is needed and removed samples required labels Jun 19, 2020
@david-i-berry
Copy link
Member Author

I've just added the help wanted - if anyone is able to decode the samples to help the validation that would be appreciated. Please note that the tables in the branch are incorrect and that tables attached to the the previous comment (#16 (comment)) need to be used.

@david-i-berry
Copy link
Member Author

@DavidBerryNOC I have created a branch for this issue. Could you please check it? BTW, when it comes to adding table B entries/class 41/42, please provide the information of CREX unit/scale/width. Many thanks.

@chenxiaoxia2019 Please see comments above in reference to the CREX unit/scale/width, units are the same as for BUFR.

I've also updated my versions of the tables from the branch (attached above) - what would be the best way to update these in the branch? Should I do a pull request or will that be handled by the secretariat?

@chenxiaoxia2019
Copy link
Contributor

@DavidBerryNOC Hi, David, I will update all the revisions in the branch. I will get you updated when I finish it.

@david-i-berry
Copy link
Member Author

david-i-berry commented Jun 22, 2020

The new updates to the branch remain to be checked, plus there is a further change required. Noting significant number of changes to proposal, propose delaying to FT-2021-01 to allow time for branch to be checked and revised width and scale of new B descriptors to be checked by ocean community.

@vturpin
Copy link

vturpin commented Dec 15, 2022

Please colleague, consider this as a clarification of what COULD be the reduced Table D from the perspective of someone discovering BUFR format but "expert" in gliders. (** mean out of the reduced table D).
This is only to answer @castelao request. Nothing more.
This should not bring confusion to the discussion, sorry if that is the case.

@castelao
Copy link

I think there is a strategic decision to be made here before any technical solution. I understand and agree with the urge to have this template included in the next round. The question is how valuable is to put effort at this moment to add more variables beyond the CTD plus the vertically averaged current? There is no reason to put time into more variables if it's not believed to be valuable at this moment. @vturpin and @kbailey-noaa might be better suited to decide that.

A few comments that might help (please, don't be shy to correct me if there is any information wrong here):

  • It is not all or nothing. It looks like some variables could make on time for this round, such as doxy and chl-a.
  • Gliders with ADCP do transmit currents with respect to depth, which is different than the estimated vertically averaged currents.
  • I disagree that the community is not ready to transmit these extra variables. I know at least one group that has been ready for that in a while. What should be priority, hold the advances until there is a critical mass or facilitate the forefront to move further?
  • I believe that there is nothing holding the gliders community to transmit today such data structure by using explicit descriptors instead of implicitly with 3-15-012, except by a few missing components (in 0-41, 0-42, 0-08). The same argument would go if only the CTD goes in 3-15-012 since other variables could be added explicitly. But in that case we would miss the chance to define a clear standard to facilitate any data pipeline built on the top of it, such as operational data assimilation.
  • If the option for just CTD moves forward, how different is that template from an ordinary profile with a couple of ad hoc explicit elements?
  • I agree, it is not clear to me the advantages of keeping the wind speed related information.

I'm not sure how much I'm actually helping here, so I'll step back and get out of your way. @david-i-berry and @amilan17 , if you have the time, I created some sample datasets and would be very much interested in learning if my binaries have a consistent structure, or if I done any logical mistake. If you have the time for that, it would be probably better done outside this issue to avoid confusion.

@vturpin
Copy link

vturpin commented Dec 16, 2022

The priority is to turn this BUFR format operational by May2023.

I think this template, even if only for CTD and current at the moment, give us a nice framework to work with in the future. It will not impact data flow much, but it make an important difference on the long term (I think). It will give us the capacity to evolve independantly from other format.

I agree that CHLA and O2 can be mature for some groups and usefull for some applications, eventhough I understood that from last Argo Data Management Team meeting, the risk related to push imature data on GTS is to be taken seriously as it brings discredit on the program itself (I discovered that aspect during the meeting two weeks ago).

I was not aware of RT transmission of current at depth. Great ! Let's keep it in the format as it is "pretty strait forward".

If we can define a format for T, S, current (average and at depth), CHLA and O2, in time, I'll be more than happy. If not, then we should stick to T, S, Current. Keeping in mind the "Perferct is the enemy of good".

Thanks @castelao for providing the data sets for validation. That's great.

@david-i-berry
Copy link
Member Author

Based on the above comments I've simplified the template to the proposal below, keeping only the CTD elements. In the next period I would then recommend developing the additional sequences to add in the ChlA, O2, PAR etc. It should then be possible to use these additional sequences with the Argo data.

Revised proposal

New Table B Entries

Class 42: BUFR / CREX Oceanographic Elements

Descriptor Name Units Scale Reference Width Notes CREX scale CREX width
0-42-016 Sea water potential density referenced to sea surface kg m-3 5 90000000 24

New Table D Entries

Category 15: Oceanographic report sequences

Table Reference Table References Element Name Description
3-15-012 Ocean glider trajectory profile sequence Sequence for reporting observations from a single glider profile
3-01-150 (WIGOS identifier)
2-01-129 Change data width Increase width of following elements by 1 bit
0-01-087 WMO marine observing platform extended identifier
2-01-000 Change data width Cancel increase in width
0-01-019 Long station or site name
0-01-036 Agency in charge of operating the observing platform
0-02-148 Data collection and/or location system
0-01-085 Observing platform manufacturer's model
0-01-086 Observing platform manufacturer's serial number
0-08-021 Time significance Set to 25, nominal reporting time
3-01-011 (Year, month, day)
3-01-013 (Hour, minute, second)
3-01-021 (Latitude / longitude (high accuracy))
0-11-104 True heading of aircraft, ship or other mobile platform
0-02-169 Anemometer type Set to 2, wind observation through ambient noise (WOTAN)
0-11-002 Wind speed
0-11-001 Wind direction
0-02-169 Anemometer type Set to missing / cancel previous value
0-22-032 Speed of sea surface current
0-22-005 Direction of sea-surface current
0-08-021 Time significance Set to 2, time averaged
0-04-025 Time period or displacement Duration of dive
3-01-011 (Year, month, day)
3-01-013 (Hour, minute, second)
3-01-021 (Latitude / longitude (high accuracy))
0-22-031 Speed of current
0-22-004 Direction of current
0-08-021 Time significance Set to missing / cancel previous value
0-05-068 Profile number
0-01-079 Unique identifier for profile
1-26-000 Delayed replication of 26 descriptors
0-31-001 Delayed descriptor replication factor Number of profile sections (e.g. descending, horizontal, ascending)
0-22-056 Direction of profile 0 (ascending / upwards profile), 1 (descending / downwards profile), or 2 (horizontal)
1-23-000 Delayed replication of 23 descriptors
0-31-002 Extended delayed descriptor replication factor
3-01-011 Year, month, day
3-01-013 Hour, minute, second
3-01-021 Latitude / Longitude (high accuracy)
0-08-080 Qualifier for GTSPP quality flag 20, position
0-33-050 Global GTSPP quality flag
0-07-062 Depth below water surface
0-08-080 Qualifier for GTSPP quality flag 13, water depth at a level
0-33-050 Global GTSPP quality flag
0-22-065 Water pressure
0-08-080 Qualifier for GTSPP quality flag 10, water pressure at a level
0-33-050 Global GTSPP quality flag
0-22-045 Sea/water temperature
0-08-080 Qualifier for GTSPP quality flag 11, water temperature at a level
0-33-050 Global GTSPP quality flag
0-22-066 Water conductivity
0-08-080 Qualifier for GTSPP quality flag 25, water conductivity at a level
0-33-050 Global GTSPP quality flag
0-22-064 Salinity
0-08-080 Qualifier for GTSPP quality flag 12, salinity at a level
0-33-050 Global GTSPP quality flag
0-42-016 Sea water potential density referenced to sea surface
0-08-080 Qualifier for GTSPP quality flag 26, sea water potential density at a level
0-33-050 Global GTSPP quality flag

Additions to code tables

0-08-080
Qualifier for GTSPP quality flag

Code figureMeaning
0Total water pressure profile
1Total water temperature profile
2Total water salinity profile
3Total water conductivity profile
4Total water depth
5–9Reserved
10Water pressure at a level
11Water temperature at a level
12Salinity at a level
13Water depth at a level
14Sea/water current speed at a level
15Sea/water current direction at a level
16Dissolved oxygen at a level
17–19Reserved
20Position
* 25Water conductivity at a level
* 26Sea water potential density referenced to sea surface at a level
32-62Reserved
63Missing value

New entries (25 - 31) indicated by *.

Summary of latest changes

Simplification following above discussion to only include CTD measurements in first version of the profile.
Additional data will be added by defining additional short sequences to be appended, following the pratices
developed in the Argo community.

@david-i-berry
Copy link
Member Author

If the above is acceptable hopefully we can get the validation completed by Christmas.

@david-i-berry
Copy link
Member Author

I'm just looking at the EGO NetCDF format (https://repository.oceanbestpractices.org/bitstream/handle/11329/1253/71648.pdf). In this there are 7 different glider phases listed, in BUFR we only have 3 possible. Will this be an issue?

EGO NetCDF
image

BUFR
image

@vturpin
Copy link

vturpin commented Dec 16, 2022

What are the phase in BUFR ?

  1. Ascent
  2. Descent
  3. Drift (I guess?)

However, I don't think it is an issue. Only the corresponding phase can be used and the rest ignored.

@david-i-berry
Copy link
Member Author

david-i-berry commented Jan 9, 2023

Hopefully final version:

Revised proposal

New Table B Entries

Class 42: BUFR / CREX Oceanographic Elements

Descriptor Name Units Scale Reference Width Notes CREX scale CREX width
0-42-016 Sea water potential density referenced to sea surface kg m-3 5 -10000000 24

New Table D Entries

Category 15: Oceanographic report sequences

Table Reference Table References Element Name Description
3-15-012 Ocean glider trajectory profile sequence Sequence for reporting observations from a single glider profile
3-01-150 (WIGOS identifier)
2-01-129 Change data width Increase width of following elements by 1 bit
0-01-087 WMO marine observing platform extended identifier
2-01-000 Change data width Cancel increase in width
0-01-019 Long station or site name
0-01-036 Agency in charge of operating the observing platform
0-02-148 Data collection and/or location system
0-01-085 Observing platform manufacturer's model
0-01-086 Observing platform manufacturer's serial number
0-08-021 Time significance Set to 25, nominal reporting time
3-01-011 (Year, month, day)
3-01-013 (Hour, minute, second)
3-01-021 (Latitude / longitude (high accuracy))
0-11-104 True heading of aircraft, ship or other mobile platform
0-02-169 Anemometer type Set to 2, wind observation through ambient noise (WOTAN)
0-11-002 Wind speed
0-11-001 Wind direction
0-02-169 Anemometer type Set to missing / cancel previous value
0-22-032 Speed of sea surface current
0-22-005 Direction of sea-surface current
3-01-011 (Year, month, day)
3-01-013 (Hour, minute, second)
0-08-021 Time significance Set to 2, time averaged
0-04-025 Time period or displacement Duration of dive
3-01-021 (Latitude / longitude (high accuracy))
0-22-031 Speed of current
0-22-004 Direction of current
0-08-021 Time significance Set to missing / cancel previous value
0-05-068 Profile number
0-01-079 Unique identifier for profile
1-26-000 Delayed replication of 26 descriptors
0-31-001 Delayed descriptor replication factor Number of profile sections (e.g. descending, horizontal, ascending)
0-22-056 Direction of profile 0 (ascending / upwards profile), 1 (descending / downwards profile), or 2 (horizontal)
1-23-000 Delayed replication of 23 descriptors
0-31-002 Extended delayed descriptor replication factor
3-01-011 Year, month, day
3-01-013 Hour, minute, second
3-01-021 Latitude / Longitude (high accuracy)
0-08-080 Qualifier for GTSPP quality flag 20, position
0-33-050 Global GTSPP quality flag
0-07-062 Depth below water surface
0-08-080 Qualifier for GTSPP quality flag 13, water depth at a level
0-33-050 Global GTSPP quality flag
0-22-065 Water pressure
0-08-080 Qualifier for GTSPP quality flag 10, water pressure at a level
0-33-050 Global GTSPP quality flag
0-22-045 Sea/water temperature
0-08-080 Qualifier for GTSPP quality flag 11, water temperature at a level
0-33-050 Global GTSPP quality flag
0-22-066 Water conductivity
0-08-080 Qualifier for GTSPP quality flag 25, water conductivity at a level
0-33-050 Global GTSPP quality flag
0-22-064 Salinity
0-08-080 Qualifier for GTSPP quality flag 12, salinity at a level
0-33-050 Global GTSPP quality flag
0-42-016 Sea water potential density referenced to sea surface
0-08-080 Qualifier for GTSPP quality flag 26, sea water potential density at a level
0-33-050 Global GTSPP quality flag

Additions to code tables

0-08-080
Qualifier for GTSPP quality flag

Code figureMeaning
0Total water pressure profile
1Total water temperature profile
2Total water salinity profile
3Total water conductivity profile
4Total water depth
5–9Reserved
10Water pressure at a level
11Water temperature at a level
12Salinity at a level
13Water depth at a level
14Sea/water current speed at a level
15Sea/water current direction at a level
16Dissolved oxygen at a level
17–19Reserved
20Position
* 25Water conductivity at a level
* 26Sea water potential density referenced to sea surface at a level
32-62Reserved
63Missing value

New entries (25 - 31) indicated by *.

Summary of latest changes

  • Change of reference for new potential density element, noting that the potential density is density at reference salinity, temperature and pressure - 1000.
  • Move of date/time in profile mean to before time significance and time period (I am unsure why I moved this originally, I no longer have access to the emails where it would have been discussed).

Test data (json) and encoded (BUFR) attached, code to follow. The test data have been extracted from https://www.bodc.ac.uk/data/bodc_database/gliders/ and the AlterEco2 deployment 496 of Melonhead.

A straight conversion for salinity from 0/00 to psu was made as salinity in BUFR is in 0/00 whilst that in the test file in psu. This needs to be checked.

test-data.zip

@david-i-berry
Copy link
Member Author

Happy new year, would any of you (@vturpin @castelao @sebvi @marianmajan-ibl @marijanacrepulja @SibylleK ) be able to help with the validation of the data in the last post above? I've used the eccodes python library for encoding.

@david-i-berry
Copy link
Member Author

Final modification:

Common code table C-13

Add

Data category : 31 Oceanographic data
International data sub-category: 8 Glider data

@amilan17
Copy link
Member

amilan17 commented Jan 10, 2023

https://github.com/wmo-im/CCT/wiki/Teleconference-10.01.2023 notes:

@david-i-berry updated the team on the hopefully final proposal; @david-i-berry will add issue to CCT repo on new C-13 value, update issue summary with test data file and update branches. @marijanacrepulja and @SibylleK will validate the sample data;

test-data.zip

@SibylleK
Copy link
Contributor

Here the output of the DWD BUFR software using the BUFR tables of the branch 16-new-table-d-sequence-for-reporting-observations-from-ocean-gliders:
glider-test-v40.bufr.DWDout.txt

Apart from the representation of the scaled values, the values are the same as in the melonhead.json file.
Whereat the values of "depthBelowWaterSurface" (007062) and "oceanographicWaterPressure" (022065) in the json file look very strange.

By the way, the accuracy of the water pressure is 10 hPa (i.e. 0,1 decibar) and decimeter of the depth below sea/water surface. Is this sufficient?

@david-i-berry
Copy link
Member Author

Sorry, there may be spurious precision in the json file due to dumping from the netcdf to json. Otherwise the pressures and depths agree with each other and are in the expected range.

Numerical precision of 10 hPa or 0.1m should be sufficient.

@marijanacrepulja
Copy link
Contributor

@amilan17
Here is the output of the ECMWF BUFR software using the BUFR tables of the branch 16-new-table-d-sequence-for-reporting-observations-from-ocean-gliders:
glider-test.bufr.ECMWFout.txt

I did cross-check values from the DWD output provided by @SibylleK. The decoded values are the same.

I believe we can finalise validation.

@david-i-berry
Copy link
Member Author

@marijanacrepulja @SibylleK thanks!

@amilan17 amilan17 moved this from In Validation to Validated in BUFR4 Amendments Jan 20, 2023
@amilan17 amilan17 moved this from Validated to Ready for FT Approval Procedure in BUFR4 Amendments Jan 23, 2023
amilan17 added a commit that referenced this issue Jan 30, 2023
…ting-observations-from-ocean-gliders

#16 Update with new glider sequence, addition of new oceanographic element and new code table entries for GTSPP quality flag.
@vturpin
Copy link

vturpin commented Apr 21, 2023

Sorry to ask this here (maybe again), but I wonder when is the next "FT approuval procedure". I've been asked by NOAA partners about the release of the updated WMO Manual on Codes.
Thanks.

@amilan17
Copy link
Member

@vturpin This proposal and others are currently available for review by National Focal Points until April 28. So far, we've received no comments, so I expect that it will be accepted. The intended implementation date for exchange of data using these new sequences is 31 May 2023. The WMO approval and publication of the machine-readable codes may be available before then. I hope this helps.

@vturpin
Copy link

vturpin commented Jun 7, 2024

@amilan17 I just check the Vol 1.2 of manual of code and I still don't see the mention of the sequence dedicated to glider 3.15.012. Any idea when this will be published ?

Also, you mention the "WMO approval and publication of the machine redable code" is this available ? And where ?

Finally I struggle finding the place, apart from this issue, where I can see a the version of the sequence that has been accepted. I would like to guide some users to a more "official" documentation as they start to implement the BUFR template but I feel lost at the moment.

Thanks for your help Anna

@amilan17
Copy link
Member

amilan17 commented Jun 7, 2024

@vturpin They will be included in the next publication of the Manual on Codes, which is being prepared for publication right now but I don't know when it will be finalized and available from the WMO library. Until then you can refer to this provisional copy: https://wmoomm.sharepoint.com/:b:/s/wmocpdb/EW-YM8uJZlRJpe0WPrlyVGEB6Ll_OAwZuVlW_CUJiWpJ7Q?e=Aa1Dnj
I hope this helps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment