-
Notifications
You must be signed in to change notification settings - Fork 7
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
TG2-VALIDATION_COUNTRYSTATEPROVINCE_CONSISTENT #200
Comments
Suggest description be |
Suggested Expected Response be altered to (changed in italics) EXTERNAL_PREREQUISITES_NOT_MET if the bdq:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if *either of *the terms dwc:country and dwc:stateProvince are EMPTY; COMPLIANT if the combination of values of dwc:country and dwc:stateProvince are consistent with the bdq:sourceAuthority; otherwise NOT_COMPLIANT |
Thanks @ArthurChapman - agreed and changed. |
Suggest we conform more closely to the >1 logic in @tucotuco's table in #95 Perhaps change from: (1) change "either of" to "both", to allow for a checking for just one value (e.g. WA, row 10 in #95 (comment)) (2) either in the specification or in the notes indicate that "consistent with" means matched at least once. To: EXTERNAL_PREREQUISITES_NOT_MET if the bdq:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if both of the terms dwc:country and dwc:stateProvince are EMPTY; COMPLIANT if the combination of values of dwc:country and dwc:stateProvince are found in combination at least once the bdq:sourceAuthority; otherwise NOT_COMPLIANT |
@Tasilee 's comment on #201 #201 (comment) applies here. Amending the specification to parallel #201, when only a single term is present the test can run, this is a case that is likely to lead to #200 returning COMPLIANT and #201 returning NOT_COMPLIANT: EXTERNAL_PREREQUISITES_NOT_MET if the bdq:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the terms dwc:country and dwc:stateProvince are EMPTY; COMPLIANT if the combination of values of dwc:country and dwc:stateProvince are consistent with the bdq:sourceAuthority; otherwise NOT_COMPLIANT |
I like the solution @chicoreus has proposed above. Maybe the expected response should parallel what I proposed for STATEPROVINCE_FOUND. Something like this: EXTERNAL_PREREQUISITES_NOT_MET if the bdq:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the terms dwc:country and dwc:stateProvince are EMPTY; COMPLIANT if the value of dwc:stateProvince occurs as an administrative entity that is a child to the entity matching the value of dwc:country in the bdq:sourceAuthority; otherwise NOT_COMPLIANT |
Paralell with #199 is good, we can probably tighten up (e.g. prevent compliant when county is mapped onto state province and state province onto country): EXTERNAL_PREREQUISITES_NOT_MET if the bdq:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the terms dwc:country and dwc:stateProvince are EMPTY; COMPLIANT if the value of dwc:stateProvince occurs as an administrative entity that is a child to the entity matching the value of dwc:country in the bdq:sourceAuthority, and the match to dwc:country is an ISO country-like entity in the bdq:sourceAuthority; otherwise NOT_COMPLIANT |
Updated Expected Response. |
Added to Notes: "This test will fail if there are leading or trailing white space or non-printing characters." |
Changed Expected response from "and" to "or" EXTERNAL_PREREQUISITES_NOT_MET if the bdq:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the terms dwc:country and dwc:stateProvince are EMPTY; COMPLIANT if the value of dwc:stateProvince occurs as an administrative entity that is a child to the entity matching the value of dwc:country in the bdq:sourceAuthority, and the match to dwc:country is an ISO country-like entity in the bdq:sourceAuthority; otherwise NOT_COMPLIANT to EXTERNAL_PREREQUISITES_NOT_MET if the bdq:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the terms dwc:country or dwc:stateProvince are EMPTY; COMPLIANT if the value of dwc:stateProvince occurs as an administrative entity that is a child to the entity matching the value of dwc:country in the bdq:sourceAuthority, and the match to dwc:country is an ISO country-like entity in the bdq:sourceAuthority; otherwise NOT_COMPLIANT |
In the Notes the Reference to "See table #95 (comment)" (i.e. "See table #95 (comment))" will need to be updated - but not sure how we can reference the comment #95 can be changed to "VALIDATION_GEOGRAPHY_CONSISTENT (78640f09-8353-411a-800e-9b6d498fb1c9)" but the comment and table won't appear there without us putting it somewhere we can reference it. |
Post Zoom 11/7/2023, I have aligned the Source Authority with the suggested syntax: bdq:sourceAuthority default = "The Getty Thesaurus of Geographic Names (TGN)" [https://www.getty.edu/research/tools/vocabularies/tgn/index.html] to bdq:sourceAuthority default = "The Getty Thesaurus of Geographic Names (TGN)" {[https://www.getty.edu/research/tools/vocabularies/tgn/index.html]} |
This test should have Data Quality Dimension "Consistency" rather than "Conformance". Edited. |
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" |
Edited "fail" text to indicate that this complex comparison should not be affected by leading or trailing whitespace. |
Updated Notes from @tucotuco's Comment #21 (comment) which I thought was needed here. |
…STATEPROVINCE_CONSISTENT, tweaks to GettyLookup need cleanup and caching, implementation runs but is ugly. Passes some, but not all validation tests, and should be able to pass more.
…ation of tdwg/bdq#200 with some support for caching of responses from Getty TGN. Adding a minimal implementation of tdwg/bdq#32 with backing method to interpret a few common forms of verbatim latitudes and longitudes.
Updated the Expected Response to add "administrative" entities |
Discussion in TG2 working group meeting in Seattle, this test lacks sufficient distinct power from other tests to include as core. The parent/child relationship of state/province and country is covered in #201, and we have validations for whether state province and country exist, effectively covering the difference of and/or in the internal prerequisites not met clause of #200 and #201. The implementation of the different text for the COMPLIANT clause in #200 and #201 ended up being identical, so placing this test as supplementary and retaining 201 as core. |
Added 3166 qualifier to the ISO ref in the Expected Response and added two ISO 3166 references |
…OVINCE_CONSISTENT testing some more country-stateProvince relationships with failover lookup of country from stateProvince added.
The text was updated successfully, but these errors were encountered: