Open Tasilee opened 4 years ago
TestField | Value |
---|---|
GUID | 3f1db29a-bfa5-40db-9fd1-fde020d81939 |
Label | VALIDATION_MAXDEPTH_INRANGE |
Description | Is the value of dwc:maximumDepthInMeters within the Parameter range? |
TestType | Validation |
Darwin Core Class | dcterms:Location |
Information Elements ActedUpon | dwc:maximumDepthInMeters |
Information Elements Consulted | |
Expected Response | INTERNAL_PREREQUISITES_NOT_MET if dwc:maximumDepthInMeters is bdq:Empty or is not interpretable as a number greater than or equal to zero; COMPLIANT if the value of dwc:maximumDepthInMeters is within the range of bdq:minimumValidDepthInMeters to bdq:maximumValidDepthInMeters inclusive; otherwise NOT_COMPLIANT |
Data Quality Dimension | Conformance |
Term-Actions | MAXDEPTH_INRANGE |
Parameter(s) | bdq:minimumValidDepthInMeters |
bdq:maximumValidDepthInMeters | |
Source Authority | bdq:minimumValidDepthInMeters default="0" |
bdq:maximumValidDepthInMeters default="11000" | |
Specification Last Updated | 2023-09-18 |
Examples | [dwc:maximumDepthInMeters="1200": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:maximumDepthInMeters is in range (<11,000)"] |
[dwc:maximumDepthInMeters="99999": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:maximumDepthInMeters is not in range (>11,000)"] | |
Source | ALA, GBIF |
References |
|
Example Implementations (Mechanisms) | |
Link to Specification Source Code | |
Notes | The Challenger Deep in the Mariana Trench is the deepest known point in Earth's oceans at 10,994 meters. We have rounded up bdq:maximumValidDepthInMeters. |
This test was added after examining #107 that combined dwc:minimumDepthInMeters and dwc:maximumDepthInMeters in the one test and splitting it into the new #107 and this one.
Added a guid.
Definition needs tuning, zero and negative numbers are hard coded into the internal prerequsities not met, regardless of parameter values. Zero end point ambigously treated as special case depending on interpretation of within. Suggest:
INTERNAL_PREREQUISITES_NOT_MET if dwc:maximumDepthInMeters is EMPTY or is not a number; COMPLIANT if the value of dwc:maximumDepthInMeters is within the Parameter range of bdq:minimumValidDepthInMeters to bdq:maximumValidDepthInMeters inclusive; otherwise NOT_COMPLIANT
This would make negative numbers not compliant, which makes sense, as negative numbers can be tested against the range, while strings or empty values cannot be tested.
Thanks @chicoreus. I agree. We do have a definition of EMPTY BTW in our vocabulary: "A field that is either not present or does not contain any characters or values. Note: A field containing non-printing or other invalid characters or values (including NULL values) may be separately detected".
For consistency with #112, The Warning Type has been changed to "Unlikely"
Changed decision from Zoom: Warning Type of this test and #112 should be "Invalid"
Needs alignment with #107 where @tucotuco argued persuasively that negative values should result in internal prerequsites not met, given the definition for the DarwinCore terms for depth and the presence of alternative terms for offset from baseline. #107 and #187 should treat -1 in the same way, currently they do not.
Done but do we need to similarly account for "0"?
@Tasilee Similarly how?
As in
INTERNAL_PREREQUISITES_NOT_MET if dwc:maximumDepthInMeters is EMPTY or is not interpretable as zero or a positive number; COMPLIANT if the value of dwc:maximumDepthInMeters is within the range of bdq:minimumValidDepthInMeters to bdq:maximumValidDepthInMeters inclusive; otherwise NOT_COMPLIANT
Yes, good catch. Alternatively, "a number greater than or equal to zero"?
Amended ER to
INTERNAL_PREREQUISITES_NOT_MET if dwc:maximumDepthInMeters is EMPTY or is not interpretable as a number greater than or equal to zero; COMPLIANT if the value of dwc:maximumDepthInMeters is within the range of bdq:minimumValidDepthInMeters to bdq:maximumValidDepthInMeters inclusive; otherwise NOT_COMPLIANT
Splitting bdqffdq:Information Elements into "Information Elements ActedUpon" and "Information Elements Consulted".
Also changed "Field" to "TestField", "Output Type" to "TestType" and updated "Specification Last Updated"