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

TG2-VALIDATION_BASISOFRECORD_STANDARD #104

Open
iDigBioBot opened this issue Jan 5, 2018 · 14 comments
Open

TG2-VALIDATION_BASISOFRECORD_STANDARD #104

iDigBioBot opened this issue Jan 5, 2018 · 14 comments
Labels
Conformance CORE TG2 CORE tests OTHER Parameterized Test requires a parameter Test Tests created by TG2, either CORE, Supplementary or DO NOT IMPLEMENT TG2 Validation VOCABULARY

Comments

@iDigBioBot
Copy link
Collaborator

iDigBioBot commented Jan 5, 2018

TestField Value
GUID 42408a00-bf71-4892-a399-4325e2bc1fb8
Label VALIDATION_BASISOFRECORD_STANDARD
Description Does the value of dwc:basisOfRecord occur in the bdq:sourceAuthority?
TestType Validation
Darwin Core Class Record-level
Information Elements ActedUpon dwc:basisOfRecord
Information Elements Consulted
Expected Response EXTERNAL_PREREQUISITES_NOT_MET if the bdq:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:basisOfRecord is EMPTY; COMPLIANT if the value of dwc:basisOfRecord is valid using the bdq:sourceAuthority; otherwise NOT_COMPLIANT
Data Quality Dimension Conformance
Term-Actions BASISOFRECORD_STANDARD
Parameter(s) dwc:basisOfRecord vocabulary
Source Authority bdq:sourceAuthority default = "Darwin Core basisOfRecord" {[https://dwc.tdwg.org/terms/#dwc:basisOfRecord]}{dwc:basisOfRecord vocabulary [https://rs.gbif.org/vocabulary/dwc/basis_of_record.xml]}
Specification Last Updated 2024-07-24
Examples [dwc:basisOfRecord="Taxon": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:basisOfRecord matches a standard label of one of the Darwin Core classes"]
[dwc:basisOfRecord="Specimen": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:basisOfRecord does not exactly match a standard label of one of the Darwin Core classes"]
Source VertNet
References
Example Implementations (Mechanisms)
Link to Specification Source Code
Notes The term dwc:basisOfRecord has the comment "Recommended best practice is to use a controlled vocabulary such as the set of local names of the identifiers for classes in Darwin Core." The list of these values can be determined by searching https://github.com/tdwg/dwc/blob/master/vocabulary/term_versions.csv for rows with status="recommended" and rdf_type="http://www.w3.org/2000/01/rdf-schema#Class". For tests against a dwc:Occurrence record, the set of valid terms is more limited and embodied in the resource found at https://rs.gbif.org/vocabulary/dwc/basis_of_record.xml. This test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters.
@iDigBioBot
Copy link
Collaborator Author

Comment by Arthur Chapman (@ArthurChapman) migrated from spreadsheet:
Should follow on after Line 57

@ArthurChapman ArthurChapman added VOCABULARY Test Tests created by TG2, either CORE, Supplementary or DO NOT IMPLEMENT labels Jan 17, 2018
@tucotuco tucotuco added the Parameterized Test requires a parameter label Nov 5, 2018
Tasilee added a commit that referenced this issue Oct 7, 2020
In accordance with #189, added testdata_VALIDATION_BASISOFRECORD_NOTSTANDARD_#104.csv for #104
chicoreus added a commit that referenced this issue Oct 12, 2020
… changing data values to be consistent with basis of record, adding explicit alternative vocabularies, clarifying human readable messages, adding column to specify source authority, adding cases for all valid vocabulary values, adding a range of cases for problematic values.
chicoreus added a commit that referenced this issue Oct 12, 2020
…ests for #104, fixing u0000 value in non-printing characters test for #49, all as per #189.
chicoreus added a commit that referenced this issue Oct 13, 2020
@Tasilee
Copy link
Collaborator

Tasilee commented Feb 9, 2022

I just detected that the Specifications for this test was lacking "Darwin Core Class | Record_level Terms" so I have just added it.

@Tasilee Tasilee changed the title TG2-VALIDATION_BASISOFRECORD_NOTSTANDARD TG2-VALIDATION_BASISOFRECORD_STANDARD Mar 22, 2022
@chicoreus
Copy link
Collaborator

Added note to clarify the default source authority, since it isn't itself a list of vocaublary terms:

See the dwc:basisOfRecord comment "Recommended best practice is to use the standard label of one of the Darwin Core classes."

chicoreus added a commit to FilteredPush/rec_occur_qc that referenced this issue Sep 10, 2022
…ARD including DwCMetadataDQDefaults class for handling invocations of methods without specifying parameters when using defaults. Includes minimal unit test.
chicoreus added a commit to FilteredPush/rec_occur_qc that referenced this issue Sep 10, 2022
…RD using actual labels of Darwin Core classes, not the currently incorrect list in the examples for dwc:basisOfRecord.
chicoreus added a commit to FilteredPush/rec_occur_qc that referenced this issue Sep 10, 2022
@Tasilee
Copy link
Collaborator

Tasilee commented Sep 12, 2022

Added note "This test will fail if there are leading or trailing white space or non-printing characters."

@Tasilee
Copy link
Collaborator

Tasilee commented Sep 13, 2022

Note comments at tdwg/dwc#416

@Tasilee
Copy link
Collaborator

Tasilee commented Jun 30, 2023

Changed Source Authority from

bdq:sourceAuthority default = "Darwin Core Terms" [https://dwc.tdwg.org/terms/#dwc:basisOfRecord]

to

bdq:sourceAuthority default = {Darwin Core} {Basis of record [https://dwc.tdwg.org/terms/#dwc:basisOfRecord] }

and removed bdq:sourceAuthority from Parameters (I presume, as there is no alternative vocab)?

@Tasilee
Copy link
Collaborator

Tasilee commented Jul 4, 2023

Amended Source Authority values to align with @chicoreus syntax

bdq:sourceAuthority default = {Darwin Core} {Basis of record [https://dwc.tdwg.org/terms/#dwc:basisOfRecord]}

to

bdq:sourceAuthority default = "Darwin Core dwc:basisOfRecord" {[https://dwc.tdwg.org/terms/#dwc:basisOfRecord]}

@Tasilee
Copy link
Collaborator

Tasilee commented Jul 11, 2023

Post Zoom 11/7/2023, I have aligned the Source Authority with the suggested syntax:

bdq:sourceAuthority default = "Darwin Core dwc:basisOfRecord" {[https://dwc.tdwg.org/terms/#dwc:basisOfRecord]}

to

bdq:sourceAuthority default = "Darwin Core" {https://dwc.tdwg.org/} {dwc:basisOfRecord [https://dwc.tdwg.org/terms/#dwc:basisOfRecord]}

@Tasilee
Copy link
Collaborator

Tasilee commented Jul 16, 2023

Due to recent discussions, changed Source Authority from

bdq:sourceAuthority default = "Darwin Core" {[https://dwc.tdwg.org/]} {dwc:basisOfRecord [https://dwc.tdwg.org/terms/#dwc:basisOfRecord]}

to

bdq:sourceAuthority default = "Darwin Core basisOfRecord" {[https://dwc.tdwg.org/terms/#dwc:basisOfRecord]}{Basis of record vocabulary [https://rs.gbif.org/vocabulary/dwc/basis_of_record.xml]}

Notes needed by @tucotuco

@Tasilee
Copy link
Collaborator

Tasilee commented Jul 17, 2023

I missed the Parameter(s) (added) and the syntax on the vocabulary in Source Authority (done)

@tucotuco
Copy link
Member

Updated comment from

"See the dwc:basisOfRecord comment "Recommended best practice is to use the standard label of one of the Darwin Core classes." This test will fail if there is leading or trailing whitespace or there are leading or trailing non-printing characters."

to

"The term dwc:basisOfRecord has the comment "Recommended best practice is to use the standard label of one of the Darwin Core classes." The list of these values can be determined by searching https://github.com/tdwg/dwc/blob/master/vocabulary/term_versions.csv for rows with status="recommended" and rdf_type="http://www.w3.org/2000/01/rdf-schema#Class". For tests against a dwc:Occurrence record, the set of valid terms is more limited and embodied in the resource found at https://rs.gbif.org/vocabulary/dwc/basis_of_record.xml. This test will fail if there is leading or trailing whitespace or there are leading or trailing non-printing characters."

@Tasilee
Copy link
Collaborator

Tasilee commented Sep 18, 2023

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"

@chicoreus
Copy link
Collaborator

Updated notes from "fail" to more specific "This test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters. "

@chicoreus
Copy link
Collaborator

Updated notes to current Darwin Core guidance "Recommended best practice is to use a controlled vocabulary such as the set of local names of the identifiers for classes in Darwin Core." as noted by @tucotuco in #63

chicoreus added a commit to FilteredPush/rec_occur_qc that referenced this issue Jul 24, 2024
…se of local name instead of label, also adding support for source authority detection and error handling.
chicoreus added a commit that referenced this issue Jul 25, 2024
… an export of the data for validating tests extracted from @Tasilee's spreadsheet (v72) as of 2024-07-25, updating cases for #104 VALIDATION_BASISOFRECORD_STANDARD reflecting switch from label to local name.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Conformance CORE TG2 CORE tests OTHER Parameterized Test requires a parameter Test Tests created by TG2, either CORE, Supplementary or DO NOT IMPLEMENT TG2 Validation VOCABULARY
Development

No branches or pull requests

5 participants