Skip to content

Possible bug in v1.7 check_cell_boundaries_interval #1296

@mo-gill

Description

@mo-gill

Version of compliance checker running:
1.7

Describe the checker this affects:
IOOS checker check_cell_boundaries_interval

To Reproduce:
Check data with a three dimensional bounds variables.
e.g. UKESM1 tos ocean data

Describe the issue below:
It seems that this function only checks cell boundaries on first level due to indentation level being one too large on line 380. This means that only the first coordinate is checked.

If this issue is corrected manually, the following output is obtained:

-------------------------------------------------------------------------------
                         IOOS Compliance Checker Report                         
                                 Version 5.4.2                                  
                     Report generated 2026-04-21T13:13:34Z                      
                                     cf:1.7                                     
http://cfconventions.org/Data/cf-conventions/cf-conventions-1.7/cf-conventions.html
--------------------------------------------------------------------------------
                               Corrective Actions                               
tos_Omon_UKESM1-0-LL_historical_r1i1p1f2_gn_185001-194912.nc has 3 potential issues


                                    Warnings                                    
--------------------------------------------------------------------------------
§4.1 Latitude Coordinate
* latitude variable 'vertices_latitude' should define standard_name='latitude' or axis='Y'

§4.2 Longitude Coordinate
* longitude variable 'vertices_longitude' should define standard_name='longitude' or axis='X'

§7.1 Cell Boundaries
* The Boundary variables 'vertices_latitude' should not have the attributes: '['units', 'missing_value', '_FillValue']'
* The Boundary variables 'vertices_longitude' should not have the attributes: '['units', 'missing_value', '_FillValue']'
WARNING: The following exceptions occurred during the cf:1.7 checker (possibly indicate compliance checker issues):
cf:1.7.check_cell_boundaries_interval: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

Where bounds variables are three dimensional, line 364 fails with a ValueError.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions