tdwg / bdq

Biodiversity Data Quality (BDQ) Interest Group
https://github.com/tdwg/bdq
43 stars 7 forks source link

TG2-VALIDATION_BASISOFRECORD_STANDARD #104

Open iDigBioBot opened 6 years ago

iDigBioBot commented 6 years ago
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 bdq: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 commented 6 years ago

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

Tasilee commented 2 years ago

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

chicoreus commented 2 years ago

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."

Tasilee commented 2 years ago

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

Tasilee commented 2 years ago

Note comments at https://github.com/tdwg/dwc/issues/416

Tasilee commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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

tucotuco commented 1 year ago

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 commented 12 months ago

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 commented 6 months ago

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 commented 1 month ago

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